top -b -n 1 |grep opera|awk ''
cpu:0.0% mem:26.4%
其中:rss-------------程序實際占用物理記憶體大小;
vsz--------------任務虛擬位址空間的大小
[root@localhost ~]# cat /proc/self/statm
654 57 44 0 0 334 0
以下是我自己的理解:
從上面可以看出vmrss才是我們最關心的記憶體大小,即
正在使用的物理記憶體的大小;
而vmsize是程序所擁有的虛擬空間的大小;
「當程序開始使用 已經申請的但還沒有用的記憶體時,
vmrss的值開始增大,但是vmsize保持不變。」
我們之所以看到許多記憶體的值的大小超過了記憶體的總的大小
是因為這裡顯示的都是虛擬記憶體的大小,而不是實際的占用的大小;
這是其它的地方的解釋
from cat /proc/4743/statm
611450
185001
88318 0 593431 0
1. size :- total program size (611450 x 4096/1024 = 2445800kb = 2388m)
2. resident :- resident set size (185001 x 4096/1024 = 740004kb = 722m)
3. share :- shared pages (883 x 4096 = 3532)
4. trs :- text (code) (18 x 4096/1024 = 72kb = vmexe )
5. drs :- data/stack
6. lrs :- library (593431 x 4096/1024 = 2373724kb = vmdata +vmstk)
7. dt :- dirty pages
從這裡可以看出第一項是程序的可執行的大小,x4就等於vmsize
而第二項的值x4就等於vmrss
linux 檢視程序占用記憶體
top b n 1 grep opera awk cpu 0.0 mem 26.4 其中 rss 程序實際占用物理記憶體大小 vsz 任務虛擬位址空間的大小 root localhost cat proc self statm 654 57 44 0 0 334 0 以下是我自己的理解 從上面可以看...
linux 檢視程序占用記憶體
top b n 1 grep opera awk cpu 0.0 mem 26.4 其中 rss 程序實際占用物理記憶體大小 vsz 任務虛擬位址空間的大小 root localhost cat proc self statm 654 57 44 0 0 334 0 以下是我自己的理解 從上面可以看...
linux 檢視程序占用記憶體
top b n 1 grep opera awk cpu 0.0 mem 26.4 其中 rss 程序實際占用物理記憶體大小 vsz 任務虛擬位址空間的大小 root localhost cat proc self statm 654 57 44 0 0 334 0 以下是我自己的理解 從上面可以看...