Speichernutzung: großer Unterschied zwischen „free -m“ und htop sowie Berechnung des verwendeten Speichers in htop im Vergleich zu /proc/meminfo

Speichernutzung: großer Unterschied zwischen „free -m“ und htop sowie Berechnung des verwendeten Speichers in htop im Vergleich zu /proc/meminfo

Ich bin mir dieser Frage bewussthttps://stackoverflow.com/questions/41224738/wie-berechnen-sie-den-systemspeicherverbrauch-von-proc-meminfo-like-htop Die Antwort scheint hinsichtlich der Speichernutzung veraltet und diese Frage scheint komplexer.

htop berechnet jetzt definitiv nicht mehr den Gesamtspeicher über MemTotal - MemFree. Eshttps://access.redhat.com/solutions/406773Ich habe eine Lösung gefunden, die passen könnte. Demnach würde es über berechnet, MemTotal - MemFree - Buffers - Cached - Slabwas aber im Vergleich zu htop zu einem zu geringen Speicherverbrauch führt.

Der Speicherverbrauch in htop scheint ziemlich verwandt zu sein, wie free -min der Zelle gezeigt wirdMem: used

Wenn Sie jedoch eine Ramdisk erstellen, ändert sich einiges:

mkdir mnt
sudo mount -t tmpfs none mnt
cd mnt 
sudo dd if=/dev/urandom of=test bs=32M status=progress

Oben wird eine RAM-Disk mit 50 % der Größe des installierten Speichers erstellt und gefüllt.

htop zeigt nun etwas mehr als die Hälfte des verwendeten physischen RAM an, im Testfall 3,82 GB von 7,44 GB. free -mEs werden jedoch immer noch nur 104 MB verwendet, verglichen mit 102 MB vor dem Erstellen und Füllen der RAM-Disk. Die Angabe von 104 MB ist also definitiv falsch, da die Hälfte des physischen Systemspeichers nicht mehr verfügbar sein kann, da sie von der RAM-Disk verwendet wird.

Die /proc/meminfoGröße der RAM-Disk scheint darin enthalten zu sein Cached, daher sollte der zwischengespeicherte Speicher bei der Berechnung nicht abgezogen werden.

Warum also meldet free -m einen so falschen Wert für den freien Speicher? Standardmäßig gibt es bei Distributionen wie Debian oder Ubuntu verschiedene tmpfs, was bedeutet, dass free -m einen falschen Eindruck vom freien Speicher vermittelt.

Die Speicherberechnung von htop scheint recht sinnvoll. Wie kann also der htop-Wert daraus berechnet werden /proc/meminfo?

verwandte Informationen