If-Koubou

Dlaczego nie należy wyłączać pamięci wirtualnej na komputerze Mac

Dlaczego nie należy wyłączać pamięci wirtualnej na komputerze Mac (Jak)

Komputer Mac jest wyposażony w określoną liczbę aplikacji pamięci fizycznej, z których można korzystać. Twoje działające programy, otwarte pliki i inne dane, z którymi Twój Mac aktywnie współpracuje, są przechowywane w tej fizycznej pamięci. Ale to jest uproszczenie - aplikacje mogą również używać "pamięci wirtualnej", którą Twój komputer Mac może kompresować i tymczasowo przechowywać na dysku.

Nie ma oficjalnego sposobu wyłączenia pamięci wirtualnej na nowoczesnym komputerze Mac, chociaż było to możliwe w czasach, gdy Mac OS X - teraz o nazwie macOS - został zwolniony. Chociaż może być możliwe zhakowanie systemu, aby uniemożliwić Macowi przechowywanie pamięci wirtualnej na dysku, nie powinieneś tego robić.

Czym jest pamięć wirtualna?

Podczas gdy komputer Mac ma ograniczoną ilość pamięci fizycznej, udostępnia on większy obszar dostępnej pamięci wirtualnej do uruchomionych programów. Na przykład, nawet jeśli masz komputer Mac z 8 GB pamięci RAM, każdy 32-bitowy proces na komputerze Mac ma 4 GB dostępnej przestrzeni adresowej, z której może korzystać. Każdy proces 64-bitowy ma około 18 eksabajtów - czyli 18 miliardów gigabajtów - przestrzeni, z którymi może pracować.

Aplikacje mogą dowolnie wykorzystywać tyle pamięci, ile chcą w ramach tych ograniczeń. Gdy pamięć fizyczna się zapełni, macOS automatycznie "stronicuje" dane, które nie są aktywnie używane, przechowując je na dysku wewnętrznym komputera Mac. Gdy dane są ponownie potrzebne, są przesyłane z powrotem do pamięci RAM. Jest to wolniejsze niż zwykłe przechowywanie danych w pamięci RAM przez cały czas, ale pozwala na przejrzyste działanie systemu po prostu "kontynuuj pracę". Jeśli komputery Mac nie mogą przechowywać danych z pamięci wirtualnej na dysku, zobaczysz komunikat z prośbą o zamknięcie programu, aby kontynuować.

Jest to w zasadzie to samo, co plik strony w systemie Windows i przestrzeń wymiany w systemie Linux i innych systemach operacyjnych podobnych do systemu UNIX. W rzeczywistości macOS to sam system operacyjny podobny do systemu UNIX.

Współczesne wersje macOS w rzeczywistości przechodzą jeszcze więcej kłopotów, aby uniknąć wysyłania danych na dysk, kompresując dane przechowywane w pamięci tak często, jak to możliwe, przed ich wysłaniem.

Gdzie jest przechowywany?

Dane pamięci wirtualnej są przechowywane w / private / var / vm katalog na wewnętrznej pamięci twojego komputera Mac, jeśli został przeniesiony na dysk. Dane są przechowywane w jednym lub wielu plikach o nazwie "swapfile", a kończą na numerze.

Większość systemów operacyjnych typu UNIX używa oddzielnej partycji dla pliku wymiany, trwale przydzielając część pamięci do wymiany. MacOS Apple nie robi tego. Zamiast tego przechowuje pliki wymiany plików na dysku pamięci systemowej. Jeśli aplikacje nie potrzebują dodatkowej pamięci wirtualnej, pliki te nie zajmują dużo miejsca. Jeśli aplikacje potrzebują więcej pamięci wirtualnej, pliki te będą się powiększać w razie potrzeby - a następnie zmniejszać z powrotem, gdy nie będą już duże.

Ten katalog zawiera również plik "sleepimage", który przechowuje zawartość pamięci RAM twojego komputera Mac na dysku po hibernacji. Dzięki temu komputer Mac może zachować swój stan - w tym wszystkie otwarte aplikacje i pliki - podczas wyłączania i nieużywania żadnej mocy.

Aby wyświetlić zawartość tego katalogu i sprawdzić, ile miejsca są obecnie używane na dysku na tym dysku, możesz otworzyć okno Terminal i uruchomić następujące polecenie. (Aby otworzyć okno Terminal, naciśnij Command + Space, aby otworzyć wyszukiwanie Spotlight, wpisz "Terminal" i naciśnij Enter.)

