查看进程占用内存

用top命令可以实时查看内存情况。 还有一种方法就是 cat /proc/PID/status 

例如,cat /proc/1353/status 

Name:   XXX
State:  S (sleeping)
Tgid:   1353
Ngid:   0
Pid:    1353
PPid:   1
TracerPid:      0
Uid:    0       0       0       0
Gid:    0       0       0       0
FDSize: 256
Groups:
VmPeak:   779036 kB
VmSize:   764272 kB
VmLck:         0 kB
VmPin:         0 kB
VmHWM:     79356 kB
VmRSS:     74316 kB
VmData:   289652 kB
VmStk:       136 kB
VmExe:     30388 kB
VmLib:     18348 kB
VmPTE:       270 kB
VmSwap:        0 kB
Threads:        29
SigQ:   2/10735
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000000006
SigCgt: 0000000180000000
CapInh: 0000000000000000
CapPrm: 0000003fffffffff
CapEff: 0000003fffffffff
CapBnd: 0000003fffffffff
Seccomp:        0
Cpus_allowed:   3
Cpus_allowed_list:      0-1
voluntary_ctxt_switches:        4020
nonvoluntary_ctxt_switches:     109

这里面保存的是进程的有关信息。就像给进程拍了一张照一样。其中Vm开头的是关于内存相关信息的。

VmRSS //进程当前使用的物理内存的大小
VmData //进程占用的数据段大小
VmSize //进程当前使用的虚拟内存的大小

用这个方法也可以大体上看到在一个进程中,启动一个功能模块占用内存的大小。

猜你喜欢

转载自blog.csdn.net/liubangbo/article/details/82413917