首页 > 代码库 > Linux进程管理
Linux进程管理
前台与后台
用户输入shell命令后直接按Enter键,就会启动一个前台进程。
用户输入shell命令后,加上“&”符号再按Enter就会启动一个后台进程。此时shell可以继续运行和处理其他程序命令。
查看进程
1、ps命令
ps命令查看系统中运行的进程信息,其格式为:
ps [选项]
常用选项:
-a 显示终端上的所有进程,包括其他用户的进程。
-u 显示面向用户的格式信息。
-x 显示没有控制终端的进程。
ps命令格式输出的各字段名:
用户(USER)、进程号(PID)、CPU使用率(%CPU)、内存使用率(%MEM)、虚拟内存占用情况(VSZ)、物理内存占用情况(RSS)、登录的终端控制台(TTY,其中“?”表示未知)、
当前进程状态(STSAT)、进程开始时间(START)、进程运行时间(TIMS)、进程名称(COMMAND)
当前进程状态(STSAT)的几种形态:
R (TASK_RUNNING):可执行状态。
S (TASK_INTERRUPTIBLE):可中断睡眠状态。
D (TASK_UNINTERRUPTIBLE):不可中断睡眠状态。
T (TASK_STOPPED or TASK_TRACED):暂停或者跟踪状态
Z (TASK_DEAD-EXIT_ZOMBIE):退出状态,进程成为僵尸进程。
X (TASK_DEAD-EXIT_DEAD):退出状态,进程即将被销毁。
结束进程
1、kill命令
kill命令使用进程号来结束指定进程的运行。其用法为:
kill [-9] 进程号
选项“-9”用于强行结束指定的进程,适用于结束已经“死掉”而没有能力自动结束的非正常进程。
实例:
为了查看指定进程的进程号,可以使用管道操作和grep命令相结合的方式实现。
比如查看xinetd进程对应的进程号:
ps -e|grep xinted
例如,输出为:
1665 ? 00:00:00 xinted
从其输出信息中,可得知该进程的进程号为1665。若要结束改进程,则执行命令:
kill 1665
2、killall命令
killall命令使用进程名来结束指定进程的运行。若系统存在同名的多个进程,则这些进程将全部结束运行。
kilall [-9] 进程名
选项“-9”用于强行结束指定进程的运行,属于非正常结束。
实例,若要结束xinetd进程的运行,则实现命令为:
kilall xinetd
Linux进程管理