内容正文:
课程名称
第5章 进程管理
计划学时
2学时
内容分析
本章主要介绍初识进程、查看进程、信号控制进程、进程优先级、作业控制、实例:管理远程主机
教学目标
与
教学要求
要求学生了解进程的基本概念、掌握查看进程的基本方法、熟悉信号控制进程、了解进程优先级管理、了解作业控制
教学重点
查看进程、信号控制进程、进程优先级、作业控制、实例:管理远程主机
教学难点
查看进程、信号控制进程、进程优先级、作业控制、实例:管理远程主机
教学方式
课堂讲解及ppt演示
教
学
过
程
第一课时
(初识进程、查看进程、信号控制进程)
回顾内容
1. 回顾上节内容,引出本课时主题。
学习完上一节文件权限后,下面进行了解进程管理的基础知识, 进程的含义为正在运行的程序,包括这个运行的程序所占用的系统资源。进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。同一个程序,同一时刻被两次运行了,它们就是两个独立的进程。引出本节学习内容。
2. 明确学习目标
(1) 能够掌握初识进程
(2) 能够掌握静态查看进程
(3) 能够掌握动态查看进程
(4) 能够掌握kill命令
(5) 能够掌握killall命令
知识讲解
· 初识进程
前面提到passwd命令,在使用该命令时,系统将执行/usr/bin/passwd这个程序文件,同时会产生一个进程。/usr/bin/passwd程序文件会占用少量的硬盘存储空间,并且不会占用系统的四大核心资源Disk IO、Memory、CPU、Network。如果用户alice执行了该程序文件,系统将会产生一个passwd进程。
进程是已启动的可执行程序的运行实例,进程有以下组成部分:
• 已分配内存的地址空间。
• 安全属性,包括所有权凭据和特权。
• 程序代码的一个或多个执行线程。
• 进程状态。
每个进程都有一个唯一的进程标识PID,一个PID只能标识一个进程,PPID为父进程ID,需要给该进程分配系统资源。
进程状态是指程序执行过程中的变化。进程状态随着程序的执行和外界条件的变化而转换,一般分为3类:就绪态、运行态、阻塞态,如图所示。
就绪态:进程已经具备运行条件,但是CPU还没有分配过来。
运行态:进程占用CPU,并在CPU上运行。
阻塞态:进程因等待某件事发生而暂时不能运行。
不同的进程对系统资源的需求是不一样的,有些进程属于IO密集型、有些进程属于CPU密集型,等等。
· 静态查看进程
ps命令可以查看静态进程,仅仅是捕捉某一个瞬间某一个进程的状态,类似于给进程制作快照。
使用“ps aux”命令查看当前目录的进程,具体如下所示。
[root@qfedu ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.3 128164 6824 ? Ss 17:20 0:04 /usr/lib/sy
root 2 0.0 0.0 0 0 ? S 17:20 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 17:20 0:00 [ksoftirqd/
root 5 0.0 0.0 0 0 ? S< 17:20 0:00 [kworker/0:
…………………部分省略…………………
每列显示的数据代表的意义,如表所示。
列名
说明
列名
说明
USER
运行进程的用户
RSS
占用实际内存
PID
进程ID
TTY
进程运行的终端
%CPU
CPU占用率
STAT
进程状态
%MEM
内存占用率
TIME
进程累计占用CPU时间
VSZ
占用虚拟内存
COMMAND
进程发起者
其中,VSZ与RSS可以简单理解为房子的建筑面积与使用面积;当TTY为“?”时,表示不依赖任何终端运行。
使用man工具查看STAT,其中,R表示运行;S表示可中断休眠;D表示不可中断睡眠;T表示停止的进程 ;Z表示僵尸进程;X表示死掉的进程,具体案例详情参考5.2.1。
· 动态查看进程
top命令可以实时动态的显示进程,类似于Windows系统中的任务管理器。使用top命令动态查看进程时,进程信息分为上下两部分,上面为整体信息,下面为每一个进程的信息。系统默认更新时间为3秒,也可以按回车键立即更新,具体案例详情参考