檢視記憶體使用情況
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):
第二行(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