/proc/pid下的相应信息说明






一、/proc/pid/statm


pid/statm包含了在此进程中所有CPU活跃的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。


 


/proc/1 # cat statm


550 70 62 451 0 97 0


 


输出解释


CPU 以及CPU0。。。的每行的每个参数意思(以第一行为例)为:


参数 解释 /proc/1/status


Size (pages)= 550  任务虚拟地址空间的大小 VmSize/4


Resident(pages)= 70  应用程序正在使用的物理内存的大小 VmRSS/4


Shared(pages)= 62  共享页数


Trs(pages)= 451  程序所拥有的可执行虚拟内存的大小 VmExe/4


Lrs(pages)= 0  被映像到任务的虚拟内存空间的库的大小 VmLib/4


Drs(pages)= 97  程序数据段和用户态的栈的大小 (VmData+ VmStk )4


dt(pages) 0


 


二、/proc/pid/stat


pid/stat包含了进程所有CPU活跃的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。


/proc/1 # cat stat


1 (linuxrc) S 0 0 0 0 -1 8388864 50 633 20 4 2 357 72 342 16 0 1 0 22 2252800 70 4294967295 32768 1879936 3199270704 3199269552 1113432 0 0 0 674311 3221479524 0 0 0 0 0 0


 


每个参数意思为:


参数 解释


pid=1 进程(包括轻量级进程,即线程)号


comm= linuxrc 应用程序或命令的名字


task_state=S 任务的状态,R:runnign, S:sleeping (TASK_INTERRUPTIBLE), D:disk sleep (TASK_UNINTERRUPTIBLE), T: stopped, T:tracing stop,Z:zombie, X:dead


ppid=0 父进程ID


pgid=0 线程组号


sid=0 c该任务所在的会话组ID


tty_nr=0(pts/3) 该任务的tty终端的设备号,INT(0/256)=主设备号,(0-主设备号)=次设备号


tty_pgrp=-1 终端的进程组号,当前运行在该任务所在终端的前台任务(包括shell 应用程序)的PID。


task->flags=8388864进程标志位,查看该任务的特性


min_flt=50该任务不需要从硬盘拷数据而发生的缺页(次缺页)的次数


cmin_flt=633 累计的该任务的所有的waited-for进程曾经发生的次缺页的次数目


maj_flt=20该任务需要从硬盘拷数据而发生的缺页(主缺页)的次数


cmaj_flt=4 累计的该任务的所有的waited-for进程曾经发生的主缺页的次数目


utime=2 该任务在用户态运行的时间,单位为jiffies


stime=357 该任务在核心态运行的时间,单位为jiffies


cutime=72 累计的该任务的所有的waited-for进程曾经在用户态运行的时间,单位为jiffies


cstime=342 累计的该任务的所有的waited-for进程曾经在核心态运行的时间,单位为jiffies


priority=16 任务的动态优先级


nice=0 任务的静态优先级


num_threads=1 该任务所在的线程组里线程的个数


it_real_value=0 由于计时间隔导致的下一个 SIGALRM 发送进程的时延,以 jiffy 为单位.


start_time=22 该任务启动的时间,单位为jiffies


vsize=2252800(bytes) 该任务的虚拟地址空间大小


rss=70(page) 该任务当前驻留物理地址空间的大小


Number of pages the process has in real memory,minu 3 for administrative purpose.


这些页可能用于代码,数据和栈。


rlim=4294967295=0xFFFFFFFF(bytes) 该任务能驻留物理地址空间的最大值


start_code=32768=0x8000  该任务在虚拟地址空间的代码段的起始地址(由连接器决定)


end_code=1879936该任务在虚拟地址空间的代码段的结束地址


start_stack=3199270704=0Xbeb0ff30该任务在虚拟地址空间的栈的开始地址


kstkesp=3199269552  sp(32 位堆栈指针) 的当前值, 与在进程的内核堆栈页得到的一致.


kstkeip=1113432 =0X10FD58 指向将要执行的指令的指针, PC(32 位指令指针)的当前值.


pendingsig=0 待处理信号的位图,记录发送给进程的普通信号


block_sig=0 阻塞信号的位图


sigign=0 忽略的信号的位图


sigcatch=674311被俘获的信号的位图


wchan=3221479524  如果该进程是睡眠状态,该值给出调度的调用点


