ps aux输出含义


226

键入ps aux时,输出的每一列是什么意思?例如

$ ps aux  
timothy  29217  0.0  0.0 11916 4560 pts/21   S+   08:15   0:00 pine  
root     29505  0.0  0.0 38196 2728 ?        Ss   Mar07   0:00 sshd: can [priv]   
can      29529  0.0  0.0 38332 1904 ?        S    Mar07   0:00 sshd: can@notty   

谢谢并恭祝安康!

Answers:


275
$ ps aux  
USER       PID  %CPU %MEM  VSZ RSS     TTY   STAT START   TIME COMMAND
timothy  29217  0.0  0.0 11916 4560 pts/21   S+   08:15   0:00 pine  
root     29505  0.0  0.0 38196 2728 ?        Ss   Mar07   0:00 sshd: can [priv]   
can      29529  0.0  0.0 38332 1904 ?        S    Mar07   0:00 sshd: can@notty  
  • USER =拥有流程的用户
  • PID =流程的流程ID
  • %CPU =它是所用的CPU时间除以进程已运行的时间。
  • %MEM =进程的常驻集大小与计算机上物理内存的比率
  • VSZ =整个进程的虚拟内存使用量(以KiB为单位)
  • RSS =居民集大小,任务已使用的未交换物理内存(在KiB中)
  • TTY =控制tty(终端)
  • STAT =多字符处理状态
  • 开始 =流程的开始时间或日期
  • TIME =累积CPU时间
  • COMMAND =命令及其所有参数

有关更多信息,请参见ps手册页


26
您可以添加例如VSZ和RSS以KiB输出,而不是我最初想到的字节...
ChristianDavén2012年

您能否多说一些VSZ和RSS之间的区别?谢谢。
钱陈

3
RSS是此过程使用的物理内存量。请注意,这包括与其他进程共享的任何内存(例如,如果其他进程是从同一可执行文件或库中加载的),则可能会过度报告内存使用情况。VSZ是虚拟内存空间的大小-请勿误以为它不是所有“已用”内存。它包括使用中的内存(RSS),已交换的内存,但是通常大多数只是实际上没有分配任何实际内存的其他寻址空间-为了使用该空间,需要为之分配更多的内存。过程。
thomasrutter 2015年

2
我试图想一个类比。假设您正在吃晚餐,所以与他人共享有限的食物。RSS是您盘子上当前食物的量。VSZ是您盘子的大小。并非您所有的食物都是食物,并且与您声称的食物量无关。
thomasrutter 2015年

41

另外,这可能会有所帮助:

流程状态代码:

  • R 正在运行或可运行(在运行队列中)
  • D 不间断的睡眠(通常是IO)
  • S 睡眠中断(等待事件完成)
  • Z 已解散/僵尸,已终止但未被其父级收割
  • T 通过作业控制信号或由于被跟踪而停止

一些额外的修饰符:

  • < 高优先级(对其他用户不利)
  • N 低优先级(对其他用户很好)
  • L 将页面锁定在内存中(用于实时和自定义IO)
  • s 是会议负责人
  • l 是多线程的(使用CLONE_THREAD,就像NPTL pthreads一样)
  • + 在前台进程组中

24

在Linux中,命令:

ps -aux

手段显示所有用户的所有过程。您可能想知道x是什么意思?x是一个说明符,表示“任何用户”。因此,您可以输入以下内容:

ps -auroot

显示所有根进程,或

ps -auel

显示用户el的所有进程。“ man ps”页面中的技术错误是:“ ps -aux打印名为'x'的用户拥有的所有进程,并打印-a选项将选择的所有进程。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.