一、ps -ef/-l首行解释
ps -ef/l用来查看系统运行的所有进程。
ps -ef:
UID:启动这些进程的用户。
PID:进程的进程ID。
PPID:父进程的进程号(如果该进程是由另一个进程启动的)。
C:进程生命周期中的CPU利用率。
STIME:进程启动时的系统时间。
TTY:进程启动时的终端设备。
TIME:运行进程需要的累计CPU时间。
CMD:启动的程序名称。
ps -l:
F:内核分配给进程的系统标记。
S:进程的状态(O代表正在运行; S代表在休眠; R代表可运行,正等待运行; Z代表僵
化,进程已结束但父进程已不存在; T代表停止)。
PRI:进程的优先级(越大的数字代表越低的优先级)。
NI:谦让度值用来参与决定优先级。
ADDR:进程的内存地址。
SZ:假如进程被换出,所需交换空间的大致大小。
WCHAN:进程休眠的内核函数的地址。
二、ps的缺点
ps命令虽然在收集运行在系统上的进程信息时非常有用,但也有不足之处:它只能显示
某个特定时间点的信息。如果想观察那些频繁换进换出的内存的进程趋势,用ps命令就不方
便了。
三、top命令
top命令可以实时显示进程信息。输出的第一部分显示的是系统的概况:第一行显示了当前时间、系统的运行时间、登录的用
户数以及系统的平均负载。平均负载有3个值:最近1分钟的、最近5分钟的和最近15分钟的平均负载。第二行显示了进程概要信息,top命令的输出中将进程叫作任务(task):有多少进程处在运行、休眠、停止或是僵化状态(僵化状态是指进程完成了,但父进程没有响应)。第三行:cpu状态:us 用户空间占用CPU的百分比, sy 内核空间占用CPU的百分比,ni 改变过优先级的进程占用CPU的百分比,id 空闲CPU百分比,wa IO等待占用CPU的百分比,hi — 硬中断占用CPU的百分比,si软中断占用CPU的百分比。第四行:内存状态:total 物理内存总量,used 使用中的内存总量,free 空闲内存总量,buffers 缓存的内存量 。 第五行:交换分区:total 交换区总量,used 使用的交换区总量,free 空闲交换区总量,cached 缓冲的交换区总量。
紧跟一行有些和ps命令类似。
PID:进程的ID。
USER:进程属主的名字。
PR:进程的优先级。
NI:进程的谦让度值。
VIRT:进程占用的虚拟内存总量。
RES:进程占用的物理内存总量。
SHR:进程和其他进程共享的内存总量。
S:进程的状态(D代表可中断的休眠状态, R代表在运行状态, S代表休眠状态, T代表跟踪状态或停止状态, Z代表僵化状态)。
%CPU:进程使用的CPU时间比例。
%MEM:进程使用的内存占可用内存的比例。
TIME+:自进程启动到目前为止的CPU时间总量。
COMMAND:进程所对应的命令行名称,也就是启动的程序名。