Linux ps命令的状态说明

  D Uninterruptible sleep (usually IO)

  R Running or runnable (on run queue)

  S Interruptible sleep (waiting for an event to complete)

  T Stopped, either by a job control signal or because it is being traced.

  W paging (not valid since the 2.6.xx kernel)

  X dead (should never be seen)

  Z Defunct (”zombie”) process, terminated but not reaped by its parent.

  小写字母及其它符号:

  < high-priority (not nice to other users)

  N low-priority (nice to other users)

  L has pages locked into memory (for real-time and custom IO)

  s is a session leader

  l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

  + is in the foreground process group

  Linux上进程有5种状态:

  1. 运行(正在运行或在运行队列中等待)

  2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)

  3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)

  4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)

  5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)

  ps工具标识进程的5种状态码:

  D 不可中断 uninterruptible sleep (usually IO)

  R 运行 runnable (on run queue)

  S 中断 sleeping

  T 停止 traced or stopped

  Z 僵死 a defunct (”zombie”) process

  注: 其它状态还包括W(无驻留页), <(高优先级进程), N(低优先级进程), L(内存锁页).

  使用ps格式输出来查看进程状态:

  ps -eo user,stat..,cmd

  user 用户名

  uid 用户号

  pid 进程号

  ppid 父进程号

  size 内存大小, Kbytes字节.

  vsize 总虚拟内存大小, bytes字节(包含code+data+stack)

  share 总共享页数

  nice 进程优先级(缺省为0, 最大为-20)

  priority(pri) 内核调度优先级

  pmem 进程分享的物理内存数的百分比

  trs 程序执行代码驻留大小

  rss 进程使用的总物理内存数, Kbytes字节

  time 进程执行起到现在总的CPU暂用时间

  stat 进程状态

  cmd(args) 执行命令的简单格式

  例子:

  查看当前系统进程的uid,pid,stat,pri, 以uid号排序.

  ps -eo pid,stat,pri,uid –sort uid

  查看当前系统进程的user,pid,stat,rss,args, 以rss排序.

  ps -eo user,pid,stat,rss,args –sort rss

  参考:

  1. Linux Kernel Development Second Edition -

  Ch3-1 Process Descriptor and the Task Structure

  2. Linux man page for ps.

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/27391.html