linux 檢視程序占用記憶體

2021-06-08 04:30:42 字數 1159 閱讀 2139

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 以下是我自己的理解 從上面可以看...