第二章 进程的描述与控制
2.1 前驱图和程序执行
2.1.1前趋图
2.1.2程序的顺序执行
1、程序的顺序执行
把一个应用程序分成若干个程序段,在各程序段之间,必须按照某种先后次序顺序执行,仅当前一操作(程序段)执行完后,才能执行后及操作。
2、程序顺序执行时的特征
1)顺序性
2)封闭性
3)可再现性
2.1.3 程序的并发执行
1、程序并发执行时的特征
1)间断性
2)失去封闭性
3)不可再现性
2.2 进程的描述
2.2.1 进程的定义和特征
1、进程的特征和定义
1)定义: 通常的程序是不能并发执行的。为使程序(含数据)能独立运行,应为之配置一进程控制块,即 PCB(Process Control Block):而由程序段、相关的数据段和 PCB 三部分便构成了进程实体。在早期的 UNIX 版本中,把这三部分总称为“进程映像”。在许多情况下所说的进程,实际上是指进程实体,如,所谓创建进程,实质上是创建进程实体中的 PCB;而撤销进程,实质上是撤销进程的 PCB。
2)动态性
3)并发性
4)独立性
5)异步性
2、进程的三种基本状态
1)就绪状态
2)执行状态
3)阻塞状态
3、三种基本状态的转换
4、创建状态和终止状态终止状态
2.2.3 挂起操作和进程状态的转换
1、进程状态的转换
①活动就绪→静止就绪
②活动阻塞→静止阻塞
③静止就绪→活动就绪
④静止阻塞→活动阻塞
2.引入挂起操作后五个进程状态的转换
2.2.4 进程管理中的数据结构
1、进程控制块的作用
为了描述和控制进程的运行,系统为每个进程定义了一个数据结构——进程控制块 PCB(Process Control Block),PCB 是进程存在的唯一标志。
2、进程控制块中的信息
1)进程标识符
2)处理机状态
3)进程调度信息
4)进程控制信息
3、进程控制块的组织方式
1)链接方式
2)索引方式
2.3 进程控制
2.3.1进程的创建
1.引起创建进程的事件:
用户登录、作业调度、提供服务、应用请求
2、进程的创建步骤:
1)申请空白PCB。
2)为新进程分配其运行所需的资源。
3)初始化进程控制块。
4)如果进程就绪队列能够接纳新进程,便将新进程插入就绪队列。
2.4进程同步
1、理解同步的含义
2、信号量机制控制进程同步
3、管程
2.4.3信号量机制
1、整型信号量
2、记录型信号量
3、AND型信号量
2.5经典进程的同步问题
2.6 线程的种类
1.内核线程KST
2.用户线程ULT