键入命令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   


谢谢和问候!

#1 楼

$ 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 =多-字符进程状态

START =进程的开始时间或日期

TIME =累计CPU时间

COMMAND =命令及其所有参数

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

评论


您可以添加例如VSZ和RSS在KiB中输出,而不是我最初想到的字节...

–克里斯蒂安·达文(ChristianDavén)
2012年10月22日在8:57

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

–陈谦
2015年6月11日15:53

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

–胸骨
15年7月21日在1:42



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

–胸骨
15年7月21日在1:47

#2 楼

这可能会有所帮助:

进程状态代码(STAT):



R正在运行或可运行(在运行队列中)

D不间断睡眠(通常是IO)

S可间断睡眠(等待事件完成)

Z失效/僵尸,已终止但未由其父获得

T由于作业控制信号而停止,或者是由于被跟踪


一些额外的修饰符:



<高优先级(对其他用户不好)

N低优先级(对其他用户很好)

L将页面锁定在内存中(实际时间和自定义IO)

s是会话领导者

l是多线程的(使用CLONE_THREAD,就像NPTL pthreads一样)

+在前台进程组中


#3 楼

在Linux中,命令:

ps -aux


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

ps -auroot


哪个显示所有根进程,或者

ps -auel


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