查看記憶體使用量情況
1.top
“2 users”為當前登入到系統的使用者,更確切的說是登入到使用者的終端數 -- 同一個使用者同一時間對系統多個終端的串連將被視為多個使用者串連到系統,這裡的使用者數也將表現為終端的數目;
“load average”為當前系統負載的平均值,後面的三個值分別為1分鐘前、5分鐘前、15分鐘前進程的平均數,一般的可以認為這個數值超過 CPU 數目時,CPU 將比較吃力的負載當前系統所包含的進程;
第五行(Swap)表示類別同第四行(Mem),但此處反映著交換分區(Swap)的使用方式。通常,交換分區(Swap)被頻繁使用的情況,將被視作實體記憶體不足而造成的。
2.free
total:總計實體記憶體的大小。
used:已使用多大。
free:可用有多少。
Shared:多個進程共用的記憶體總額。
Buffers/cached:磁碟緩衝的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
第二行(mem)的used/free與第三行(-/+ buffers/cache) used/free的區別:這兩個的區別在於使用的角度來看,第一行是從OS的角度來看,因為對於OS,buffers/cached 都是屬於被使用,所以他的可用記憶體是16176KB,已用記憶體是3250004KB,其中包括,核心(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是從應用程式角度來看,對於應用程式來說,buffers/cached 是等於可用的,因為buffer/cached是為了提高檔案讀取的效能,當應用程式需在用到記憶體的時候,buffer/cached會很快地被回收。
所以從應用程式的角度來說,可用記憶體=系統free memory+buffers+cached。
我們通過free命令查看機器空閑記憶體時,會發現free的值很小。這主要是因為,在linux中有這麼一種思想,記憶體不用白不用,因此它儘可能的cache和buffer一些資料,以方便下次使用。但實際上這些記憶體也是可以立刻拿來使用的。
3.其它
1)pmap pid
2)/proc/meminfo 機器的記憶體使用量資訊
/proc/pid/[s]maps pid為進程號,顯示當前進程所佔用的虛擬位址。
/proc/pid/statm 進程所佔用的記憶體
原文:
http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html