《进程控制和管理》由会员分享,可在线阅读,更多相关《进程控制和管理(13页珍藏版)》请在金锄头文库上搜索。
1、进程控制和管理nn基本概念 进程:在linux中每个运行的工作. 进程ID(PID):当每个程序启动时,系统指定给该进 程的一个惟一的数值. 父进程(PPID):每个进程都会存在一个对应的父进 程,而由此父进程可复制多个子进程,该动作称为 Fork. 如Web服务器,服务器端使用一个父程序来接收客 户端的请求,然后使用Fork来产生一个子程序以处 理后续的工作,该父程序就可再度回到等待客户端 请求的状态,即可不断地服务客户端.前台与后台程序 前台程序:用户当前在显示器上进行操作的程序. 后台程序:实际上在操作但在显示器看不到的程序, 常将较复杂、运行时间较长的程序以后台方式运 行。 Daemo
2、n:一般系统的服务都以后台的方式存在, 且常驻于系统中,直到关机才结束,这类服务称 为“Daemon”,多数Daemon是由服务名称加上“d” 来产生,如HTTP服务的Daemon为httpd.管理前台和后台的进程 将前台程序转入后台:按“ctrl+Z”,再用“bg”命 令使其在后台执行。 将后台程序转入前台:用“fg”命令来实现。 显示后台执行的程序:用“jobs”命令查看。 如:#find / -name passwd显示系统当前运行的进程 Ps(process status):查看系统中运行的程序及 运行状况。 字段说明: PID:进程标识符。 TTY:Teletypewriter,登录
3、的终端编号。 TIME:进程所消耗CPU时间。 CMD:命令或进程名称。 演示:显示系统当前运行的进程 Ps l:显示详细的系统数据。 字段说明: F:该进程状态的标志。 S:进程状态代码。 UID:进程运行者的ID。 PPID:父程序标识符。 PRI:进程运行的优先级(priority)。 NI:nice,进程运行优先级的nice值,负值表优先级较高。 SZ:size,进程所占的内存大小,以KB为单位。 WCHAN:waiting channel,进程或system call等待时的地 址。 演示:linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中,
4、受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到 有中断发生) 4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用 wait4()系统调用后释放) 5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信 号后停止运行运行) ps工具标识进程的5种状态码 : D 不可中断 uninterruptible sleep (usually IO) R 运行 runnable (on run queue) S 中断 sleeping T 停止 traced or stopped Z 僵死 a defunct
5、(”zombie”) process 显示系统当前运行的进程 Ps u:将进程数据以用户的格式显示。 字段说明: %CPU:CPU使用率百分比。 %MEM:内存使用率百分比。 VSZ:占用的虚拟内存大小。 RSS:占用的物理内存大小。 START:程序开始时间。 演示:显示系统当前运行的进程 Ps x:显示后台进程 系统中很多的进程是以后台方式来运行的 ,一般它们都是系统的服务(Daemon)或用 户使用“&”来处理的进程。 状态代码说明: w:表已全部交换出内存,即内存没有驻留页面。 N:表低优先权进程。 :表高优先权进程。 演示:删除运行中的进程 Kill:作用是向正在运行的进程发送消息。
6、可以使用-l参数来查看所有可供传送的信号。其中最重要 的为-9和-15,分别表示终止进程和中断进程运行。 例:#kill 16525 某些程序在直接指定PID而不能终止其进程时,可用-9参数 ,表发出“sigkill”信号。如:#kill -9 16525 如-9仍不能终止进程,还可以使用-15参数来送出“sigterm”信 号,如:#kill -15 16525动态显示运行中的进程 Top命令:动态显示运行中的进程,与ps的不同点 是会在指定的时间间隔更新显示信息。 数据排序: 按“p”:可根据CPU使用时间的长短来排序。 按“m”:可根据内存使用量的多少来排序。 按“t”:可根据运行时间的长短来排序。 按“u”,再输入用户名:系统会筛选出与指定用户 有关的程序信息。 按“K”,再输入PID,可删除指定用户。 按“h”或“?”:可查看系统的说明内容。 分别演示:Pstree命令(process status tree),以树状图显示程序。 例:#pstree | grep mbd