„W twoim systemie zabrakło pamięci aplikacji”. Jak to możliwe?

20

macOS regularnie wyświetla okno dialogowe „Force Quit Applications”:

W systemie zabrakło pamięci aplikacji.

W systemie zabrakło pamięci aplikacji.

Aby uniknąć problemów z komputerem, zamknij wszystkie nieużywane aplikacje.

Jak to możliwe, jeśli istnieje tylko kilka otwartych aplikacji?

alessandro308
źródło
2
Ostatnio widziałem ten problem z prawie całą wolną pamięcią systemową. Problemem był wadliwy program, który alokował, ale nigdy nie zwalniał pamięci GPU. Ponieważ wyświetlanie całego ekranu odbywa się za pomocą GPU, zużywanie całej jego pamięci wystarcza, aby spowodować uzasadniony błąd braku pamięci, nawet gdy jest dużo pamięci systemowej.
Josh Sanford
Brakuje informacji na zrzucie ekranu, ile kart jest otwartych w Safari i Chrome. Monitor aktywności może pokazywać, że Safari zawiera 30 osobnych procesów, a Chrome kolejne 10.
Demis
Nie pamiętam w tym dniu, ile kart otworzyłem. Ususlly Mam nie więcej niż 5 zakładek otwartych w safari i 0 w chrome, używanych tylko w niektórych testach rozwijających
alessandro308

Odpowiedzi:

10

Z mojego doświadczenia wynika, że ​​dzieje się tak, gdy na głównym dysku twardym systemu zaczyna brakować wolnego miejsca. Systemy operacyjne używają dysku twardego jako dodatkowej pamięci, zwanej „pamięcią wirtualną”. (Zdecydowanie zawsze chciałem, aby system operacyjny mógł po prostu zarezerwować dla siebie wystarczającą ilość miejsca, ale po prostu nie jest w stanie przewidzieć, ile aplikacji będziemy uruchamiać).

Ponadto warto zauważyć, że regularne korzystanie z Internetu wymaga teraz o wiele więcej pamięci niż w przeszłości. W monitorze aktywności zauważysz, że każda pojedyncza karta i okno (każda otwarta strona internetowa) to osobny proces, zajmujący znaczną część pamięci. Ponadto należy uwzględnić wszystkie reklamy, filmy, flash, skrypty, wtyczki i filmy 360 itd., Które powinny działać płynnie. Nowe systemy operacyjne i nowe strony internetowe po prostu zużywają dużo pamięci, aby zapewnić nam usługi, które, jak się oczekuje, „po prostu działają” (np. Synchronizacja między urządzeniami, powiadomienia, automatyczne aktualizacje itp.).

Krótko mówiąc, z mojego doświadczenia wynika, że ​​zwykle nie ma jednego procesu, który nagle zajmuje ogromną ilość pamięci (chociaż przeciekający program może rzeczywiście być winowajcą - na przykład Sketchup 2016 mi to robi). Częściej jest to dodatkowa funkcjonalność, jakiej oczekujemy od wielu programów / wtyczek internetowych.

Uważam, że ponowne uruchomienie komputera zawsze łagodzi ten problem przez krótki czas - przede wszystkim poprzez rozładowanie wszystkich stron internetowych i aplikacji, które uruchomiliśmy w miarę upływu czasu. Ale jeśli nasze oczekiwania dotyczące ograniczeń sprzętowych i komputerowych pozostaną takie same (i uruchomimy tę samą liczbę procesów bez zmiany czegokolwiek innego), w końcu znów napotkamy problem.

Dwa rozwiązania, które działają dla mnie:

1) Otwórz jednocześnie mniej kart / stron i mniej programów. Zamknij niektóre strony / programy przed otwarciem potężnych aplikacji, takich jak MS Office, Parallels, 3D CAD, programy Adobe itp.