nswap=0 被swapped的页数


cnswap=0 所有子进程被swapped的页数的和


exit_signal=0  该进程结束时,向父进程所发送的信号


task_cpu(task)=0 运行在哪个CPU上


task_rt_priority=0 实时进程的相对优先级别


task_policy=0 进程的调度策略,0=非实时进程,1=FIFO实时进程;2=RR实时进程 


 


三、/proc/pid/status


包含了所有CPU活跃的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。


 


/proc/286 # cat status


Name:   mmtest


State:  R (running)


SleepAVG:       0%


Tgid:   286


Pid:    286


PPid:   243


TracerPid:      0


Uid:    0       0       0       0


Gid:    0       0       0       0


FDSize: 32


Groups:


VmPeak:     1464 kB


VmSize:     1464 kB


VmLck:         0 kB


VmHWM:       344 kB


VmRSS:       344 kB


VmData:       20 kB


VmStk:        84 kB


VmExe:         4 kB


VmLib:      1300 kB


VmPTE:         6 kB


Threads:        1


SigQ:   0/256


SigPnd: 0000000000000000


ShdPnd: 0000000000000000


SigBlk: 0000000000000000


SigIgn: 0000000000000000


SigCgt: 0000000000000000


CapInh: 0000000000000000


CapPrm: 00000000fffffeff


CapEff: 00000000fffffeff


 


输出解释


参数 解释


Name 应用程序或命令的名字


State 任务的状态,运行/睡眠/僵死/


SleepAVG 任务的平均等待时间(以nanosecond为单位),交互式任务因为休眠次数多、时间长,它们的 sleep_avg 也会相应地更大一些,所以计算出来的优先级也会相应高一些。


Tgid=286 线程组号


Pid=286 任务ID


Ppid=243 父进程ID


TracerPid=0 接收跟踪该进程信息的进程的ID号


Uid Uid euid suid fsuid


Gid Gid egid sgid fsgid


FDSize=32 文件描述符的最大个数,最多能打开的文件句柄的个数file->fds


Groups:


VmPeak: 60184 kB /*进程地址空间的大小*/
VmHWM: 18020 kB /*文件内存映射和匿名内存映射的大小*/


VmSize(KB)=1499136 任务虚拟地址空间的大小 (total_vm-reserved_vm),其中total_vm为进程的地址空间的大小,reserved_vm:进程在预留或特殊的内存间的物理页


VmLck(KB)=0 任务已经锁住的物理内存的大小。锁住的物理内存不能交换到硬盘 (locked_vm)


VmRSS(KB)= 344 kB 应用程序正在使用的物理内存的大小,就是用ps命令的参数rss的值 (rss)


VmData(KB)=20KB 程序数据段的大小(所占虚拟内存的大小),存放初始化了的数据; (total_vm-shared_vm-stack_vm)


VmStk(KB)=84KB 任务在用户态的栈的大小 (stack_vm)


VmExe(KB)=4KB 程序所拥有的可执行虚拟内存的大小,代码段,不包括任务使用的库 (end_code-start_code)


VmLib(KB)=1300KB 被映像到任务的虚拟内存空间的库的大小 (exec_lib)


VmPTE=6KB 该进程的所有页表的大小,单位:kb


Threads=1 共享使用该信号描述符的任务的个数,在POSIX多线程序应用程序中,线程组中的所有线程使用同一个信号描述符。


SigQ 待处理信号的个数


SigPnd 屏蔽位,存储了该线程的待处理信号


ShdPnd 屏蔽位,存储了该线程组的待处理信号


SigBlk 存放被阻塞的信号


SigIgn 存放被忽略的信号


SigCgt 存放被俘获到的信号


CapInh Inheritable,能被当前进程执行的程序的继承的能力


CapPrm Permitted,进程能够使用的能力,可以包含CapEff中没有的能力,这些能力是被进程自己临时放弃的,CapEff是CapPrm的一个子集,进程放弃没有必要的能力有利于提高安全性


CapEff Effective,进程的有效能力


 


四、/proc/loadavg


该文件中的所有值都是从系统启动开始累计到当前时刻。该文件只给出了所有CPU的集合信息,不能该出每个CPU的信息。


 


/proc # cat loadavg


1.0   1.00 0.93 2/19 301


 


 


每个值的含义为:


