Ich habe eine htpc/server-ähnliche Ubuntu-Box, die zu Hause mit Kodi (xbmc) und einigen anderen Webservices läuft.
Ich bemerkte, dass Kodi träge war, und ssh’ in die Box, um zu sehen, was los war. Ich habe diese htop-Ausgabe gesehen:
Dies ist die Ausgabe von free -m
[email protected]:~$ free -m
total used free shared buffers cached
Mem: 7642 7505 137 152 196 1296
-/+ buffers/cache: 6012 1630
Swap: 1905 10 1895
Wie kommt es, dass die RAM-Auslastung im Screenshot bei 6000 von 7600 MB liegt
bei 7505 in free
Aber wenn ich alle Prozentsätze der einzigartigen Prozesse in htop zusammenzähle, komme ich nur auf etwa 22-25%? Sollte es nicht viel höher sein?
Akzeptierte Antwort:
Das liegt daran, dass htop
zählt Puffer und gecachten Speicher als freien Speicher, da dies tatsächlich so gesehen werden kann.
Es gibt keine „Kosten“, einige zwischengespeicherte Daten im Speicher zu haben, also behält der Kernel Dinge dort, nur für den Fall, dass sie später benötigt werden.
Angenommen, Sie haben sich beispielsweise ein Video mit etwa 500 MB angesehen, nachdem Sie das Video geschlossen haben, entscheidet sich der Kernel möglicherweise dafür, es im Speicher zu behalten, anstatt diesen Teil zu löschen, nur für den Fall, dass Sie das Video erneut benötigen, damit es nicht geladen werden muss es wieder von Ihrer langsamen Festplatte. Aber diese 500 MB können als kostenlos angesehen werden, denn sobald Sie Speicher für etwas anderes benötigen, kann der Kernel diesen Speicher sofort verwenden.
Es ist nicht der Fall, wenn dieser Speicher von einem laufenden Programm verwendet wird, da dieses Programm diesen Speicher gerade verwendet.
Zieht man vom used
ab Speichern Sie die buffers
und cached
Werten erhalten Sie den von htop
angezeigten Wert .
Nun zu dem Prozentsatz, den Sie gesagt haben, es hängt davon ab, wie Sie es zusammengefasst haben.