在 Linux 中,每个执行的任务都被称为进程,每一个进程都有一个唯一的标识,称为 PID(Process ID)
1、显示进程
可以使用 ps 命令(process status)显示当前运行的进程,显示的内容如下:
PID:进程的唯一标识TTY:登陆终端的编号TIME:此进程消耗的 CPU 时间CMD:正在执行的命令
添加 -l 参数(long format)可以显示更详细的信息,新增的内容包括:
S:进程状态(Status)UID:进程执行者的唯一标识(User ID)PPID:父进程的唯一标识(Parent Process ID)PRI:进程的优先级(Priority),值越小,优先级越高NI:进程的 nice 值,值越小,优先级越高SZ:进程占用内存的大小(Size),单位为 KB
添加 -u 参数(user format)也能显示更详细的信息,新增的内容包括:
USER:进程执行者%CPU:CPU 使用率%MEM:内存 使用率VSZ:占用虚拟内存的大小(Virtual Memory Size)RSS:占用物理内存的大小(Resident Set Size)START:进程开始执行的时间
2、删除进程
可以先使用 ps 命令查看进程的唯一标识(PID),然后再使用 kill PID 命令终止指定的进程
若无法直接使用上述的命令终止进程,可以考虑加上以下参数:
-9:发出KILL信号,强制终止进程,不会进行清理和保存工作-15:发出TERM信号,当进程有足够活力接收时才会被终止,在终止前能够清理和保存工作
此外,kill 命令还能加上以下参数:
-1:发出HUP信号,挂起进程-2:发出INT信号,效果和直接用Ctrl + C相同-18:发出CONT信号,继续运行进程-19:发出STOP信号,暂停进程
3、进程优先级
每个进程在执行时,都会被赋予使用 CPU 的优先等级 (称为 nice),等级越高,能使用 CPU 的时间越长
优先级的取值范围在 -20 ~ 19 间的整数,其中 -20 最高,19 最低,优先级 -20 ~ -1 只有管理员才能设置
nice 命令能在开始执行进程时设置进程的优先级,renice 命令能在正在执行进程时调整进程的优先级
若在启动进程时没有使用 nice,则优先级默认为 0;若使用 nice 但没有显式指定优先级,则默认为 10
4、动态显示进程
可以使用 top 命令动态显示进程状态,在 top 命令执行过程中,可以结合使用以下的指令完成特定的操作
P:改变进程的排列顺序,按 CPU 使用时间排序M:改变进程的排列顺序,按内存使用量排序J:改变进程的排列顺序,按执行的时间排序u:监视指定用户产生的进程