Ich verwende RAM zum Speichern einiger meiner Datenbanktabellen und die anderen werden auf der Festplatte gespeichert.
Heute habe ich erfahren, dass meine Prozesse Swap-Speicher verwenden. Was ist nun Swap-Speicher und wie kann ich feststellen, welcher Prozess Swap-Speicher verwendet und wie kann ich verhindern, dass er verwendet wird?
Antworten:
Wenn Ihnen der physische Speicher ausgeht, verwenden Sie den virtuellen Speicher, in dem die Daten auf der Festplatte gespeichert werden. Das Lesen von der Festplatte ist um mehrere Größenordnungen langsamer als das Lesen aus dem Speicher. (Der Datenaustausch zwischen realem und virtuellem Speicher erfolgt durch "Auslagern". Der Speicherplatz auf der Festplatte wird als "Auslagerungsspeicher" bezeichnet.)
Wenn Ihre App "Swap verwendet", müssen Sie entweder weniger Arbeitsspeicher verwenden oder mehr RAM kaufen.
(Swap ist nützlich, da Anwendungen, die nicht verwendet werden, auf der Festplatte gespeichert werden können, bis sie verwendet werden. Dann können sie "ausgelagert" und wieder normal ausgeführt werden. Solange sie sich nicht im Arbeitsspeicher befinden, kann das Betriebssystem diesen Arbeitsspeicher verwenden Für etwas anderes, wie den Festplatten-Cache. Es ist also eine sehr nützliche Funktion. Wenn Sie jedoch nicht über genügend physischen Speicher verfügen, um Ihr Programm auszuführen, benötigen Sie definitiv mehr Speicher. Glücklicherweise ist Speicher heutzutage wirklich sehr, sehr billig.)
quelle
Ein Computer verfügt über einen bestimmten physischen Speicher. Aber meistens wollen wir mehr. Also tauschen wir Speicher auf der Festplatte aus.
Jedes Mal, wenn wir diesen Speicher benötigen, muss er in den Speicher zurückgetauscht werden (ein anderes Teil wird ausgetauscht). Es gibt extrem intelligente Algorithmen, um die Verzögerung zu minimieren, aber manchmal müssen wir noch warten.
Wenn Sie sich unter Windows den Task-Manager ansehen, können Sie die Spaltenseitenfehler anzeigen. Hier wird angezeigt, wie oft eine Anwendung nach einem Speicherstück fragt, das sich auf der Festplatte befunden hat und ausgetauscht werden muss. Viele Seitenfehler = langsame Anwendung.
Dieser Prozess wird auf mehreren Ebenen angewendet. Eine Zusammenfassung von schnell bis langsam:
quelle
Wenn Sie Swap nicht verwenden möchten, verwenden Sie keine Swap-Partition (kommentieren Sie die Zeile aus
/etc/fstab
). Dadurch wird jedoch verhindert, dass ein neuer Prozess gestartet wird, und Malloc schlägt fehl, wenn Ihnen der physische Speicher ausgeht. Das ist im Allgemeinen keine gute Idee ... nicht sehr sicher und auch nicht sehr nützlich, da das Betriebssystem die aktuellen Seiten im Speicher hält und auf die Festplatte wechselt, die in letzter Zeit nicht verwendet wurden.Eine andere Lösung könnte darin bestehen, die Datenbank zu hacken, damit die Seiten im Speicher gesichert werden (ich weiß, dass dies möglich ist, aber ich kann Ihnen jetzt nicht genau sagen, wie) Caching-Mechanismen.
Um zu wissen, was der Swap ist und wie der virtuelle Speicher funktioniert ... Ich empfehle Ihnen, sich einige Vorlesungen zum Thema Betriebssystem anzuschauen. Vielleicht kann die MIT Open Courseware hilfreich sein.
quelle
Ich habe eine teilweise Antwort gefunden. Ein Swap-Speicher ist ein Speicherplatz auf der Festplatte Ihres Computers, den Betriebssysteme verwenden, um die Informationen, die sich tatsächlich im RAM befinden, für eine andere Anwendung freizugeben. Dies sollte erfolgen, wenn das System Speicher für einen neuen Prozess benötigt und keiner vorhanden ist. Wir können also feststellen, dass unser System möglicherweise keinen SWAP-Speicher benötigt, wenn es über ausreichend RAM verfügt.
AKTUALISIEREN
Um herauszufinden, wo Swap Space (oder virtueller Speicher) ist, können Sie den Task-Manager (STRG + ALT + ENTF) aufrufen und ihn über ANSICHT -> SPALTEN -> VIRTUELLER SPEICHER aktivieren. Berechnen Sie jetzt einfach den Unterschied zwischen der Speichernutzung und dem virtuellen Speicher. Außerdem finden Sie hier eine Anleitung, wie Sie feststellen können, ob Sie mit Vista arbeiten: http://www.ehow.com/how_5067693_increase-swap-space.html
quelle
Swap ist der Festplattenspeicher, der als RAM verwendet wird. Es ist (relativ gesehen) sehr langsam, verhindert jedoch, dass Computer abstürzen, wenn sie versuchen, mit mehr Daten umzugehen, als ihr RAM verarbeiten kann.
Installieren Sie mehr RAM, um die Verwendung von Swap zu verhindern.
quelle
Wenn Sie nicht möchten, dass Ihre Prozesse den Swap-Speicher verwenden, deaktivieren Sie den Swap-Speicher einfach vollständig. Wenn Ihnen jemals der Speicher ausgeht, bricht der Linux-Kernel einige Ihrer laufenden Prozesse ab, um Speicher für die Verwendung freizugeben.
Wenn Sie über ausreichend RAM für Ihr System verfügen, können Sie auch auf einen Auslagerungsspeicher verzichten.
Ich habe einen Laptop mit 768 MB RAM, der keinen Swap-Speicher verwendet. Es ist gut genug für meine Bedürfnisse. Ich habe einen Server mit 256 MB RAM und benutze keinen Swap-Speicher. Es laufen 8 virtuelle Server mit OpenVZ-Virtualisierung, auch ohne Probleme.
Es liegt also an Ihnen, ob Sie einen Swap-Speicher benötigen.
quelle