linux之pmap命令
pmap
ldd
stace
要熟悉的幾個調(diào)試命令!這次先看下pmap
觀察到系統(tǒng)中的指定進程的地址空間分布情況顯示一個目標文件或者鏈接庫文件中的目標文件的各個段的大小。該文件從/proc/?/maps中獲得數(shù)據(jù)。
命令格式:
pmap?
范例:
[root@localhost security]# pmap -d 4993
4993: -bash
Address Kbytes Mode Offset Device Mapping
08047000 596 r-x-- 0000000000000000 003:00006 bash bash的代碼段
080dc000 28 rwx-- 0000000000094000 003:00006 bash bash的數(shù)據(jù)段
080e3000 280 rwx-- 00000000080e3000 000:00000 [ anon ] bash的堆
4d575000 84 r-x-- 0000000000000000 003:00006 ld-2.3.4.so 共享庫的代碼段
4d58a000 4 r-x-- 0000000000015000 003:00006 ld-2.3.4.so 共享庫的數(shù)據(jù)段
4d58b000 4 rwx-- 0000000000016000 003:00006 ld-2.3.4.so 共享庫的堆
4d58e000 1164 r-x-- 0000000000000000 003:00006 libc-2.3.4.so
4d6b1000 4 r-x-- 0000000000123000 003:00006 libc-2.3.4.so
4d6b2000 12 rwx-- 0000000000124000 003:00006 libc-2.3.4.so
4d6b5000 8 rwx-- 000000004d6b5000 000:00000 [ anon ] 匿名物理內(nèi)存,
4d6de000 8 r-x-- 0000000000000000 003:00006 libdl-2.3.4.so
4d6e0000 8 rwx-- 0000000000001000 003:00006 libdl-2.3.4.so
4d807000 12 r-x-- 0000000000000000 003:00006 libtermcap.so.2.0.8
4d80a000 4 rwx-- 0000000000002000 003:00006 libtermcap.so.2.0.8
b7bc2000 176 r-x-- 0000000000000000 003:00006 GB18030.so
b7bee000 8 rwx-- 000000000002b000 003:00006 GB18030.so
b7bf0000 24 r-xs- 0000000000000000 003:00006 gconv-modules.cache
b7bf6000 1060 r-x-- 0000000002197000 003:00006 locale-archive
b7cff000 2048 r-x-- 0000000000000000 003:00006 locale-archive
b7eff000 36 r-x-- 0000000000000000 003:00006 libnss_files-2.3.4.so
b7f08000 8 rwx-- 0000000000008000 003:00006 libnss_files-2.3.4.so
b7f0a000 8 rwx-- 00000000b7f0a000 000:00000 [ anon ]
b7f20000 8 rwx-- 00000000b7f20000 000:00000 [ anon ]
bff0d000 84 rw--- 00000000bff0d000 000:00000 [ stack ]
ffffe000 4 ----- 0000000000000000 000:00000 [ anon ]
mapped: 5680K writeable/private: 460K shared: 24K
每列的含義如下:
參數(shù) 解釋
Address:00378000-0038d000 進程所占的地址空間
Kbytes 該虛擬段的大小
RSS 設(shè)備號(主設(shè)備:次設(shè)備)
Anon 設(shè)備的節(jié)點號,0表示沒有節(jié)點與內(nèi)存相對應(yīng)
Locked 是否允許swapped
Mode 權(quán)限:r=read, w=write, x=execute, s=shared, p=private(copy on write)
Mapping: bash 對應(yīng)的映像文件名
[root@localhost security]# pmap -x 4993
4993: -bash
Address Kbytes RSS Anon Locked Mode Mapping
08047000 596 - - - r-x-- bash
080dc000 28 - - - rwx-- bash
080e3000 280 - - - rwx-- [ anon ]
4d575000 84 - - - r-x-- ld-2.3.4.so
4d58a000 4 - - - r-x-- ld-2.3.4.so
4d58b000 4 - - - rwx-- ld-2.3.4.so
4d58e000 1164 - - - r-x-- libc-2.3.4.so
4d6b1000 4 - - - r-x-- libc-2.3.4.so
4d6b2000 12 - - - rwx-- libc-2.3.4.so
4d6b5000 8 - - - rwx-- [ anon ]
4d6de000 8 - - - r-x-- libdl-2.3.4.so
4d6e0000 8 - - - rwx-- libdl-2.3.4.so
4d807000 12 - - - r-x-- libtermcap.so.2.0.8
4d80a000 4 - - - rwx-- libtermcap.so.2.0.8
b7bc2000 176 - - - r-x-- GB18030.so
b7bee000 8 - - - rwx-- GB18030.so
b7bf0000 24 - - - r-xs- gconv-modules.cache
b7bf6000 1060 - - - r-x-- locale-archive
b7cff000 2048 - - - r-x-- locale-archive
b7eff000 36 - - - r-x-- libnss_files-2.3.4.so
b7f08000 8 - - - rwx-- libnss_files-2.3.4.so
b7f0a000 8 - - - rwx-- [ anon ]
b7f20000 8 - - - rwx-- [ anon ]
bff0d000 84 - - - rw--- [ stack ]
ffffe000 4 - - - ----- [ anon ]
-------- ------- ------- ------- -------
total kB 5680 - - -
[root@localhost security]#
---------------------------------------------------------------
補充:
貌似ps av + 進程號 也可以看某進程的內(nèi)存
如果使用top的話,本身top也會占用大量的資源,在系統(tǒng)負責比較大的情況下是不提倡使用top的。 可以使用ps命令來查看當前系統(tǒng)的進程使用情況: ps av
PID TTY STAT TIME MAJFL TRS DRS RSS %MEM COMMAND
4142 tty4 Ss+ 0:00 0 10 1637 508 0.0 /sbin/getty 38400 tty4
4143 tty5 Ss+ 0:00 0 10 1637 508 0.0 /sbin/getty 38400 tty5
TRS代表程序所擁有的可執(zhí)行虛擬內(nèi)存的大小 DRS代表程序數(shù)據(jù)段和用戶態(tài)的棧的大小 RSS代邊當前任務(wù)駐留物理地址空間的大小
總結(jié)
以上是生活随笔為你收集整理的linux之pmap命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux(Redhat5.5)配置时间
- 下一篇: ORACLE10回收站-Recycleb