【思维导图】源文件-第二章 进程管理

合集下载

第二进程管理-PPT精选.ppt

第二进程管理-PPT精选.ppt
辽东学院信息技术学院
第二章 进 程 管 理
进程与程序的区别
(1)程序是指令的有序集合,其本身没有任何运行的含义,是一个 静态的概念。而进程是程序在处理机上的一次执行过程,它是一 个动态的概念。 (2)程序可以作为一种软件资料长期存在,而进程是有一定生命期 的。程序是永久的,进程是暂时的。 (3)进程更能真实地描述并发,而程序不能 (4)进程包括程序和数据+PCB两部分 (5)进程具有创建其他进程的功能,而程序没有 (6)同一程序同时运行于若干个数据集合上,它将属于若干个不同 的进程。也就是说同一程序可以对应多个进程
第二章 进 程 管 理
某时刻, N=9: 程序A
While(1) {
… n:=n+1; …
}
程序A得到的N值为:10

程序B
While(1) {
… print n; … …
}
程序B得到的N值为:10
辽东学院信息技术学院
第二章 进 程 管 理
某时刻, N=9:
循环程序A
While(1) {
… n:=n+1; …
(2) 失去封闭性: 资源共享
S4
(3) 不可再现性: 结果不同
辽东学院信息技术学院
第二章 进 程 管 理
不可再现性
例如,有两个程序A和B,它们共享一个变量N。程序 A每执行一次时,都要做N∶=N+1操作;程序B每执行一 次时, 都要执行Print(N)操作。程序A和B以不同的速度 运行。
辽东学院信息技术学院
2. 有没有这样的状态转换,为什么? 阻塞—运行; 就绪—阻塞
辽东学院信息技术学院
第二章 进 程 管 理
2.1.5 进程控制块

王道操作系统第二章进程与线程思维导图脑图

王道操作系统第二章进程与线程思维导图脑图

用一个整数型的变量作为信号量,用来表示系统中某种资源的数量
与普通整型变量的区别:对信号量的操作只有三种,即初始化,P操作,V操作
整型信号量
存在的问题:不满足“让权等待”的原则,会发生“忙等”
P,V原语用于实现系统资源的“申请”和释放
S.value的初值表示系统中某种资源的数目
对信号量S的一次Р操作意味着进程请求一个单位的该类资源,因此需要执行 S.value--,表示资源数减1,当S.value<0时表示该类资源已分配完毕,因此进程 应调用block原语进行自我阻塞(当前运行的进程从运行态→阻塞态),主动放 弃处理机,并插入该类资源的等待队列S.L中。可见,该机制遵循了“让权等 待”原则,不会出现“忙等”现象。
进程的整个生命周期中,大部分时间都处于三种基本状态
进程的状态和转换
状态间的转换
就绪态→运行态
进程被调度
运行态→就绪态
时间片到,或CPU被其他高优先级的进程抢占
运行态→阻塞态
等待系统资源分配,或等待某事件发生(主动行为)
阻塞态→就绪态
资源分配到位,等待的事件发生(被动行为)
创建态→就绪态 运行态→终止态
系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个 进程访问该资源
互斥共享方式
基本概念
进程同步
系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问
同时共享方式
两种资源共享方式
把一个时间段内只允许一个进程使用的资源称为临界资源,对临界资源的访问, 必须互斥的进行
互斥,亦称间接制约关系,进程互斥指当一个进程访问某临界资源时,另一个想 要访问该临界资源的进程必须等待,当前访问临界资源的进程访问结束,释放该 进程之后,另一个进程才能去访问临界资源

第2章 进程管理汇总

第2章 进程管理汇总
2、封闭性 是指程序好象在一个封闭环境中执行,即程序在运 行期间,独占全部系统资源,资源状态(除初始资源外)的改 变完全由本程序来决定,程序一旦开始执行,其执行结果不受 外界因素的影响。
3、可再现性 是指当该程序重复执行时,只要其执行环境和初始 条件相同,不论是从头到尾连续执行,还是“走走停停”执行, 必将获得相同的结果。这给程序的调试带来了很大的方便。
2.1 进程的概念
2.1.1 进程的引入 1、程序的顺序执行及其特性
作业l Il
Cl
Pl





行 顺
作业i Ii
Ci
Pi





作业n In
Cn
Pn
图 3.1 程序的顺序执行
程序的顺序执行具有如下特点:
1、顺序性 指的是程序必须严格按其规定的顺序执行,即在前 一个程序没有结束以前绝不允许执行下一个程序,在前一个操 作结束之前绝不允许执行下一个操作。
3.2 进程的表示和调度状态
3.2.1 进程的表示
1. 进程的组成 程序描述进程所要完成的功能。
程序是进程执行时不可修改的部分。
P CB 程序 数据
P CB
数据集合包括程序在执行时所需要的数据和工作
区。这部分只程能序为一个进程所专共有,享是进程的可
修改部分。
程序 段
程序和数据集合是进程存在的物质基础。
void programB(void) {
while(TRUE) {
… print(N); N=0;

} }
程序A中的N=N+1的操作和程序B的 print (N) 、N=0操作可能出现以下三种执 行序列:

第2章 进程管理课件

第2章  进程管理课件
八、UNIX系统的进程映像
用户态运行:执行用户态程序(在CPU上) 核心态运行:在CPU上执行操作系统程序
2、进程状态
在内存就绪:具备运行条件,只等取得CPU 在外存就绪:就绪进程被对换到外存上
在内存睡眠:在内存中等待某一事件发生 在外存睡眠:睡眠进程被对换到外存上 在内存暂停:因调用stop程序而进入跟踪暂停状态,等 待其父进程发送命令 在外存暂停:处于跟踪暂停状态的进程被对换到外存上 创建态:新进程被创建,但尚未完毕的中间状态 终止态:进程终止自己
第2章
2.3
进程管理
进程间的相互作用和通信
一、进程间的联系 3、临界资源与临界区
(4)系统对同类临界区的调度原则:
1 2 3
有若干进程要求进入临界区,一次仅允许一个进程进入。 任何时候,处于临界区的进程不可多于一个。 进入临界区的进程要在有限时间内退出, 使其它进程能及时进入。
第2章
2.3
二、锁操作法
三、信号量与P、V操作
4、举例说明利用P、V操作互斥同步问题
例2.1 生产者与消费者的问题
消费者进程
生产者进程
L1:P(empty);
P(mutex); 将产品送往缓冲池
L2:P(mutex);
P(full); 从缓冲池取出产品
V(mutex);
V(full); goto L1;
V(mutex);
三、信号量与P、V操作
4、举例说明利用P、V操作互斥同步问题
例2.1 生产者与消费者的问题
问题是这样叙述的:有若干生产者进程P1、P2、……Pn和若 干消费者进程C1、C2、…Cm;它们通过一个有界缓冲池(即由 K个缓冲区组成)联系起来,如下图所示:
有界缓冲池 生产者

第2章_进程管理

第2章_进程管理
21
系统用PCB来描述进程的基本情况以及运行 变化的过程,PCB是进程存在的唯一标志。
进程的创建:为该进程生成一个PCB; 进程的终止:回收它的PCB; 进程的组织管理:通过对PCB的组织管理来实现;
PCB存放在哪? 进程的状态转换:……?
22
两个进程的状态转换 运行 | 就绪 运行 | 阻塞 阻塞 | 就绪 就绪 | 运行
12
从技术上来说,只有一种创建进程的方法,
即在一个已经存在的进程(用户进程或系统
进程)当中,通过系统调用来创建一个新的 进程。 Unix:fork函数; Windows:CreateProcess函数;
13
2.1.5 进程的终止
在以下四种情形下,进程终止:
• 正常退出(自愿的);
• 错误退出(自愿的);
如何实现逻辑PC?
(本图摘自Andrew S. Tanenbaum: “Modern Operating Systems‖)
四个进程在并发地运行
11
2.1.4 进程的创建
引起进程创建的四个主要事件:
• 系统初始化时; • 在一个正在运行的进程当中,执行了 创建进程的系统调用; • 用户请求创建一个新进程; • 初始化一个批处理作业。
在并运行。
3
multi-programming
4
Why processes? (Cont.)
在多道程序系统中,各个程序之间是并发执 行的,共享系统资源。CPU需要在各个运行 的程序之间来回地切换,这样的话,要想描 述这些多道的并发活动过程就变得很困难。
5
程序1 MOV AX, 0040
程序2
POP
描述进程的数据结构:进程控制块
(Process Control Block,PCB)。

计算机进程的描述与控制思维导图

计算机进程的描述与控制思维导图

软件同步机制:都没有解决让权等待,而且部分方 法还会产生死锁的情况
关中断
利用Tes - n -Se 指令实现互斥
硬件同步机制
利用 w 指令实现进程互斥
整型信号量
由于整型信号量没有遵循让权等待原则,记录型 允许负数,即阻塞链表
记录型信号量
进程同步机制
进程同步
D型信号量
进程控制
理解: D型号量的w i 和 i n 仅能对信号施 以加1或减1操作,意味着每次只能对某类临界 资源进行一个单位的申请或释放。当一次需要N 个单位时,便要进行N次w i 操作,这显然是低 效的,甚至会增加死锁的概率。此外,在有些情
进程是竞争计算机资源的基本单位,程序不是 进程是程序在数据集上的一次执行
程序是构成进程的组成部分,一个程序可对应多 个进程,一个进程可包括多个程序
进程的运行目标是执行所对应的程序
从静态看,进程由程序、数据和进程控制块( P B)组成
就绪状态 ea
进程的三种基本状态
执行状态 n n
阻塞状态 lo
进程的基本状态及转换
进程的阻塞与唤醒
互斥——竞争 同步——协作
间接相互制约关系 直接相互制约关系
un ac
进程的挂起与激活
两种形式的制约关系
临界资源
进入区 n ec i
临界区 i ic ec i 退出区 i ec i
分区
剩余区 m n
ec i
1.空闲让进
2.忙则等待 3.有限等待
同步机制应遵循的规则
4.让权等待
基本概念
三种基本状态的转换 创建状态和终止状态
五状态进程模型
注意
阻塞态->运行态和就绪态->阻塞态这二种状态 转换不可能发生

第二章进程管理

第二章进程管理
等待队列:每个等待事件一个。
运行队列:单机系统中整个系统一个。
2019/10/3
太湖学院机电系
23
2.1.5进程控制块(2)
• 链接方式
把具有相同状态的PCB, 用其中的链接字,链接 成一个队列。
PCB1 PCB2 PCB3
执行指针 就绪队列指针
PCB4 PCB5 PCB6
多个 阻塞队列指针
PCB7 PCB8
S1
S2
S3
2019/10/3
太湖学院机电系
3
2.1.2前趋图定义
• 有向无循环图 • 表示方式:
• (1)p1 p2 • (2) ={(p1,p2)| p1 必须在p2开始前完成},前趋
关系(图2-2 P35) • 节点表示:一条语句,一个程序段,一个进程。
S1
P1
P2
P4
S2 P3
2019/10/3
2. 进程的三种基本状态
就绪状态、执行状态、阻塞(等待)状态 就绪态:等待系统分配处理机以便运行。即获得了处理机
以外的所有资源,一旦由调度选中得到处理机可以立即执 行的状态。 运行态:占有处理机正在执行。在单处理机的情况下,该 状态的进程只有一个。 等待态:等待某个事件的完成。进程因等待某事件而放弃 处理机进入等待该事件的状态。
3.并发性
• 只有建立了进程,才能并发执行。
4.独立性
• 独立运行,独立获得资源,独立接受调度
5.异步性(断断续续向前推进)
2019/10/3
太湖学院机电系
9
进程与程序的区别
进程
动态 暂时 并发 PCB 多个 一个
程序
静态 永久 串行 --------一个 多个
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档