【操作系统】进程的描述与控制
- 1. 前驱图和程序执行
-
- 1.1 前驱图
- 1.2 程序顺序执行
- 1.3 程序并发执行
- 2. 进程的描述
-
- 2.1 进程的定义
-
- 2.1.1 进程控制块(PCB)
- 2.1.2 进程的特征
- 2.2 进程的基本状态及转换
-
- 2.2.1 进程的三种基本状态
- 2.2.2 创建状态和终止状态
- 2.3 挂起操作和进程状态的转换
-
- 2.3.1 挂起操作
- 2.3.2 挂起操作的引入原因
- 2.3.3 引入挂起后的进程状态转换
- 2.4 进程管理中的数据结构
-
- 2.4.1 操作系统中用于管理控制的数据结构
- 2.4.2 进程控制块PCB的作用
- 2.4.3 进程控制块中的信息
- 2.4.4 进程控制块的组织方式
- 2.5 进程控制【进程管理最基本功能】
-
- 2.5.1 操作系统内核
- 2.5.2 用户态以及系统态
- 2.5.3 OS内核的功能
- 2.6 进程的创建
-
- 2.6.1 创建进程【引起其的事件】
- 2.6.2 进程的创建【步骤】
- 2.7 进程的终止
-
- 2.7.1 进程终止【引起其的事件】
- 2.7.2 进程终止【步骤】
- 2.8 进程的阻塞与唤醒
-
- 2.8.1进程的阻塞与唤醒【引起其的事件】
- 2.8.2进程的阻塞与唤醒【步骤】
- 2.9进程的挂起与激活
- 3. 进程同步
-
- 3.1 进程同步的概念
-
- 3.1.1 临界资源
- 3.1.2 临界区
- 3.1.3 同步机制应遵循的规则
- 3.2 硬件同步机制
- 3.3 信号量机制
- 3.4信号量的应用
- 3.5 管程机制
- 4. 经典进程的同步问题
1. 前驱图和程序执行
1.1 前驱图
1.2 程序顺序执行
程序顺序执行时的特征
1.3 程序并发执行
程序并发执行时的特征
- 间断性
- 失去封闭性
- 不可再现性
2. 进程的描述
2.1 进程的定义
2.1.1 进程控制块(PCB)
为了使参与并发执行的每个程序都能独立地运行,在操作系统中必须为之配置一个专门的数据结构,称为进程控制块
- 系统利用PCB描述进程的基本情况和活动过程,进而控制和管理进程
- 进程(又称进程实体、进程映像)【 由程序段、相关的数据段、PCB构成】
- 进程是程序的一次执行
- 进程是一个程序及其数据在处理机上顺序执行时所发生的活动
- 进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位
- 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位
2.1.2 进程的特征
2.2 进程的基本状态及转换
2.2.1 进程的三种基本状态
2.2.2 创建状态和终止状态
2.3 挂起操作和进程状态的转换
2.3.1 挂起操作
当挂起操作作用于某个进程时,该进程将被挂起,意味着此时该进程处于静止状态
- 如果进程正在执行->暂停执行
- 如果原本处于就绪状态->该进程暂不接受调度
与挂起操作对应的操作是激活操作
2.3.2 挂起操作的引入原因
2.3.3 引入挂起后的进程状态转换
2.4 进程管理中的数据结构
2.4.1 操作系统中用于管理控制的数据结构
进程表又称为进程控制块PCB
2.4.2 进程控制块PCB的作用
PCB用于描述进程的当前情况、管理进程运行的全部信息,是操作系统中最重要的记录型数据结构
2.4.3 进程控制块中的信息
- 进程标识符【包含外部标识符、内部标识符】
- 处理机状态
- 进程调度信息
- 进程控制信息
2.4.4 进程控制块的组织方式
- 线性方式
- 链接方式
- 索引方式
2.5 进程控制【进程管理最基本功能】
进程控制 主要包括【创建新进程、终止已完成进程、将因发生异常情况而无法继续运行的进程置于阻塞状态、负责进程运行中的状态转换】等功能
2.5.1 操作系统内核
内核是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统等等,决定着系统的性能和稳定性。是连接应用程序和硬件的桥梁。内核就是操作系统背后黑盒的核心。
2.5.2 用户态以及系统态
2.5.3 OS内核的功能
大多数OS内核都包括两大方面功能
支撑功能【中断处理、时钟处理、原语操作】
资源管理功能【进程管理、存储器管理、设备管理】
2.6 进程的创建
2.6.1 创建进程【引起其的事件】
2.6.2 进程的创建【步骤】
2.7 进程的终止
2.7.1 进程终止【引起其的事件】
2.7.2 进程终止【步骤】
2.8 进程的阻塞与唤醒
2.8.1进程的阻塞与唤醒【引起其的事件】
2.8.2进程的阻塞与唤醒【步骤】
2.9进程的挂起与激活
3. 进程同步
3.1 进程同步的概念
3.1.1 临界资源
3.1.2 临界区
3.1.3 同步机制应遵循的规则
- 空闲让进
- 忙则等待
- 有限等待
- 让权等待
3.2 硬件同步机制
- 关中断
- 利用Test-and-Set指令实现互斥
- 利用Swap指令实现进程互斥
3.3 信号量机制
- 整型信号量
3.4信号量的应用
3.5 管程机制
4. 经典进程的同步问题