Die Werte in / proc / meminfo für MemTotal sind nicht sinnvoll. Als Mensch scheint es ungefähr dem installierten RAM zu entsprechen, aber für die Verwendung zur Anzeige des installierten RAM eines automatisierten Dienstprogramms scheint es ungenau und inkonsistent zu sein.
Für ein System mit 1 GB RAM würde ich erwarten, dass die MemTotal-Leitung einen Wert von 1048576 - 1024 * 1024 hat. Stattdessen sehe ich 1029392. Auf einer anderen 4G-Box sehe ich 3870172, was kein Vielfaches von 1024 ist und nicht einmal in der Nähe von 1029392 * 4 liegt. Auf einer 8G-Box erhalte ich 8128204, was wiederum keine Korrelation zu den anderen Werten zu haben scheint, noch ist es ein Vielfaches von 1024.
Ich versuche, diese Informationen zu verwenden, um den RAM auf einer Statuswebseite zu melden. Meine Problemumgehung besteht darin, es nur auf das nächste 1G-Vielfache zu "runden", aber ich möchte verstehen, warum diese Werte inkonsistent erscheinen und nicht meinen Erwartungen entsprechen.
Kann mich jemand darüber informieren, was ich hier vermisse?
EDIT: Um die akzeptierte Antwort unten zu erweitern ....
Die Referenz finden Sie hier .
Von dieser Seite, die die Inkonsistenz erklärt, interessiert mich auch Folgendes:
meminfo:
Bietet Informationen zur Verteilung und Nutzung des Speichers. Dies hängt von der Architektur und den Kompilierungsoptionen ab. ...