2) Zwolnij więcej miejsca na dysku twardym systemu (np. Przenieś całą muzykę i zdjęcia na inny dysk), aby umożliwić systemowi obsługę typowych potrzeb pamięci wirtualnej. Dla mnie oznacza to, że mój dysk o pojemności 1 TB potrzebuje> 20% wolnego miejsca (200 GB)! Twoje wymagania mogą być inne. Jeśli korzystasz ze starszego laptopa Apple, iMaca lub Mini, OWC Data-Doubler to naprawdę fantastyczny sposób na osiągnięcie tego celu.

Metoda (1) jest moją tymczasową poprawką, więc kiedy w końcu wprowadzę metodę (2), przywrócę nieoczekiwaną wydajność, jakiej oczekuję podczas jednoczesnego uruchamiania wielu programów o dużej wytrzymałości.

Demis
źródło
Na przykład Google Chrome jest jedną z twoich otwartych aplikacji i możesz mieć 30 kart / stron otwartych w Chrome, z których każda zajmuje ogromną ilość pamięci. Na moim komputerze pojedyncza karta GMail zajmuje 4 GB pamięci (i mam 3 z nich otwarte dla różnych kont)!
Demis
5

Może to być wyciek pamięci aplikacji Google Chrome , ponieważ miałem z tym taki sam problem. Uruchom Menedżera zadań (w menu Więcej narzędzi lub przejdź do chrome: // system /) i sprawdź pamięć używaną przez otwarte karty i zabij je. Jeśli to nie pomoże, wymuszenie zamknięcia aplikacji, której dotyczy problem, powinno rozwiązać problem.

Alternatywnie sprawdź ciśnienie pamięci ( memory_pressurepolecenie) i dwukrotnie sprawdź ilość wolnego miejsca, aby zapewnić wystarczającą ilość miejsca na pliki wymiany. Spróbuj także uruchomić sudo purgez terminala.

kenorb
źródło
4

Możliwe jest dziwne żądanie pamięci, której system pamięci wirtualnej nie może zobowiązać. Najlepiej jest ponownie uruchomić komputer Mac, a następnie uruchomić Monitor aktywności, aby pokazać ciśnienie pamięci, a następnie obserwować szczegóły pamięci, gdy / jeśli ponownie osiągniesz ten stan pamięci.

Prawdopodobnie jest to spowodowane przyczyną wycieku pamięci przez błędny program - możesz więc sprawdzić aktualizację wszystkich programów uruchomionych w ostatnim czasie, aby upewnić się, że nie jest to coś, co naprawi błąd.

bmike
źródło
3

Bardziej prawdopodobne jest, że jest to problem z samym systemem operacyjnym. Właśnie otrzymałem ten komunikat, gdy miałem tylko kilka otwartych programów, a ciśnienie pamięci było „zielone” w monitorze aktywności - ale mój czas pracy wynosi 106 dni. Jak wszyscy wiedzą - żaden komputer / system operacyjny nie może działać wiecznie bez restartu, chociaż 106 dni nie jest wysoką liczbą w porównaniu z komputerami mainframe, ale w przypadku systemu osobistego jest całkiem niezły (chociaż czas pracy mojego drugiego Maca wynosi 168 dni, kiedy mówimy - bez śladów braku pamięci). Ponowne uruchomienie jest prawdopodobnie najlepszą sugestią, dopóki Apple nie naprawi tego.

db
źródło
Dlaczego ktoś głosował nad moim komentarzem powyżej?
db
Uważam, że przy wystarczającej ilości wolnego miejsca na Dysku prawie nigdy nie muszę się wyłączać. Najdłużej minęło co najmniej 6 miesięcy (przed aktualizacją systemu) - wydaje się, że system operacyjny jest naprawdę dobry w czyszczeniu pamięci i utrzymywaniu stabilności. Ale nawet wtedy ponowne uruchomienie nie spowodowało zauważalnej różnicy w wydajności systemu.
Demis,
3

Ten sam problem przydarzył mi się kilka dni temu.

Postępuję zgodnie z tymi instrukcjami, aby zresetować NVRAM i PRAM mojego Maca. Zużycie pamięci wzrosło z 4,5 GB do 2,8 GB podczas uruchamiania.

  1. Wyłącz komputer Mac.

  2. Włącz go ponownie i naciśnij i przytrzymaj Command+ Option+ P+ R(wszystkie w tym samym czasie), zanim pojawi się szary ekran.

  3. Przytrzymaj klawisze, aż usłyszysz, że komputer Mac uruchamia się po raz drugi (pozwól mu wydać dwa sygnały dźwiękowe).

Musiałem powtórzyć proces, jeden raz po drugim, a teraz moje problemy z pamięcią zostały rozwiązane.

Rockie Yang
źródło
Byłem sceptycznie nastawiony do tego komentarza. To znaczy, dlaczego RAM nie resetuje się przy wyłączaniu? Bez mocy, bez barana, prawda? I dlaczego miałbyś naciskać skomplikowaną kombinację przycisków. Ale szybki przegląd Google pokazuje, że ta technika została potwierdzona przez Apple support.apple.com/en-us/HT204063 . Zawartość tej strony jest w zasadzie taka sama jak ta odpowiedź, chociaż sugeruje, że komputer Mac będzie miał albo PRAM (starsze Mac), albo NVRAM (nowsze Mac).
frederickf
Zresetowanie NVRAM / PRAM nie działało, wystarczyło zrestartowanie.
MikeP,
2

Jeśli widzisz ten komunikat, ale wymienione aplikacje nie wydają się wyjaśniać domniemanego nadmiernego zużycia pamięci, sprawdź, czy nie stoją za tym procesy nieaplikacyjne. Zostaną one wymienione na karcie Pamięć Monitora aktywności, ale nie pojawią się w tym oknie dialogowym.

To okno dialogowe przeszkadzało mi, gdy ani wymienione aplikacje, ani wolne miejsce na dysku nie wyjaśniały tego problemu. Okazuje się, że miałem kilka procesów w systemie UNIX, które wykorzystywały niezwykle duże ilości pamięci. Kwoty, których używali, nadal nie wyjaśniają roszczenia okna dialogowego, a presja pamięci wciąż była zielona, ​​ale gdy tylko je opuściłem (nawet nie musiałem wymuszać wyjścia), okna dialogowe zatrzymały się i nie powróciły od tego czasu .

OSTRZEŻENIE: Dobrym pomysłem jest, aby przeprowadzić małe badania online na temat nieznanych procesów i zrobić to przed ich przymusowym rzuceniem, ponieważ niektóre z nich mogą mieć znaczący zły wpływ na system, jeśli zostaną zabite. W zależności od procesu może być wskazane zrestartowanie systemu albo zamiast niego, albo bezpośrednio po nim.

Terry N.
źródło
1

Przyczyną tego komunikatu o błędzie może być wiele przyczyn, ponieważ regularnie otrzymuję komunikat o błędzie i mam 300 GB wolnego miejsca na dysku SSD 500 GB. 32 GB pamięci RAM, a komunikat wyskoczył przy użyciu tylko około 24 GB fizycznej pamięci RAM.

Zawsze tak było, kiedy miałem mnóstwo otwartych kart Safari. Podejrzewam problem z zarządzaniem pamięcią w Safari. Być może niektóre strony go uruchamiają, ale Safari powinno być wystarczająco odporne, aby odzyskać.

Dodatkowo Safari zbyt często rzuca we mnie opcję „wymuś przeładowanie”, ponieważ strony internetowe przestały odpowiadać. Po prostu nie jest gotowy na najwyższy czas. Ktoś musi załagodzić erupcję bozo w zespole Safari ...

rGiskard
źródło
Wątpię, aby stało się tak, ponieważ Safari nie radzi sobie dobrze z pamięcią (chyba że Chrome znacznie lepiej radzi sobie z tym samym badziewiem). Jeśli spojrzysz na Monitor aktywności, zobaczysz, że każda strona internetowa wymaga dużo pamięci - zwłaszcza jeśli są to aplikacje internetowe (takie jak Gmail - 4 GB pamięci dla mnie) lub mają reklamy flash / filmowe (takie jak każda blog / strona z wiadomościami).
Demis