Linux性能測(cè)試 pmap命令詳解
名稱:
pmap - report memory map of a process(查看進(jìn)程的內(nèi)存映像信息)
用法
pmap [ -x | -d ] [ -q ] pids...
pmap -V
選項(xiàng)含義
-x extended Show the extended format. 顯示擴(kuò)展格式
-d device Show the device format. 顯示設(shè)備格式
-q quiet Do not display some header/footer lines. 不顯示頭尾行
-V show version Displays version of program. 顯示版本
擴(kuò)展格式和設(shè)備格式域:
Address: start address of map 映像起始地址
Kbytes: size of map in kilobytes 映像大小
RSS: resident set size in kilobytes 駐留集大小
Dirty: dirty pages (both shared and private) in kilobytes 臟頁(yè)大小
Mode: permissions on map 映像權(quán)限: r=read, w=write, x=execute, s=shared, p=private (copy on write)
Mapping: file backing the map , or '[ anon ]' for allocated memory, or '[ stack ]' for the program stack. 映像支持文件,[anon]為已分配內(nèi)存 [stack]為程序堆棧
Offset: offset into the file 文件偏移
Device: device name (major:minor) 設(shè)備名
舉例:
查看進(jìn)程1的設(shè)備格式
[root@C44 ~]# pmap -d 1 1: init [5] Address Kbytes Mode Offset Device Mapping 00934000 88 r-x-- 0000000000000000 008:00005 ld-2.3.4.so 0094a000 4 r---- 0000000000015000 008:00005 ld-2.3.4.so 0094b000 4 rw--- 0000000000016000 008:00005 ld-2.3.4.so 0094e000 1188 r-x-- 0000000000000000 008:00005 libc-2.3.4.so 00a77000 8 r---- 0000000000129000 008:00005 libc-2.3.4.so 00a79000 8 rw--- 000000000012b000 008:00005 libc-2.3.4.so 00a7b000 8 rw--- 0000000000a7b000 000:00000 [ anon ] 00a85000 52 r-x-- 0000000000000000 008:00005 libsepol.so.1 00a92000 4 rw--- 000000000000c000 008:00005 libsepol.so.1 00a93000 32 rw--- 0000000000a93000 000:00000 [ anon ] 00d9d000 52 r-x-- 0000000000000000 008:00005 libselinux.so.1 00daa000 4 rw--- 000000000000d000 008:00005 libselinux.so.1 08048000 28 r-x-- 0000000000000000 008:00005 init 0804f000 4 rw--- 0000000000007000 008:00005 init 084e1000 132 rw--- 00000000084e1000 000:00000 [ anon ] b7f5d000 8 rw--- 00000000b7f5d000 000:00000 [ anon ] bffee000 72 rw--- 00000000bffee000 000:00000 [ stack ] ffffe000 4 ----- 0000000000000000 000:00000 [ anon ] mapped: 1700K writeable/private: 276K shared: 0K [root@C44 ~]#
最后一行的值
mapped 表示該進(jìn)程映射的虛擬地址空間大小,也就是該進(jìn)程預(yù)先分配的虛擬內(nèi)存大小,即ps出的vsz
writeable/private 表示進(jìn)程所占用的私有地址空間大小,也就是該進(jìn)程實(shí)際使用的內(nèi)存大小
shared 表示進(jìn)程和其他進(jìn)程共享的內(nèi)存大小
查看進(jìn)程1的設(shè)備格式,不顯示頭尾行
[root@C44 ~]# pmap -d -q 1 1: init [5] 00934000 88 r-x-- 0000000000000000 008:00005 ld-2.3.4.so 0094a000 4 r---- 0000000000015000 008:00005 ld-2.3.4.so 0094b000 4 rw--- 0000000000016000 008:00005 ld-2.3.4.so 0094e000 1188 r-x-- 0000000000000000 008:00005 libc-2.3.4.so 00a77000 8 r---- 0000000000129000 008:00005 libc-2.3.4.so 00a79000 8 rw--- 000000000012b000 008:00005 libc-2.3.4.so 00a7b000 8 rw--- 0000000000a7b000 000:00000 [ anon ] 00a85000 52 r-x-- 0000000000000000 008:00005 libsepol.so.1 00a92000 4 rw--- 000000000000c000 008:00005 libsepol.so.1 00a93000 32 rw--- 0000000000a93000 000:00000 [ anon ] 00d9d000 52 r-x-- 0000000000000000 008:00005 libselinux.so.1 00daa000 4 rw--- 000000000000d000 008:00005 libselinux.so.1 08048000 28 r-x-- 0000000000000000 008:00005 init 0804f000 4 rw--- 0000000000007000 008:00005 init 084e1000 132 rw--- 00000000084e1000 000:00000 [ anon ] b7f5d000 8 rw--- 00000000b7f5d000 000:00000 [ anon ] bffee000 72 rw--- 00000000bffee000 000:00000 [ stack ] ffffe000 4 ----- 0000000000000000 000:00000 [ anon ] [root@C44 ~]#
查看進(jìn)程1的擴(kuò)展格式
[root@C44 ~]# pmap -x 1 1: init [5] Address Kbytes RSS Anon Locked Mode Mapping 00934000 88 - - - r-x-- ld-2.3.4.so 0094a000 4 - - - r---- ld-2.3.4.so 0094b000 4 - - - rw--- ld-2.3.4.so 0094e000 1188 - - - r-x-- libc-2.3.4.so 00a77000 8 - - - r---- libc-2.3.4.so 00a79000 8 - - - rw--- libc-2.3.4.so 00a7b000 8 - - - rw--- [ anon ] 00a85000 52 - - - r-x-- libsepol.so.1 00a92000 4 - - - rw--- libsepol.so.1 00a93000 32 - - - rw--- [ anon ] 00d9d000 52 - - - r-x-- libselinux.so.1 00daa000 4 - - - rw--- libselinux.so.1 08048000 28 - - - r-x-- init 0804f000 4 - - - rw--- init 084e1000 132 - - - rw--- [ anon ] b7f5d000 8 - - - rw--- [ anon ] bffee000 72 - - - rw--- [ stack ] ffffe000 4 - - - ----- [ anon ] -------- ------- ------- ------- ------- total kB 1700 - - - [root@C44 ~]#
循環(huán)顯示進(jìn)程3066的設(shè)備格式的最后1行,間隔2秒,
[root@C44 ~]# while true; do pmap -d 3066 | tail -1; sleep 2; done mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K mapped: 5412K writeable/private: 2028K shared: 0K
總結(jié)
以上所述是小編給大家介紹的Linux性能測(cè)試 pmap命令詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Linux基于環(huán)形隊(duì)列的生產(chǎn)消費(fèi)者模型詳解
這篇文章主要介紹了Linux基于環(huán)形隊(duì)列的生產(chǎn)消費(fèi)者模型方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
Linux 監(jiān)控文件被什么進(jìn)程修改(詳解)
下面小編就為大家?guī)?lái)一篇Linux 監(jiān)控文件被什么進(jìn)程修改(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12
linux創(chuàng)建線程之pthread_create的具體使用
這篇文章主要介紹了linux創(chuàng)建線程之pthread_create的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
IO復(fù)用之select poll epoll的總結(jié)(推薦)
下面小編就為大家?guī)?lái)一篇IO復(fù)用之select poll epoll的總結(jié)(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01
Linux服務(wù)器離線安裝 nginx的詳細(xì)步驟
這篇文章主要介紹了Linux服務(wù)器離線安裝 nginx的詳細(xì)步驟,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
在Linux中列出Systemd下所有正在運(yùn)行的服務(wù)的方法指南
Systemd是Linux的系統(tǒng)和服務(wù)管理器; init進(jìn)程的替代品,與SysV 和LSB init腳本兼容,systemctl命令是管理systemd的主要工具,在這篇文章中,我們將演示如何 Linux中列出systemd下所有正在運(yùn)行的服務(wù),感興趣的同學(xué)可以借鑒閱讀2023-06-06

