LINUX进程ps -ef和ps -aux的区别及格式详解

Linux下显示系统进程的命令ps,最经常使用的有ps -ef 和ps aux。这两个到底有什么区别呢?二者没太大差异,讨论这个问题,要追溯到Unix系统中的两种风格,System V风格和BSD 风格,ps aux最初用到Unix Style中,而ps -ef被用在System V Style中,二者输出略有不一样。如今的大部分Linux系统都是能够同时使用这两种方式的。网络

ps -ef 是用标准的格式显示进程的、其格式以下多线程

其中各列的内容意思以下
UID    //用户ID、但输出的是用户名 
PID    //进程的ID 
PPID    //父进程ID 
C      //进程占用CPU的百分比 
STIME  //进程启动到如今的时间 
TTY    //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络链接主机进程。 
CMD    //命令的名称和参数spa

ps aux 是用BSD的格式来显示、其格式以下线程

同ps -ef 不一样的有列有
USER      //用户名 
%CPU      //进程占用的CPU百分比 
%MEM      //占用内存的百分比 
VSZ      //该进程使用的虚拟內存量(KB) 
RSS      //该进程占用的固定內存量(KB)(驻留中页的数量) 
STAT      //进程的状态 
START    //该进程被触发启动时间 
TIME      //该进程实际使用CPU运行的时间队列

其中STAT状态位常见的状态字符有
D      //没法中断的休眠状态(一般 IO 的进程); 
R      //正在运行可中在队列中可过行的; 
S      //处于休眠状态; 
T      //中止或被追踪; 
W      //进入内存交换 (从内核2.6开始无效); 
X      //死掉的进程 (基本不多见); 
Z      //僵尸进程; 
<      //优先级高的进程 
N      //优先级较低的进程 
L      //有些页被锁进内存; 
s      //进程的领导者(在它之下有子进程); 
l      //多线程,克隆线程(使用 CLONE_THREAD, 相似 NPTL pthreads); 
+      //位于后台的进程组;进程

相关文章
相关标签/搜索