Mac Virtual Memory - vad det är, bytesplatsen och hur du inaktiverar byta i Mac OS X

Jag blev nyligen frågad om Mac OS X swapfile, specifikt hur du inaktiverar Mac OS X helt och hållet. Jag bestämde mig för att jag ska ta tillfället i akt att prata lite om Mac-virtuellt minne (swap), det är platsen i Mac-filsystemet, och för att förklara hur du inaktiverar det.

Mac OS X Byt aka virtuellt minne

Du kan komma ihåg att i äldre versioner av Mac OS (OS 8 och 9) kan du manuellt inaktivera byte och sedan kallas Virtual Memory, genom att justera en inställning i kontrollpanelen. Mac OS X är lite annorlunda eftersom den är uppbyggd ovanpå en unix-kärna som är starkt beroende av bytfiler och personsökning för generellt minne och cache-hantering. På grund av detta är byte faktiskt viktigare nu än i tidigare versioner av Mac OS.

I grund och botten när din Mac behöver minne kommer det att trycka på något som för närvarande inte används i en swapfil för tillfällig lagring. När den behöver komma åt igen läser den data från swapfilen och tillbaka till minnet. På ett visst sätt kan detta skapa obegränsat minne, men det är betydligt långsammare eftersom det begränsas av hårddiskens hastighet, jämfört med närvaron av läsdata från RAM.

Om du är nyfiken kan du kontrollera Mac OS X: s virtuella minnesanvändning med kommandot "vm_stat" eller genom att använda Aktivitetsmonitorn (ofta felaktigt kallad Mac-uppgiftshanteraren av Windows-konverterare).

Mac OS X Byt fil Plats

Om du är nyfiken där bytesfilerna är lagrade på din Mac, finns de på:

/private/var/vm/

Detta innehåller också din sömnfil, som i huvudsak är vad din Mac har lagrat i minnet före systemets sömn. Den här filen läses igen när du vaknar din Mac för att återgå till sin tidigare status. Hur som helst, tillbaka till byta filer i samma katalog: de heter successivt swapfile0, swapfile1, swapfile2, swapfile3, swapfile4, swapfile5. Du kan se dem själv med följande kommando:

ls -lh /private/var/vm/swapfile*

Bytfilerna är generellt förskjutna i storlek, från 64 MB till 512 MB.

Inaktivera Mac OS X personsökning / byte

Varning: Jag rekommenderar starkt att modifiera hur Mac OS X hanterar minneshantering och byt filer. Om du inte vet exakt vad du gör och varför är det här inte en rekommenderad justering. Återigen, om du inte vet vad du gör, röra inte med Mac OS Xs swapfiles eller personsökningsförmåga!

I terminalen anger du följande kommando. Detta kommer att lossa den dynamiska personsökaren från Mac OS X-kärnan:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

Återigen, det här inaktiverar helt Mac OS X personsökningsförmågan, röra inte med det här för skojs skull.

Ditt nästa steg skulle vara att ta bort de swapfiler som för närvarande lagras, de är generellt ganska stora (det är ditt virtuella minne trots allt) och tar upp en hel del diskutrymme.

sudo rm /private/var/vm/swapfile*

Det är allt som finns där.