
Ich habe einen Linux-VPS mit 256 MB Speicher ( free
findet aber nur 248). Allerdings habe ich anscheinend noch 85 MB frei,AberEs werden 255 MB ausgelagert. Warum ist das so?
free -m
total used free shared buffers cached
Mem: 248 245 3 0 41 40
-/+ buffers/cache: 163 85
Swap: 1971 255 1716
Antwort1
Sie haben 3 MB frei, nicht 85 MB. Da Sie 255 MB Swap-Speicher verwendet haben und nur 88 MB Speicher, die potenziell zum Speichern ausgelagerter Daten verwendet werden könnten, hat der Kernel keine andere Wahl, als mindestens 167 MB auszulagern. Der Grund dafür, dass er mehr ausgelagert hat, ist, dass der Kernel der Ansicht war, dass die Leistung besser wäre, wenn er diesen Speicher für einen Festplattencache (technisch gesehen für das Seiten-Caching) verwenden würde, anstatt ihn zum Speichern von Anwendungsdaten zu verwenden, auf die in letzter Zeit nicht zugegriffen wurde.
Der Grund, warum 3 MB freigehalten werden, besteht darin, Lastspitzen in Kontexten zu bewältigen, in denen Speicher nicht einfach freigegeben oder anderweitig verwendet werden kann. Zum Beispiel bei einer Lastspitze im Netzwerkverkehr oder wenn die Festplatten-E/A abgeschlossen ist.