free 命令會顯示內存的使用情況,包括實體內存,虛擬的交換文件內存,共享內存區段,以及系統核心使用的緩衝區等。
可用參數:
-b 以Byte爲單位顯示內存使用情況。
-k 以KB爲單位顯示內存使用情況。
-m 以MB爲單位顯示內存使用情況。
-o 不顯示緩衝區調節列。
-s <間隔秒數> 持續觀察內存使用狀況。
-t 顯示內存總和列。
-V 顯示版本信息。
[root@GouplovXim ~]# free -m
total used free shared buffers cached
Mem: 1006 983 22 13 70 313
-/+ buffers/cache: 599 406
Swap: 0 0 0
上面是執行free -m 返回的結果,下面是對這些數值的解釋:
total : 總計物理內存的大小。
used : 已使用多大。
free : 可用有多少。
Shared : 多個進程共享的內存總額。
Buffers/cached : 磁盤緩存的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
第四行是swap。
區別:
第二行(mem)的used/free與第三行(-/+ buffers/cache) used/free的區別。這兩個的區別在於使用的角度來看,第一行是從OS的角度來看,因爲對於OS,
buffers/cached 都是屬於被使用,所以他的可用內存是191MB,已用內存是168MB,其中包括,內核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是從應用程序角度來看,對於應用程序來說,buffers/cached 是等於可用的,因爲buffer/cached是爲了提高文件讀取的性能,當應用程序需在用到
內存的時候,buffer/cached會很快地被回收。所以從應用程序的角度來說,可用內存=系統free memory+buffers+cached。
如何看額定值:
cat /proc/meminfo