轉自網路
Linux系統會把大部分可用記憶體劃歸自己使用。這是Linux管理記憶體的一種方式,他不是在需要分配空間的時候再到實體記憶體中去劃一塊歸某個程式使用,而是提前就把整個記憶體管理起來,需要的時候再分配給某個程式。這樣的好處是,因為有了統一管理,不容易出現記憶體碎片,提高了效率。這些linux管理的記憶體大多數是空閒狀態,你可以看看當新的程式執行的時候,Linux的記憶體佔用不會提高,除非機器的記憶體已經耗盡。這時Linux會把一些不常用的程式換出到交換分割槽。
下面是free命令列出的各個選項的詳細解釋:
total:總計實體記憶體的大小。
used:已使用多大。
free:可用有多少。
Shared:多個程式共享的記憶體總額。
Buffers/cached:磁碟快取的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
而確定是真實的使用可以採用如下方法:
用free -m檢視。
其實是記憶體的統計方法不同。linux裡面顯示的已經使用記憶體是程式所佔的記憶體和用作磁碟快取的記憶體。
而free的記憶體是真正的一點有沒有派上用場的記憶體。
從應用程式的角度來說,可用記憶體=系統free memory+buffers+cached。
也可以透過其他方式瞭解linux的虛擬記憶體管理技術。