一、ps进程查看
进程状态标识 | 含义 |
---|
R | 运行状态。进程正在运行或者准备运行 |
S | 睡眠状态。进程不再运行,而是在等待某事件发生,如键盘输入或者收到网络报文 |
D | 不可中断的睡眠状态。进程在等待I/O操作,如硬盘驱动 |
T | 暂停状态。进程被指示暂停(后续还可继续运行) |
Z | 无效或者“僵尸”进程。子进程被终止,但是还没有被其父进程彻底释放掉 |
< | 高优先进程。进程可以被赋予更多的重点性,分配更多的CPU时间。进程的这一特性被称为优先级。高优先级的进程被说成较不友好,因为它将消耗更多的CPU时间,这样留给其它进程的CPU时间就会变少 |
N | 低优先级进程。低优先级进程(友好进程)只有在其它更高优先级的进程使用完处理器后才能够使用处理器的时间 |
ps命令 | 功能 |
无选项 | 显示当前所有进程的运行情况(只是ps执行时刻机器状态的一个快照) |
选项x | 显示所有的进程 |
选项aux | 显示每个用户的进程信息,使用这些选项时不带前置连字符将使得命令以“BSD模式(BSD-style)”运行。ps命令的Linux版本可以模拟多种UNIX版本中的ps程序的运行方式,使用这些选项将显示更多列的信息。 |
BSD模式ps命令 | 列标题含义 |
USER | 用户ID。表示该进程的所有者 |
%CPU | CPU使用百分比 |
%MEM | 内存使用百分比 |
VSZ | 虚拟耗用内存大小 |
RSS | 实际使用的内存大小。进程使用的物理内存(RAM)大小(以KB为单位) |
START | 进程开启的时间。如果数值超过24个小时,那么将使用日期来显示 |
二、top进程查看
实时显示当前所有任务的资源占用情况。 按照进程活动的顺序,以列表的形式持续更新显示系统进程的当前信息(默认每3秒更新一次)。主要用于查看系统“最高(top)”进程的运行情况。
显示的内容包含两个部分,顶部显示的是系统总体状态信息。
名称 | 含义 |
---|
第一行基本项 | 程序名 当前时间 系统总运行时间 用户登录数 |
负载均值(load average) | 等待运行的进程数;即共享CPU资源的处于可运 行状态的进程数。显示的三个值分别对应不同的时间段,前60秒,前5分钟,前15分钟,小于1表示机器不忙 |
tasks | 统计进程数及各个进程的状态信息 |
us | 百分之几的CPU时间被用户进程占用,这里指处于内核外的进程 |
sy | 百分之几的CPU时间被系统进程(内核进程)占用 |
ni | 百分之几的CPU时间被友好进程(低优先级进程)占用 |
id | 百分之几的CPU时间是空闲的 |
wa | 百分之几的CPU时间用来等待I/O操作 |
Mem | 显示物理RAM(随机存取内存)的使用情况 |
Swap | 显示交换空间(虚拟内存)的使用情况 |
top下命令 | 功能 |
h | 输入后将显示程序的帮助界面 |
q | 退出top命令 |
三、对进程进行管理
命令 | 功能 |
---|
[命令] & | 使进程在后台运行 |
jobs | 查看从该终端启动的所有作业 |
fg %1 | 使目标作业进程回到前台运行 |
Ctrl-C | 中断前台进程(发送中断INT-Interrupt信号【2】) |
Ctrl-Z | 暂停前台进程(发送终端暂停TSTP-Terminal Stop信号) |
bg %1 | 进程暂停后使用,使目标作业移到后台运行 |
四、信号
命令 | 功能 |
---|
kill | 发送信号给某个进程,通常用于“杀死”(终止)进程,可以用来终止运行不正常的程序或者反过来拒绝终止的程序。kill [-signal] PID… (默认发送终止TERM-Terminate信号) |
killall | 杀死(所有)指定名字的进程 |
shutdown | 关机或者重启系统 |
kill常用信号 | 用途 |
HUP【1】 | 挂起信号。运行在终端上的前台程序收到该信号后将终止。常被用来进行初始化。当一个后台进程接收到该信号时,将重启并且重新读取它的配置文件(例:Apache Web服务器) |
INT【2】 | 中断信号。中断正在运行的进程 |
KILL【9】 | 杀死信号。该信号比较特殊。鉴于程序可以选择不同的方式来处理发送过来的信号,包括忽略所有的这些信号,KILL信号将不会真正意义上地被发送到目标程序。而是内核终止了该进程。当进程以这种方式被终止时,将不会对自己进行“清理”或者对当前工作进行保存。只当作其它的终端信号都执行失败的情况下的最后选择。 |
TERM【15】 | 终止信号。这是kill命令默认发送的信号类型。如果程序仍然有足够的“活力”来接收信号,那么它将被终止 |
CONT【18】 | 继续运行信号。恢复之前接受了STOP信号的进程 |
STOP【19】 | 暂停信号。该信号将是进程暂停,而不是终止。和KILL信号类似,该信号不会被发送给目标进程,因此它不能被忽略 |
其它常用信号 | ---- |
QUIT【3】 | 退出信号。 |
SEGV【11】 | 段错误信号。如果程序非法使用了内存空间,即程序试图在没有写权限的空间执行写操作,那么系统将发送该信号 |
TSTP【20】 | 终端暂停信号。在按下Ctrl-Z键时终端将发出该信号。与STOP信号不同的是,TSTP信号由程序接收,但是程序可以选择忽略该信号 |
WINCH【28】 | 窗口改变信号。当窗口改变大小时,系统将发出该信号。类似top和less的一些将会对该信号作出相应,重新绘制试图来适应新的窗口大小 |
五、更多与进程相关的命令
命令 | 用途 |
---|
pstree | 以树状的模式输出进程列表,该模式显示了进程的父/子关系 |
vmstat | 输出系统资源使用情况的快照,包括内存,交换空间和磁盘I/O。如果想要持续查看输出,可以在命令后面加上一个间隔时间(以秒为单位),命令将按照间隔时间来动态更新显示的内容(比如,vmstat5)。按下Ctrl-C键可以终止输出 |
xload | 用来绘制显示系统时间负载情况图形的一种图形化界面程序 |
tload | 类似于xload程序,但是图形是在终端上绘制。按下Ctrl-C键终止退出 |