参数 解释


lavg_1 (1.0) 1-分钟平均负载


lavg_5 (1.00) 5-分钟平均负载


lavg_15(0.93) 15-分钟平均负载


nr_running (2) 在采样时刻,运行队列的任务的数目,与/proc/stat的procs_running表示相同意思


nr_threads (19) 在采样时刻,系统中活跃的任务的个数(不包括运行已经结束的任务)


last_pid(301) 最大的pid值,包括轻量级进程,即线程。


假设当前有两个CPU,则每个CPU的当前任务数为4.61/2=2.31


 


五、/proc/286/smaps


该文件反映了该进程的相应线性区域的大小


/proc/286 # cat smaps


00008000-00009000 r-xp 00000000 00:0c 1695459    /memtest/mmtest


Size:                 4 kB


Rss:                  4 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        4 kB


Private_Dirty:        0 kB


00010000-00011000 rw-p 00000000 00:0c 1695459    /memtest/mmtest


Size:                 4 kB


Rss:                  4 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        4 kB


00011000-00012000 rwxp 00011000 00:00 0          [heap]


Size:                 4 kB


Rss:                  0 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        0 kB


40000000-40019000 r-xp 00000000 00:0c 2413396    /lib/ld-2.3.2.so


Size:               100 kB


Rss:                 96 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:       96 kB


Private_Dirty:        0 kB


40019000-4001b000 rw-p 40019000 00:00 0


Size:                 8 kB


Rss:                  8 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        8 kB


40021000-40022000 rw-p 00019000 00:0c 2413396    /lib/ld-2.3.2.so


Size:                 4 kB


Rss:                  4 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        4 kB


40022000-4014e000 r-xp 00000000 00:0c 2413367    /lib/libc-2.3.2.so


Size:              1200 kB


Rss:                200 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:      200 kB


Private_Dirty:        0 kB


4014e000-40152000 ---p 0012c000 00:0c 2413367    /lib/libc-2.3.2.so


Size:                16 kB


Rss:                  0 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        0 kB


40152000-4015a000 rw-p 00128000 00:0c 2413367    /lib/libc-2.3.2.so


Size:                32 kB


Rss:                 16 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:       16 kB


4015a000-4015c000 rw-p 4015a000 00:00 0


Size:                 8 kB


Rss:                  8 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        8 kB


be8f1000-be906000 rwxp be8f1000 00:00 0          [stack]


Size:                84 kB


Rss:                  4 kB


Shared_Clean:         0 kB


Shared_Dirty:         0 kB


Private_Clean:        0 kB


Private_Dirty:        4 kB


 


解释说明:


每行数据格式如下:


(内存区域)开始-结束 访问权限  偏移 主设备号:次设备号 i节点  文件。


be8f1000-be906000 rwxp be8f1000 00:00 0          [stack]


Size:相应虚拟地址空间的大小


RSS: 正在使用的物理内存的大小


Shared_Clean:  共享区域的未使用页数


Shared_Dirty:   共享区域已经使用的页数


Private_Clean:   私有区域未使用的页数


Private_Dirty:  私有区域已经使用的页数


 


六、/proc/pid/maps


该文件反映了进程占用的内存区域


/proc/286 # cat maps


00008000-00009000 r-xp 00000000 00:0c 1695459    /memtest/mmtest


00010000-00011000 rw-p 00000000 00:0c 1695459    /memtest/mmtest


00011000-00012000 rwxp 00011000 00:00 0          [heap]


40000000-40019000 r-xp 00000000 00:0c 2413396    /lib/ld-2.3.2.so


40019000-4001b000 rw-p 40019000 00:00 0


40021000-40022000 rw-p 00019000 00:0c 2413396    /lib/ld-2.3.2.so


40022000-4014e000 r-xp 00000000 00:0c 2413367    /lib/libc-2.3.2.so


4014e000-40152000 ---p 0012c000 00:0c 2413367    /lib/libc-2.3.2.so


40152000-4015a000 rw-p 00128000 00:0c 2413367    /lib/libc-2.3.2.so


4015a000-4015c000 rw-p 4015a000 00:00 0


be8f1000-be906000 rwxp be8f1000 00:00 0          [stack]


每行数据格式如下:


(内存区域)开始-结束 访问权限  偏移 主设备号:次设备号 i节点  文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值