Linux性能测试 pmap命令详解
名称:
pmap-reportmemorymapofaprocess(查看进程的内存映像信息)
用法
pmap[-x|-d][-q]pids... pmap-V
选项含义
-xextendedShowtheextendedformat.显示扩展格式 -ddeviceShowthedeviceformat.显示设备格式 -qquietDonotdisplaysomeheader/footerlines.不显示头尾行 -VshowversionDisplaysversionofprogram.显示版本
扩展格式和设备格式域:
Address:startaddressofmap映像起始地址 Kbytes:sizeofmapinkilobytes映像大小 RSS:residentsetsizeinkilobytes驻留集大小 Dirty:dirtypages(bothsharedandprivate)inkilobytes脏页大小 Mode:permissionsonmap映像权限:r=read,w=write,x=execute,s=shared,p=private(copyonwrite) Mapping:filebackingthemap,or'[anon]'forallocatedmemory,or'[stack]'fortheprogramstack.映像支持文件,[anon]为已分配内存[stack]为程序堆栈 Offset:offsetintothefile文件偏移 Device:devicename(major:minor)设备名
举例:
查看进程1的设备格式
[root@C44~]#pmap-d1 1:init[5] AddressKbytesModeOffsetDeviceMapping 0093400088r-x--0000000000000000008:00005ld-2.3.4.so 0094a0004r----0000000000015000008:00005ld-2.3.4.so 0094b0004rw---0000000000016000008:00005ld-2.3.4.so 0094e0001188r-x--0000000000000000008:00005libc-2.3.4.so 00a770008r----0000000000129000008:00005libc-2.3.4.so 00a790008rw---000000000012b000008:00005libc-2.3.4.so 00a7b0008rw---0000000000a7b000000:00000[anon] 00a8500052r-x--0000000000000000008:00005libsepol.so.1 00a920004rw---000000000000c000008:00005libsepol.so.1 00a9300032rw---0000000000a93000000:00000[anon] 00d9d00052r-x--0000000000000000008:00005libselinux.so.1 00daa0004rw---000000000000d000008:00005libselinux.so.1 0804800028r-x--0000000000000000008:00005init 0804f0004rw---0000000000007000008:00005init 084e1000132rw---00000000084e1000000:00000[anon] b7f5d0008rw---00000000b7f5d000000:00000[anon] bffee00072rw---00000000bffee000000:00000[stack] ffffe0004-----0000000000000000000:00000[anon] mapped:1700Kwriteable/private:276Kshared:0K [root@C44~]#
最后一行的值
mapped表示该进程映射的虚拟地址空间大小,也就是该进程预先分配的虚拟内存大小,即ps出的vsz
writeable/private 表示进程所占用的私有地址空间大小,也就是该进程实际使用的内存大小
shared表示进程和其他进程共享的内存大小
查看进程1的设备格式,不显示头尾行
[root@C44~]#pmap-d-q1 1:init[5] 0093400088r-x--0000000000000000008:00005ld-2.3.4.so 0094a0004r----0000000000015000008:00005ld-2.3.4.so 0094b0004rw---0000000000016000008:00005ld-2.3.4.so 0094e0001188r-x--0000000000000000008:00005libc-2.3.4.so 00a770008r----0000000000129000008:00005libc-2.3.4.so 00a790008rw---000000000012b000008:00005libc-2.3.4.so 00a7b0008rw---0000000000a7b000000:00000[anon] 00a8500052r-x--0000000000000000008:00005libsepol.so.1 00a920004rw---000000000000c000008:00005libsepol.so.1 00a9300032rw---0000000000a93000000:00000[anon] 00d9d00052r-x--0000000000000000008:00005libselinux.so.1 00daa0004rw---000000000000d000008:00005libselinux.so.1 0804800028r-x--0000000000000000008:00005init 0804f0004rw---0000000000007000008:00005init 084e1000132rw---00000000084e1000000:00000[anon] b7f5d0008rw---00000000b7f5d000000:00000[anon] bffee00072rw---00000000bffee000000:00000[stack] ffffe0004-----0000000000000000000:00000[anon] [root@C44~]#
查看进程1的扩展格式
[root@C44~]#pmap-x1 1:init[5] AddressKbytesRSSAnonLockedModeMapping 0093400088---r-x--ld-2.3.4.so 0094a0004---r----ld-2.3.4.so 0094b0004---rw---ld-2.3.4.so 0094e0001188---r-x--libc-2.3.4.so 00a770008---r----libc-2.3.4.so 00a790008---rw---libc-2.3.4.so 00a7b0008---rw---[anon] 00a8500052---r-x--libsepol.so.1 00a920004---rw---libsepol.so.1 00a9300032---rw---[anon] 00d9d00052---r-x--libselinux.so.1 00daa0004---rw---libselinux.so.1 0804800028---r-x--init 0804f0004---rw---init 084e1000132---rw---[anon] b7f5d0008---rw---[anon] bffee00072---rw---[stack] ffffe0004--------[anon] ------------------------------------ totalkB1700--- [root@C44~]#
循环显示进程3066的设备格式的最后1行,间隔2秒,
[root@C44~]#whiletrue;dopmap-d3066|tail-1;sleep2;done mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K mapped:5412Kwriteable/private:2028Kshared:0K
总结
以上所述是小编给大家介绍的Linux性能测试pmap命令详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!