De ce nu ar trebui să opriți memoria virtuală pe computerul dvs. Mac
Macul dvs. vine cu o cantitate setată de aplicații de memorie fizică pe care le puteți utiliza. Programele dvs. în execuție, fișierele deschise și alte date cu care lucrează în mod activ Mac sunt stocate în această memorie fizică. Dar aceasta este o aplicație de simplificare, de asemenea, poate folosi "memoria virtuală" pe care Mac-ul dvs. o poate comprima și stochează temporar pe disc.
Nu există nici o modalitate oficială de a dezactiva memoria virtuală pe un Mac modern, deși acest lucru a fost posibil în zilele dinainte de lansarea Mac OS X-acum numit macOS. Deși este posibil să vă hackați sistemul pentru a împiedica stocarea de către Mac a memoriei virtuale pe disc, nu ar trebui să faceți acest lucru.
Ce este memoria virtuală?
În timp ce calculatorul dvs. Mac are doar o cantitate limitată de memorie fizică, acesta expune o zonă mai mare de memorie virtuală disponibilă pentru a rula programe. De exemplu, chiar dacă aveți un Mac cu memorie RAM de 8 GB, fiecare proces pe 32 de biți de pe Mac are 4 GB de spațiu de adresă disponibil pe care îl poate utiliza. Fiecare proces pe 64 de biți este dat în jur de 18 exabytes - adică 18 miliarde de gigabytes - de spațiu cu care poate lucra.
Aplicațiile sunt libere să utilizeze cât mai multă memorie pe care o doresc în cadrul acestor limitări. Când memoria dvs. fizică se umple, MacOS "înșelă" automat datele care nu sunt utilizate în mod activ, stocându-le pe unitatea internă Mac. Când datele sunt necesare din nou, sunt transferate înapoi în memoria RAM. Acest lucru este mai lent decât pur și simplu păstrarea datelor în memorie RAM tot timpul, dar permite sistemului să transparentă doar "continua să lucreze". Dacă Mac-urile nu au putut să stocheze date de memorie virtuală pe disc, veți vedea mesaje care vă cer să închideți un program pentru a continua.
Acesta este în esență același lucru ca și fișierul de pagină de pe Windows și spațiul de swap pe Linux și alte sisteme de operare asemănătoare UNIX. De fapt, macOS este un sistem de operare asemănător UNIX.
Versiunile moderne ale macOS de fapt trec prin probleme chiar mai mari pentru a evita pagerarea datelor pe disc, comprimarea datelor stocate în memorie cât mai mult posibil înainte de a le pagera.
Unde este stocat?
Datele de memorie virtuală sunt stocate în / Privat / var / vm
director pe spațiul de stocare intern al Macului dacă a fost pagerat pe disc. Datele sunt stocate în unul sau mai multe fișiere denumite "swapfile" și se termină cu un număr.
Cele mai multe sisteme de operare asemănătoare UNIX utilizează o partiție separată pentru fișierul swap, alocând permanent o parte din spațiul de stocare pentru a schimba spațiul. Apple MacOS nu face acest lucru. În schimb, stochează fișierele swapfile pe unitatea de stocare a sistemului. Dacă aplicațiile nu au nevoie de memorie virtuală suplimentară, aceste fișiere nu vor folosi mult spațiu. Dacă aplicațiile au nevoie de mai multă memorie virtuală, aceste fișiere vor crește în mărime după cum este necesar - și apoi se vor micșora înapoi atunci când nu mai trebuie să fie mari.
Acest director conține, de asemenea, fișierul "sleepimage", care stochează conținutul RAM-ului Mac pe disc atunci când acesta hibernează. Acest lucru permite Mac-ului să-și salveze starea - inclusiv toate aplicațiile și fișierele deschise - în timp ce se închide și nu utilizează nicio alimentare.
Pentru a vizualiza conținutul acestui director și pentru a vedea cât spațiu se folosește aceste fișiere pe disc, puteți deschide o fereastră Terminal și executați următoarea comandă. (Pentru a deschide o fereastră Terminal, apăsați Command + Space pentru a deschide Căutare Spotlight, tastați "Terminal" și apăsați Enter.)
ls -lh / privat / var / vm
În captura de ecran de mai jos, putem vedea că fiecare dintre aceste fișiere are o dimensiune de 1 GB pe calculatorul meu Mac.
De ce nu trebuie să dezactivați memoria virtuală
Chiar nu ar trebui să încercați să dezactivați această caracteristică. Sistemul de operare macOS și aplicațiile care rulează așteaptă ca acesta să fie activat. De fapt, documentația oficială a Apple spune că "Ambele OS X și iOS includ un sistem de memorie virtuală complet integrat pe care nu îl puteți dezactiva; este întotdeauna activă. "
Cu toate acestea, este tehnic posibil pentru a dezactiva magazinul de suport - adică acele swapfiles pe macOS pe disc. Aceasta implică dezactivarea Protecției Integrității Sistemului înainte de a-i spune Mac-ului să nu ruleze daemonul sistemului dynamic_pager și apoi să ștergă swapfile-urile. Nu vom furniza comenzile relevante pentru a face acest lucru aici, deoarece nu recomandăm nimănui să facă acest lucru.
Sistemul de operare macOS și aplicațiile care rulează pe acesta așteaptă ca sistemul de memorie virtuală să funcționeze corect. Dacă memoria fizică se umple și sistemul de operare Mac nu poate afișa datele pe disc, se va întâmpla unul dintre cele două lucruri rele: Fie veți vedea un prompt care vă va spune să renunțați la una sau mai multe aplicații pentru a continua sau la aplicații care se vor prăbuși și este posibil să aveți o instabilitate generală a sistemului.
Da, chiar dacă aveți 16 GB sau mai mult de memorie RAM, aceasta poate umple uneori - mai ales dacă executați aplicații profesionale exigente precum editoare video, audio sau de imagine care necesită stocarea multor date în memorie. Lasă-l în pace.
Nu vă îngrijorați de spațiul pe disc sau de SSD
Există două motive pentru care oamenii ar putea dori să dezactiveze caracteristica de memorie virtuală și să elimine fișierele swapfile de pe disc.
În primul rând, vă puteți îngrijora de utilizarea spațiului pe disc. Poate doriți să scăpați de aceste fișiere pentru a elibera spațiu. Nu ne-ar face griji. Aceste fișiere nu pierd prea mult spațiu pe disc. Dacă Mac-ul dvs. nu are nevoie de multă memorie virtuală, va fi mic. Pe MacBook Air cu doar 4 GB de memorie RAM, am observat un fișier swapfile cu aproximativ 1 GB de spațiu - asta este.
Dacă folosesc mult spațiu, acest lucru se datorează faptului că programele pe care le-ați deschis le-au nevoie. Încercați să închideți programe exigente - sau chiar reporniți - și fișierele swapfile ar trebui să se micșoreze și să nu mai folosească spațiu. Macul dvs. utilizează numai spațiu pe disc atunci când este necesar, deci nu pierdeți nimic.
Dacă fișierele de memorie virtuală sunt întotdeauna foarte mari, acesta este un semn de care aveți nevoie de mai multă memorie RAM pe Mac, nu că trebuie să dezactivați memoria virtuală. (Puteți vedea câtă memorie fizică are Mac-ul dvs. făcând clic pe meniul Apple> Despre acest Mac și citiți ce scrie lângă "Memorie").
Cealaltă preocupare este uzura drive-ului intern solid-state al computerului Mac. Mulți oameni sunt îngrijorați că excesul scrie într-o unitate solid-state ar putea reduce durata de viață și provoca probleme. Acest lucru este adevărat în teorie, dar, în practică, această preocupare este, în general, exagerată și a rămas din zilele în care SSD-urile aveau mult mai puțină longevitate. SSD-urile moderne ar trebui să dureze mult timp, chiar și cu funcții precum aceasta activată. MacOS nu va purta repede în jos SSD-ul doar pentru că lăsați o caracteristică implicită a sistemului activată - de fapt, altceva în Mac-ul dvs. probabil va muri înainte de SSD.
Cu alte cuvinte, nu vă îngrijorați. Lăsați memoria virtuală să fie și permiteți Macului să funcționeze așa cum a fost proiectat.