Ich benutze OS X seit einigen Monaten (Lion und jetzt Mountain Lion). Ich habe 8 GB auf meinem Mini und fast täglich kommt es dem jetzt nahe. Auf einem Windows 7-Computer mit 8 GB hatte ich nie ein solches Problem. Wie auch immer, ich habe über das Internet gelesen, dass der inaktive Speicher der App-Cache der Programme ist, die kürzlich geschlossen wurden und zum schnelleren erneuten Öffnen verwendet werden können. Dieser inaktive Speicher kann bei Bedarf für eine neue App freigegeben werden. Es ist nicht freigegeben. Stattdessen beginnt OS X zu tauschen. Meine Frage ist also, warum OS X Swap verwendet, wenn es viel "inaktiven Speicher" gibt. Hier ein Bildschirm, der zeigt, was ich meine:
Ich hoffe wirklich, dass es eine Möglichkeit gibt, OS X dazu zu bringen, diese 2,69 GB zu nutzen, bevor ich mit dem Tauschen beginne.
Antworten:
Das Austauschen geschah anscheinend, als die inaktiven RAM-Seiten tatsächlich aktiv waren.
( Update: Wie in einem Kommentar klargestellt, ist dies nicht der Fall. Daher können Personen mit demselben Problem mit der horizontalen Regel fortfahren .)
Dh es liefen viele Programme und der Kernel hat einige Seiten ausgetauscht. Dann haben Sie einige Programme beendet. Der Kernel markiert seine RAM-Seiten als inaktiv. Es werden jedoch erst Seiten in den Arbeitsspeicher zurückgeschrieben, wenn diese Seiten benötigt werden. Dies führt dazu, dass sowohl inaktive als auch ausgelagerte Seiten vorhanden sind.
Warum nicht präventiv Seiten einlagern? Denn das wäre Wetten gegen die Gewinnchancen: Langfristig verlierst du. Stellen wir uns ein vereinfachtes Beispiel vor: Zwei Programme A und B, die nicht gleichzeitig in den Arbeitsspeicher passen. Programm A wird noch ausgeführt und alle ausgelagerten Seiten gehören zu A. Programm B wurde beendet und alle inaktiven Seiten gehören zu B.
Wenn der Kernel die Seiten von A präventiv einlagert und sofort danach:
Berücksichtigen Sie auch, dass das Auslagern (Schreiben auf die Festplatte) teurer ist als das Einlagern (Lesen von der Festplatte). Das macht diese "Wette" noch unattraktiver.
Kurz gesagt: Vertraue deinem Kernel und versuche nicht, ihn auszutricksen.
Update: Es hat sich herausgestellt, dass inaktiver Speicher nicht funktioniert, da der Artikel Verwenden der Aktivitätsüberwachung zum Lesen des Systemspeichers viele Leute zu der Annahme veranlasst hat, dass er funktioniert. Die im Artikel angegebene Definition für inaktiven Speicher ist korrekt:
Das folgende Beispiel ist jedoch völlig irreführend und zu stark vereinfacht (wie mein Beispiel, um ehrlich zu sein):
Ich habe nach weiteren Online-Ressourcen gesucht und bin zu diesem Thread in der Darwin-Kernel-Mailingliste gelangt, der ziemlich informativ ist. Zitat von Jim Magee (aus dem Darwin-Team - glaube ich):
Dies erklärt das beobachtete Verhalten. Dh die inaktiven Seiten, die Sie sehen, gehören zu laufenden Programmen, die in letzter Zeit nicht benutzt wurden. Wenn Sie also ein neues Programm starten, werden inaktive Seiten ausgetauscht. Gleichzeitig werden Seiten aus anderen Programmen als inaktiv markiert, um das 2/1-Verhältnis von aktiv zu inaktiv beizubehalten.
Der Thread enthält auch einige Vorschläge, um mehr über die Darwin-Interna zu erfahren. Es gibt auch einige Vorschläge für den Fall, dass Sie aufgrund von Beachball-Problemen mit der Untersuchung der Speichernutzung begonnen haben (die normalerweise wenig damit zu tun haben).
Die Schlussfolgerung bleibt die gleiche: Vertrauen Sie Ihrem Kernel und versuchen Sie nicht, ihn auszutricksen. :-)
quelle
Sie können das Paging sicher deaktivieren, wenn Sie über genügend RAM verfügen.
Probieren Sie diese Befehle aus.
Starten Sie dann neu und vergewissern Sie sich, dass der dynamic_pager-Prozess nicht mehr ausgeführt wird.
Stellen Sie sicher, dass in keine Auslagerungsdateien erstellt wurden
/private/var/vm/
.Versuchen Sie, die folgenden Befehle erneut zu aktivieren:
Sie können Spotlight auch deaktivieren, um mehr RAM freizugeben und die Festplattenaktivität zu verringern. Die folgenden Befehle werden zum Deaktivieren und Aktivieren von Spotlight verwendet.
quelle
Sie können nicht viel tun. Warum macht es das? Denn so funktioniert OS X. Der interessante Teil ist, wie der belegte Speicher mit jedem Schlaf, den der Mac bekommt, größer wird.
Was kannst du tun:
quelle
Das System funktioniert wie vorgesehen. Selbst wenn kein Speicherdruck besteht, kann es sinnvoll sein, einige Seiten zu schreiben, die nicht verworfen werden können, aber in letzter Zeit nicht zum Austauschen verwendet wurden, wenn das System nicht ausgelastet ist. Auf diese Weise können diese Seiten bei späterem Speicherdruck aus dem RAM entfernt werden, ohne dass sie erst geschrieben werden müssen, um sie zu tauschen, während das System ausgelastet ist.
quelle