Linux-free命令顯示各值的具體含義
free 命令相對于top 提供了更簡潔的查看系統(tǒng)內存使用情況:
# free
total used free shared buffers cached
Mem: 255988 231704 24284 0 6432 139292
-/+ buffers/cache: 85980(used2) 170008(free2)
Swap: 746980 0 746980
Mem:表示物理內存統(tǒng)計
-/+ buffers/cached:表示物理內存的緩存統(tǒng)計
Swap:表示硬盤上交換分區(qū)的使用情況,這里我們不去關心。
系統(tǒng)的總物理內存:255988Kb(256M),但系統(tǒng)當前真正可用的內存并不是第一行free 標記的 24284Kb,它僅代表未被分配的內存。
total:表示物理內存總量。
used:表示總計分配給緩存(包含buffers 與cache )使用的數(shù)量,但其中可能部分緩存并未實際使用。
free:未被分配的內存。
shared:共享內存,一般系統(tǒng)不會用到,這里也不討論。
buffers:系統(tǒng)分配但未被使用的buffers 數(shù)量。
cached:系統(tǒng)分配但未被使用的cache 數(shù)量。buffer 與cache 的區(qū)別見后面。
used2:實際使用的buffers 與cache 總量,也是實際使用的內存總量。
free2:未被使用的buffers 與cache 和未被分配的內存之和,這就是系統(tǒng)當前實際可用內存。
可以整理出如下等式:
total = used + free
total = used2 + free2
used = buffers + cached + used2
free2 = buffers + cached + free
buffer 與cache 的區(qū)別
A buffer is something that has yet to be "written" to disk.
A cache is something that has been "read" from the disk and stored for later use.