Wenn ich das richtig verstehe, ist in der folgenden Ausgabe, die von free erzeugt wird, 3535 m der tatsächliche freie Speicher, der Anwendungen zur Verfügung steht, nur 413 m werden verwendet, ist das richtig? Benötigen Sie eine Klärung des Unterschieds zwischen Mem und -/+ Puffer/Cache-Zeile.
free -m total used free shared buffers cached Mem: 3949 3854 95 0 9 3431 -/+ buffers/cache: 413 3535 Swap: 2047 1322 725
Akzeptierte Antwort:
Der Mem: total
Abbildung ist die Gesamtmenge an RAM, die von Anwendungen verwendet werden kann. Dies ist der gesamte auf dem System installierte RAM minus:
- von Hardwaregeräten reservierter Speicher (häufig Videospeicher, wenn die Grafikkarte keinen eigenen RAM hat);
- Speicher, der vom Kernel selbst verwendet wird.
Diese Summe umfasst:
free
:Speicher, der derzeit für beliebige Zwecke verwendet wird;shared
:ein Begriff, der nicht mehr existiert. Es wird aus Gründen der Abwärtskompatibilität in der Ausgabe belassen (es gibt Skripte, die die Ausgabe vonfree
parsen ). (Auf aktuellen Systemen sehen Sie normalerweise Werte ungleich Null, weilshared
wurde umfunktioniert, um Speicher anzuzeigen, der explizit über einen Shared-Memory-Mechanismus geteilt wird. Auf älteren Systemen enthielt es Dateien, die von mehr als einem Prozess abgebildet wurden, und gemeinsam nutzbaren Speicher, der nachfork()
gemeinsam genutzt wurde .)buffers
:Speicher, der von Dateien unterstützt wird und bei Bedarf auf die Festplatte geschrieben werden kann;cache
:Speicher, der durch Dateien gesichert ist und jederzeit zurückgefordert werden kann (der Unterschied zubuffers
besteht darin, dass Puffer auf der Festplatte gespeichert werden müssen, bevor sie wiederverwendet werden, während der Cache aus Dingen besteht, die von der Festplatte neu geladen werden können);used -buffers/cache
:Speicher, der von Anwendungen verwendet wird (und nicht zum Austauschen ausgelagert wird).
Zur Not könnte das System ohne Puffer und Cache laufen, RAM für Anwendungen reservieren und systematisch Lese- und Schreibvorgänge auf der Festplatte ohne Caching durchführen. Die -/+ buffers/cache
Zahlen geben die Menge an RAM an, die direkt von Anwendungen verwendet wird (used
Spalte) und die Menge an RAM, die nicht von Anwendungen verwendet wird (free
Spalte).
Obwohl dies sehr unterschiedlich sein kann, ist bei einem gesunden System normalerweise etwa die Hälfte seines Arbeitsspeichers für Anwendungen und die andere Hälfte für Puffer und Cache reserviert. Sofern Sie keinen dedizierten Dateiserver betreiben, verfügt Ihr System über mehr RAM, als es für das, was Sie gerade tun, benötigt. Wenn die free - buffers/cache
niedrig war, würde dies auf ein System hindeuten, das nicht über genügend RAM verfügt (entgegen der weit verbreiteten Meinung ist viel Speicher für Puffer und Cache wichtig für die Systemleistung, und der Versuch, mehr Speicher für Anwendungen zu reservieren, würde 99,99 ergeben % der Systeme langsamer).
Der swap
Zeile ist einfach, sie zeigt die Menge an Swap, die verwendet wird (entweder von Anwendungen oder für tmpfs
Speicherplatz) und die Menge, die nicht vorhanden ist.