Nema službenog načina za onemogućavanje virtualne memorije na modernom Macu, iako je to bilo moguće u danima prije nego što je Mac OS X - sada nazvan macOS - bio izdan. Iako je možda moguće hakirati vaš sustav da spriječi Mac da pohrani virtualnu memoriju na disku, ne biste to trebali učiniti.
Što je virtualna memorija?
Dok vaš Mac ima samo ograničenu količinu fizičke memorije, izlaže veće područje dostupne virtualne memorije za pokretanje programa. Na primjer, čak i ako imate Mac sa 8 GB RAM-a, svaki 32-bitni proces na vašem Macu ima 4 GB dostupnog adresnog prostora koji može koristiti. Svaki 64-bitni proces daje oko 18 exabajtova - to je 18 milijardi gigabajta prostora s kojima može raditi.
Aplikacije mogu slobodno koristiti onoliko memorije koliko žele unutar tih ograničenja. Kada se fizička memorija popuni, MACOS automatski "ispušta" podatke koji se ne aktivno koriste, čuvajući ih na unutarnjem pogonu Mac računala. Kada su podaci opet potrebni, prenosi se natrag u RAM. To je sporije nego jednostavno držanje podataka u RAM-u cijelo vrijeme, ali omogućuje da sustav transparentno samo "nastavi raditi". Ako Macovi nisu mogli pohraniti podatke virtualne memorije na disku, vidjet ćete poruke koje traže zatvaranje programa da biste nastavili.
To je u osnovi ista stvar kao stranica datoteke na sustavu Windows i zamjenski prostor na Linuxu i drugim operacijskim sustavima sličnim UNIX-u. Zapravo, macOS je sam operativni sustav sličan UNIX-u.
Suvremene inačice MACOS-a zapravo prolaze kroz još veće poteškoće kako bi se izbjeglo kopiranje podataka na disk, sažimanje podataka pohranjenih u memoriji što je više moguće prije nego što je pokušač.
Gdje je pohranjena?
Podaci virtualne memorije pohranjeni su u
/private/var/vm
direktorija na interne pohrane vašeg Mac računala ako je stranica na stranicama diska. Podaci se pohranjuju u jednu ili više datoteka pod nazivom "swapfile" i završavaju s brojem.
Većina operativnih sustava sličnih UNIX-u koristi zasebnu particiju za swap datoteku, trajno dodjeljivanje dijela vašeg prostora za pohranu na razmjenjivi prostor. Appleov MACOS to ne čini. Umjesto toga pohranjuje datoteke swapfile na vašem pogonu za pohranu sustava. Ako aplikacije ne trebaju dodatnu virtualnu memoriju, ove datoteke neće koristiti puno prostora. Ako aplikacije trebaju veću virtualnu memoriju, ove će se datoteke po potrebi povećavati, a zatim se smanjiti kada više ne trebaju biti velike.
Ovaj direktorij također sadrži datoteku "sleepimage" koja pohranjuje sadržaj RAM-a vašeg Mac na disku kada se hibernira. To omogućuje Macu spremanje svog stanja - uključujući sve otvorene aplikacije i datoteke - dok se isključuje i ne koristi nikakvu energiju.
Da biste pregledali sadržaj ovog direktorija i vidjeli koliko prostora te datoteke trenutačno upotrebljavaju na disku, možete otvoriti prozor terminala i pokrenuti sljedeću naredbu. (Da biste otvorili prozor terminala, pritisnite Command + Space za otvaranje Spotlight pretraživanja, upišite "Terminal" i pritisnite Enter.)
ls -lh /private/var/vm
Na slici zaslona u nastavku možemo vidjeti da je svaka od tih datoteka veličine 1 GB na svom Macu.
Zašto ne biste trebali onemogućiti virtualnu memoriju
Stvarno ne biste trebali onemogućiti tu značajku. MacOS operativni sustav i aplikacije koje se izvode očekuju da će biti omogućen. U stvari, Appleova službena dokumentacija kaže: "I OS X i iOS sadrže potpuno integrirani virtualni sustav memorije koji se ne možete isključiti; to je uvijek uključeno."
Međutim, to je tehnički moguće je onemogućiti trgovinu za pohranu - to jest, one swap datoteke na disk-na macOS. To uključuje onemogućavanje zaštite integriteta sustava prije nego što vašem Macu kaže da ne pokreće demo dinamičnog_pagera, a zatim brisanje swap datoteka. Ovdje nećemo dati relevantne naredbe za to, jer ne preporučujemo nikome da to učini.
MacOS operativni sustav i aplikacije na njemu očekuju da virtualni sustav memorije ispravno funkcionira. Ako se fizička memorija popuni i operacijski sustav Mac ne može izvući podatke na disk, dogodit će se jedna od dvije loše stvari: Ili ćete vidjeti prompt koji će vam reći da se želite odustati od jedne ili više aplikacija da biste nastavili ili će se programi zaustaviti i možete doživjeti opću nestabilnost sustava.
Da, čak i ako imate 16 GB ili više RAM-a, ponekad se može popuniti - pogotovo ako pokrenete zahtjevne profesionalne aplikacije kao što su video, audio ili urednici slika koji trebaju pohraniti puno podataka u memoriju. Ostavite ga sami.
Nemojte brinuti o prostoru diska ili SSD-u
Postoje dva razloga zašto bi korisnici mogli onemogućiti značajku virtualne memorije i ukloniti datoteke swapfile s diska.
Prvo, možda ćete biti zabrinuti za korištenje prostora na disku. Možda biste se htjeli riješiti tih datoteka kako biste oslobodili prostor. Pa, ne bismo se brinuli zbog toga. Ove datoteke ne gube veliku količinu prostora na disku. Ako vaš Mac ne treba puno virtualne memorije, oni će biti sitni.Na našem MacBook Airu s samo 4 GB RAM-a primijetili smo datoteku za razmjenu datoteka pomoću oko 1 GB prostora - to je to.
Ako koriste puno prostora, to je zato što su vam programi otvoreni. Pokušajte zatvoriti zahtjevne programe - ili čak ponovno podizanje sustava - a datoteke swapfile trebaju smanjiti i prestati koristiti prostor. Vaš Mac koristi samo prostor na disku kad je to potrebno, tako da ne gubite ništa.
Ako su datoteke virtualne memorije uvijek vrlo velike, to je znak koji vam treba više RAM-a na vašem Macu, a ne da morate onemogućiti značajku virtualne memorije. (Možete vidjeti koliko fizička memorija vašeg Mac-a ima klikom na izbornik Apple> O ovom Macu i čitanje onoga što kaže pored "Memorija".)
Drugim riječima, ne brinite o tome. Ostavite virtualnu memoriju i dopustite Macu da radi kako je dizajniran.