3.操作系统第二章
行
2.1.2 顺序程序设计及其执行
1、执行情况:与操作的静态描述一致
2.1
例:
前
趋
2、特征:
图
和
顺序性
程
序
封闭性
执
行
可再现性
2.1.3 并发程序设计及其执行
1、执行情况:与操作的静态描述不一定一致
2.1
例:①程序段
前
趋
②多道程序环境下程序的并发执行
图
和
2、特征:
程
序
间断性
执
行
失去封闭性
不可再现性
2.1.3 并发程序设计及其执行
3、程序并发执行的条件
2.1 引入Pi
前 R(Pi):程序Pi在执行期间所需参考的所有变量的集合-读集
趋
图 W(Pi):程序Pi在执行期间所需改变的所有变量的集合-写集
和 程
则Pi与Pj能并发执行的条件:
序 执
R(Pi)∩ W(Pj)={} R(Pj)∩ W(Pi)={} W(Pi)∩ W(Pj)={}
进
资源分配和处理机调度的一个独立单位。
程
的
三、特征:
描 述
动态性
并发性
独立性
异步性
结构特性:进程=程序段+数据段+PCB
2.2.1 进程的定义和特征
四、进程和程序的区别与联系
2.2
①进程是一个动态的概念;程序是一个静态的概念;
进
程
②进程具有并发性,而程序没有;
的
描
③进程是资源分配和处理机调度的独立单位,其并
二、内核:
2.3
在层次结构中最里层的程序模块集合。
进
即:内核是计算机硬件的第一层扩充软件
程
控
制 三、内核的基本功能
1、资源管理功能
进程管理、存储器管理、设备管理
2、支撑功能
中断处理、时钟管理、原语操作
2.3.1 内核
四、内核的实现
2.3
1、用原语实现
进
程
控
2、原语:由若干条机器指令构成的,完成特定功
一、PCB的作用
2.2
1、OS根据PCB来对并发执行的进程进行控制和管理
进
程
2、PCB是进程存在的唯一标志
的
描
从PCB在进程的生命周期中起的作用了解
述
3、PCB应常驻内存
2.2.3 进程控制块PCB
二、PCB中的信息
2.2 三、PCB的组织方式
进
程
1、链接方式
的
描 述
2、索引方式
2.2.3 进程控制块PCB
述
发性受系统制约;
④一个程序,多次执行,对应多个进程;不同 的进程可以包含同一程序。Biblioteka 2.2.2 进程状态及其演变
一、进程的三种基本状态
2.2
1、就绪状态(ready):等处理机
进
程
2、执行状态(running):用处理机
的
描 述
3、阻塞状态(blocked):等事件
2.2.2 进程状态及其演变
二、基本状态演变图
(3)画出进程状态变化图,说明进程怎样从一个状态转换到下 一个状态。
2.现代操作系统一般都提供多进程运行环境, (1)为支持多进程的并发运行,系统必须建立那些关于进
程的数据结构? (2)为支持进程状态的变迁,系统至少应提供哪些进程控
制原语? (3)执行每一个进程控制原语时,进程状态发生什么变化?
时间片完
2.2
进 程 的
创建 就绪
调度
运行
完成 撤消
描 述
事件发生 (I/O完成)
等事件 (I/O请求)
阻塞
2.2.2 进程状态及其演变
三、具有挂起操作的进程状态演变图
2.2
1、引入 ① 系统负荷调节
进
② 终端用户的需要
程
的
③ 操作系统的需要
描
述
④ 对换的需要
2、挂起:
所谓“挂起”,就是使正在活动的进程(或执行、
行 亦即:
[R(Pi)∩ W(Pj)]∪[R(Pj)∩ W(Pi)]∪[W(Pi)∩ W(Pj)]= {}
若两个程序能满足上述条件,它们便能并发执行,且具有 可再现性。该条件又称为Bernstein条件。
2.2.1 进程的定义和特征
一、引入:为描述并发下程序的执行情况
2.2 二、定义:进程是程序的一次执行过程,是系统进行
第二章 处理机的管理—进程管理
2.1 前趋图和程序执行 2.2 进程的描述 2.3 进程控制 2.4 线程的基本概念
2.1.1 前趋图的定义
1、前趋图的定义
2.1
前趋图:有向无环图。
前 趋
结点:表示操作、语句、程序段或进程。
图
边:操作之间的关系,偏序或前趋关系。
和
程
2、例:
序
执
注:前趋图中必须不存在循环
2.2
执行 指针
进
程
的
描
就绪 表指针
述
就绪 索引表 阻塞 索引表
阻塞 表指针
按索引方式组织PCB
P CB1 P CB2 P CB3 P CB4 P CB5 P CB6 P CB7
2.3 进程控制
进程控制
所谓进程控制,就是对系统中所有进程的生命历 程实施控制。也即:进程控制是管理进程生灭及状态 转换的程序的集合。
制
能的一段程序,其执行过程不可分割,
就象一条指令一样。
2.3.2 进程控制原语
进程的创建、终止
2.3
进
程
进程的阻塞、唤醒
控
制
进程的挂起、激活
补充习题
1.(1)给出进程定义,并举一个实际比喻例子,说明在该例 子中什么可比喻为程序?什么可比喻为进程?什么情况下是多个进 程?
(2)描述进程的三种基本状态,尽可能清楚地解释处于不同状 态的进程在性质上的区别。
进程控制是OS内核实现的。
2.3.1 内核
一、操作系统的层次结构
2.3 1、引入:方便设计与维护,将操作系统分为不同层次,
进 程
将操作系统的功能设置在不同的层次中。
控 制
2、原则:
按调用关系分层,只有外层能调用内层;
与硬件关系密切的放在最里层;例如进程调度;
与用户关系密切的放在最外层;
2.3.1 内核
或就绪、或阻塞)处于静止状态,此时系统回收被这
些进程占用的内存资源。
三、具有挂起操作的进程状态演变图
3、具有挂起操作的进程状态演变图
2.2.2
进
事件发生
程 状
活动
态
就绪
活动 阻塞
及
其
演
活动
变
挂
激
运行 挂
激 (内存)
起
活
起
活
创建 静止 就绪
事件发生
静止 阻塞
静止 (外存)
2.2.3 进程控制块PCB
三、PCB的组织方式
2.2
执 行 指针
进
程
的
就 绪 队列 指 针
描
述
阻 塞 队列 指 针
空 闲 队列 指 针
P CB1 4 P CB2 3 P CB3 0 P CB4 8 P CB5 P CB6 7 P CB7 9 P CB8 0 P CB9 1
…
PCB链接队列示意图
2.2.3 进程控制块PCB
三、PCB的组织方式