ls -lh / private / var / vm

Na poniższym zrzucie ekranu widzimy, że każdy z tych plików ma rozmiar 1 GB na moim Macu.

Dlaczego nie należy wyłączać pamięci wirtualnej

Naprawdę nie powinieneś próbować wyłączać tej funkcji. System operacyjny macOS i uruchomione aplikacje oczekują jego włączenia. W rzeczywistości oficjalna dokumentacja Apple mówi: "Zarówno OS X jak i iOS zawierają w pełni zintegrowany system pamięci wirtualnej, którego nie można wyłączyć; jest zawsze włączony. "

Jednak tak jest technicznie możliwe wyłączenie magazynu kopii zapasowych - czyli tych plików wymiany na macOSie z dyskiem. Wiąże się to z wyłączeniem ochrony integralności systemu przed powiedzeniem Macintosha, aby nie uruchamiał demona systemu dynamic_pager, a następnie usuwał pliki swap. Nie dostarczymy odpowiednich poleceń, aby to zrobić tutaj, ponieważ nie zalecamy, aby ktoś to robił.

System operacyjny macOS i działające na nim aplikacje oczekują prawidłowego działania systemu pamięci wirtualnej. Jeśli pamięć fizyczna zapełni się, a system operacyjny Mac nie może przesłać danych na dysk, wystąpi jedna z dwóch złych rzeczy: albo pojawi się monit nakazujący zamknięcie jednej lub więcej aplikacji, aby kontynuować, lub wystąpi awaria aplikacji i może wystąpić ogólna niestabilność systemu.

Tak, nawet jeśli masz 16 GB lub więcej pamięci RAM, czasami może się to zapełnić - szczególnie jeśli używasz wymagających profesjonalnych aplikacji, takich jak wideo, audio lub edytory graficzne, które muszą przechowywać dużo danych w pamięci. Zostaw to w spokoju.

Nie martw się o miejsce na dysku ani dysk SSD

Istnieją dwa powody, dla których ludzie mogą chcieć wyłączyć funkcję pamięci wirtualnej i usunąć pliki wymiany z dysku.

Po pierwsze, możesz martwić się o wykorzystanie miejsca na dysku. Możesz pozbyć się tych plików, aby zwolnić trochę miejsca. Cóż, nie przejmowalibyśmy się tym. Pliki te nie marnują dużej ilości miejsca na dysku. Jeśli Twój Macintosh nie potrzebuje dużo pamięci wirtualnej, będą małe. Na naszym MacBooku Air z tylko 4 GB pamięci RAM, zauważyliśmy plik wymiany pliku, używając około 1 GB miejsca - to wszystko.

Jeśli używają dużo miejsca, dzieje się tak dlatego, że otwarte programy potrzebują tego. Spróbuj zamknąć wymagające programy - lub nawet zrestartować - pliki plików wymiany powinny zmniejszyć się i przestać używać spacji. Twój Mac używa tylko miejsca na dysku, gdy jest to konieczne, więc nic nie tracisz.

Jeśli pliki pamięci wirtualnej są zawsze bardzo duże, jest to znak, że potrzebujesz więcej pamięci RAM w komputerze Mac, a nie, że musisz wyłączyć funkcję pamięci wirtualnej.(Możesz sprawdzić, ile pamięci fizycznej posiada twój Mac, klikając menu Apple> O tym Macintoshu i czytając, co mówi obok "Pamięć".)

Innym problemem jest zużycie wewnętrznego dysku SS-Mac. Wiele osób obawia się, że nadmierny zapis na dysk SSD może skrócić jego żywotność i spowodować problemy. Jest to prawdą teoretycznie, ale w praktyce obawa ta jest generalnie przesadzona i pozostała z czasów, gdy dyski SSD miały znacznie mniejszą żywotność. Nowoczesne dyski SSD powinny trwać długo, nawet przy włączonych takich funkcjach. macOS szybko nie zużywa twojego SSD tylko dlatego, że zostawiasz domyślną funkcję systemu - faktycznie, coś innego na Twoim Macu prawdopodobnie umrze przed twoim dyskiem SSD.

Innymi słowy, nie przejmuj się tym. Pozostaw pamięć wirtualną i pozwól komputerowi Mac pracować tak, jak go zaprojektowano.