可以把 /proc/PID/maps文件里的各項累加起來,取和即是。
$ (echo ‘a(chǎn)=0’; sed -r ‘s;^([^-]*)-([^- ]*).*;a=$((a+0x\2-0x\1));’ /proc/2451/maps;printf ‘echo Calculated mmap size : $((a》》10)) KB’ ) | sh -
Calculated mmap size : 92484 KB
另一種方法是讀取 /proc/PID/status文件里的VmSize項:
$ echo “size of VM for status: ” $(cat /proc/2451/status | grep “VmSize” | sed -r ‘s;^VmSize:[ \t]*([0-9]*).*;\1;’) “KB”
size of VM for status: 92980 KB
稍微解釋下。
1. sed 命令的 -r選項表示 使用 extended regular regressions.
所以,如果不加 -r參數(shù),上面的命令要改成:
$ echo “size of VM for status: ” $(cat /proc/2451/status | grep “VmSize” | sed ‘s;^VmSize:[ \t]*\([0-9]*\).*;\1;’) “KB”
size of VM for status: 92980 KB
2.第一個命令里的sed 后面跟的參數(shù)要用單引號,不可以用雙引號。
-
Linux
+關(guān)注
關(guān)注
87文章
11304瀏覽量
209503 -
進程
+關(guān)注
關(guān)注
0文章
203瀏覽量
13961 -
虛擬內(nèi)存
+關(guān)注
關(guān)注
0文章
77瀏覽量
8059
發(fā)布評論請先 登錄
相關(guān)推薦
評論