第4章 调度与死锁_2

合集下载

计算机操作系统习题3-调度与死锁

计算机操作系统习题3-调度与死锁

P(S1)
13
V(S2)
23
V(S1)
14
V(S1)
24
V(S2)
(1)试分析各种推进速度可能引起的情况;(2)用产生死锁的必 要条件解释产生死锁和不产生死锁原因。
2、考虑如下交通死锁问题:
(1)试说明产生死锁的四个必要条件在此例中均成立;(2)请建 立一种规则,以避免死锁的发生。
进程 到到就绪队列时刻 执行时间(ms) 优先数
P1
0
3
3
P2
2
6
5
P3
4
4
1
P4
6
5
2
P5
8
2
4
(1)FCFS调度算法;(2)时间片轮转调度算法(时间片为 1ms);(3)剥夺式短进程优先调度算法;(4)剥夺式优先级调度算 法;(5)非剥夺式优先级调度算法。
2、在银行家算法中,有下表所示资源分配情况:
A、进程优先权 B、时间片大小 C、进程的推进顺序 D、分配队列优先权
9、为了系统中各部分资源得到均衡使用,以提高系统的效率,就必 须选择对资源需求不同的作业进行合理搭配。这项工作是由( )完 成的。
A、作业调度 B、中级调度 C、进程调度 D、内存调度
10、既考虑作业等待时间,又考虑作业完成时间的调度算法是 ( )
13、一个作业进入主存后,所属该作业的进程初始时处于( ) 状态。 A、运行 B、等待 C、就绪 D、后备
14、作业周转时间为( ) A、作业开始时间-作业提交时间 B、作业等待时间+作业运行 时间 C、作业等待时间 D、作业运行时间
15、按序分配资源是为了( ) A、死锁的检测 B、死锁的预防 C、死锁的避免 D、死锁 的解除

第四章进程调度与死锁习题及答案

第四章进程调度与死锁习题及答案

第四章一.选择题1.预防死锁不可以去掉以下__A__条件。

A.互斥 B.请求与保持 C.不可剥夺 D.环路2.资源分配图是否可以完全简化是判断死锁的_C__。

A.充分条件 B.必要条件 C.充分必要条件 D.什么也不是3.设有4个作业同时到达,每个作业的执行时间是2min,它们在一台处理机上按单道方式运行,则平均周转时间为_B__。

A.1min B.5min C.2.5min D.8min4.若系统中有8台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许_C__各进程参与竞争,而不会发生死锁。

A.5 B .6 C .7 D .85.响应比高者优先作业调度算法除了考虑进程在CPU上的运行时间,还考虑以下__D_因素。

A.输入时间B.完成时间C.周转时间D.等待时间6.产生系统死锁的原因可能是_B__。

A.一个进程进入死循环B.多个进程竞争资源出现了循环等待C.进程释放资源D.多个进程竞争共享型设备7.以下_B__方法可以解除死锁。

A.挂起进程B.剥夺资源C.提高进程优先级D.降低进程优先级8.采用有序分配资源的策略可以破坏产生死锁的__D_。

A.互斥条件B.请求与保持条件C.不可剥夺条件D.环路条件9.连个进程争夺同一个资源_B__。

A.一定死锁B.不一定死锁C.不死锁D.以上说法都不对10.以下解决死锁的方法中,属于预防策略的是_C__。

A.化简资源分配图B.银行家算法C.资源的有序分配D.死锁检测法11.下面__D_说法是对可剥夺系统的正确描述。

A.时间片轮转法是一种可剥夺式调度B.进程因等待某一事件而引起系统调度是一种可剥夺式调度C.实时系统采用可剥夺式调度D.优先级低的进程放弃CPU,让优先级高的进程运行12.以下关于调度的说法__A__正确。

A.进程通过调度得到CPUB.优先级是进程调度的主要依据,一旦确定就不能改变C.在单CPU的系统中,任何时刻都有一个进程处于运行状态D.进程申请CPU得不到时,其状态为阻塞13.既考虑进程的等待时间,又考虑进程的执行时间的调度算法是__A__。

湘潭大学 操作系统 课程复习

湘潭大学 操作系统 课程复习
• • • • • 程序的顺序执行及其特征(理解) 程序的并发执行及其特征(理解) 进程的概念及其特征(掌握) 进程状态(掌握) 进程控制块(理解)
– 3.2 进程控制(理解)
• 进程创建和终止 • 进程阻塞和唤醒 • 进程挂起和激活
6
第3章
• 第3章 进程描述和控制
– 3.3 线程
• 线程简介(理解) • 多线程(掌握) • 线程实现与线程模型(理解)
• 第6章 输入输出系统
• 磁盘管理(不考) • 容错技术:廉价磁盘冗余阵列(了解)
16
第7章
• 第7章 文件管理
– 7.1 概述(理解)
• 文件、文件系统的定义
– 7.2 文件结构
• 逻辑结构(理解) • 物理结构:顺序结构、链接结构、索引结构(掌握 );直接文件、哈希文件(理解)
– 7.3 文件目录
10
第5章
• 第5章 存储器管理
– 5.4 页式存储管理
• 页、块、页表、地址结构、分页地址变换、快表( 掌握) • 两级页表、多级页表(理解)
– 5.5 段式与段页式存储管理
• 段、段表、地址结构、分段地址变换(掌握) • 分页和分段的区别(掌握) • 段页式存储管理(理解)
– 5.6 内存扩充技术(了解)
• 安全状态 • 银行家算法数据结构、流程 • 安全性算法
– 4.6 死锁检测和恢复(了解)
9
第5章
• 第5章 内存管理
– 5.1 概述(理解)
• 存储层次结构 • 存储管理的目的和任务
– 5.2 地址重定位(理解)
• 重定位的基本概念 • 补充:程序的装入、程序的链接
– 5.3 分区存储管理
• 单一连续、固定分区、可变分区分配(理解) • 分区分配算法(掌握) • 补充:哈希算法、伙伴系统(理解)

处理机调度与死锁习题

处理机调度与死锁习题

处理机调度和死锁习题第一部分:处理机的调度一、单项选择题1.时间片轮转调度算法是为了()。

A.多个终端能够得到系统及时响应B.使系统变得高效C.优先级较高的进程得到及时响应D.需要CPU时间最少的进程最先做2.在单处理器的多进程系统中,进程什么时候占用处理器以及决定占用时间的长短是由()决定的。

A.进程相应的代码长度B.进程总共需要运行的时间C.进程特点和进程调度策略D.进程完成什么功能3.()有利于CPU繁忙型的作业,而不利于}/0繁忙型的作业。

A.时间片轮转调度算法B.先来先服务调度算法C.短作业(进程)优先算法D.优先权调度算法4.下面有关选择进程调度算法的准则中不正确的是()。

A.尽快响应交互式用户的请求B.尽量提高处理器利用率C.尽可能提高系统吞吐量D.适当增长进程就绪队列的等待时间5.设有4个作业同时到达,每个作业的执行时间均为2h,它们在一台处理器上按单道运行,则平均周转时间为()。

A.1h B.5h C.2.5h D.8h6.若每个作业只能建立一个进程,为了照顾短作业用户,应采用();为了照顾紧急作业用户,应采用();为了能实现人机交互,应采用();而能使短作业.长作和交互作业用户都满意,应采用()。

A.FCFS调度算法B.短作业优先调度算法C.时间片轮转调度算法D.多级反馈队列调度算法E.剥夺式优先级调度算法7.()优先级是在创建进程时确定的,确定之后在整个运行期间不再改变。

A.先来先服务B.动态C.短作业D.静态8.现在有三个同时到达的作业J1,J2和J3,它们的执行时间分别是T1,T2,T3,且T1 <T2 <T3。

系统按单道方式运行且采用短作业优先调度算法,则平均周转时间是()。

A.T1 + T2 + T3 B.(3 x Tl+2 x T2 + T3)/3C.(T1+T2+T3)/3 D.(TI+2 x T2+3 x T3 )/39.设有三个作业,其运行时间分别是2h,5h,3h,假定它们同时到达,并在同一台处理器上以单道方式运行,则平均周转时间最小的执行顺序是()。

操作系统第四章进程调度和死锁习题及答案

操作系统第四章进程调度和死锁习题及答案

第四章一、单项选择题1.为了根据进程的紧迫性做进程调度,应采用(B )。

A.先来先服务调度算法 B. 优先数调度算法 C.时间片轮转调度法 D.分级调度算法2.采用时间片轮转法调度是为了( A)。

A.多个终端都能得到系统的及时响应 B.先来先服务C. 优先数高的进程先使用处理器 D.紧急事件优先处理3.采用优先数调度算法时,对那些具有相同优先数的进程再按( A )的次序分配处理器。

A 先来先服务 B. 时间片轮转 C. 运行时间长短 D.使用外围设备多少4. 当一进程运行时,系统强行将其撤下,让另一个更高优先数的进程占用处理器,这种调度方式是( B )。

A. 非抢占方式B.抢占方式 C. 中断方式 D.查询方式5.( B)必定会引起进程切换。

A.一个进程被创建后进入就绪态B.一个进程从运行态变成阻塞态C.一个进程从阻塞态变成就绪态6.( B)只考虑用户估计的计算机时间,可能使计算时间长的作业等待太久。

A.先来先服务算法B.计算时间短的作业优先算法C.响应比最高者优先算法 D.优先数算法7.先来先服务算法以( A )去选作业,可能会使计算时间短的作业等待时间过长。

A.进入的先后次序 B.计算时间的长短 C.响应比的高低 D.优先数的大小8.可以证明,采用( C )能使平均等待时间最小。

A.优先数调度算法 B.均衡调度算法C.计算时间短的作业优先算法 D.响应比最高者优先算法9.在进行作业调度时.要想兼顾作业等待时间和计算时间,应选取(D )。

A均衡调度算法 B.优先数调度算法C.先来先服务算法D.响应比最高者优先算法10.作业调度算法提到的响应比是指( B )。

A.作业计算时间与等待时间之比B.作业等待时间与计算时间之比C.系统调度时间与作业等待时间之比 D.作业等待时间与系统调度时间之比11.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由( D )来决定。

A.设备管理 B.作业控制 C.驱动调度D.进程调度12.系统出现死锁的根本原因是( D )。

第4章 计算机操作系统答案 处理机调度

第4章 计算机操作系统答案 处理机调度

第四章处理机调度一、选择题:1、()调度主要涉及内存管理与扩充。

A、作业B、交换C、进程D、线程2、()调度在作业执行完毕时还负责回收系统资源。

A、作业B、交换C、进程D、线程3、以下哪种调度又称为宏观调度或高级调度()。

A、作业B、交换C、进程D、线程4、()调度又称为微观或低级调度。

A、作业B、交换C、进程D、线程5、下面哪中调度一般不存在于分时系统和实时系统中()。

A、作业B、交换C、进程D、线程6、()调度的主要任务是按照某种策略和方法选取一个处于就绪状态的进程占有处理机。

A、作业B、交换C、进程D、线程7、当作业运行完毕,但它所占有的资源尚未全部被系统回收时,该作业处于()状态。

A、提交B、收容C、执行D、完成8、一个作业在其处于从输入设备进入外部存储设备的过程称为()状态。

A、提交B、收容C、执行D、完成9、当一个作业的全部信息已全部被输入进输入井但还未被调度去执行,此时该作业处于()状态。

A、提交B、收容C、执行D、完成10、()状态也称为后备状态。

A、提交B、收容C、执行D、完成11、一种既有利于短小作业又兼顾到长作业的作业调度算法是()A、先来先服务 B 、轮转C、最高响应比优先D、均衡调度12、作业调度程序是从处于()状态的作业中选取一个作业并把它装入主存。

A、输入B、收容C、执行D、完成13、下列选项中哪一个不属于作业调度算法的评价因素()A、单位时间内运行尽可能多的作业B、使各种I/O设备得以充分利用C 、对所有的作业都是公平合理的 D、使处理机尽可能保持“空闲”。

14、下列选项中哪一项不属于JCB的主要内容()A 作业名B 作业类型C 资源要求D 作业完成时间15、作业调度程序为选中作业建立进程并为这些进程分配的系统资源不包括下列哪一项()A、内存B、外存C、外设D、虚拟内存16、在操作系统中,JCB是指()。

A、作业控制块B、进程控制块C、文件控制块 D 程序控制块17、作业调度算法包括下列选项中的那些种()。

操作系统原理-第四章 处理机调度(有答案)

操作系统原理-第四章  处理机调度(有答案)

第四章处理机调度4.3 习题4.3.1 选择最合适的答案1.某系统采用了银行家算法,则下列叙述正确的是()。

A.系统处于不安全状态时一定会发生死锁B.系统处于不安全状态时可能会发生死锁C.系统处于安全状态时可能会发生死锁D.系统处于安全状态时一定会发生死锁2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。

A.Max[i,j]=Allocation[i,j]+Need[i,j]B.Need[i,j]= Allocation[i,j]+ Max[i,j]C.Max[i,j]= Available[i,j]+Need[i,j]D.Need[i,j]= Available[i,j]+ Max[i,j]3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。

A.非抢占式静态优先权法B.抢占式静态优先权法C.时间片轮转调度算法D.非抢占式动态优先权法4.在下列选项中,属于预防死锁的方法是()。

A.剥夺资源法B.资源分配图简化法C.资源随意分配D.银行家算法5.在下列选项中,属于检测死锁的方法是()。

A.银行家算法B.消进程法C.资源静态分配法D.资源分配图简化法6.在下列选项中,属于解除死锁的方法是()。

A.剥夺资源法 B.资源分配图简化法C.银行家算法 D.资源静态分配法7.为了照顾紧迫型作业,应采用()。

A.先来服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.优先权调度算法8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。

A.先来先服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.长作业优先调度算法9.作业从后备作业到被调度程序选中的时间称为()。

A.周转时间B.响应时间C.等待调度时间D.运行时间10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。

习题解答——第4章调度与死锁

习题解答——第4章调度与死锁

第4章调度与死锁思考与练习题2.考虑下面的进程集合:(1)(2)分别对以上两个进程集合,计算使用先来先服务(FCFS)、时间片轮转法(时间片q=1)、短进程优先(SPN)、最短剩余时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反馈队列(MFQ,第1个队列的时间片为1,第i(i<1)个队列的时间片q=2(i-1))算法进行CPU调度,请给出各进程的完成时间、周转时间、带权周转时间,及所有进程的平均周转时间和平均带权周转时间。

解答:(1)平均带权周转时间W=(1+1.4+3.5+1.2+1.6)/5=8.7/5=1.74平均带权周转时间W= (2+2.5+2+1.8+1.6)/5=9.4/5=1.98平均带权周转时间W=(1+1.8+1+1.2+1.6)/5=6.6/5=1.32平均带权周转时间W=(1+1.8+1+1.2+1.6)/5=6.6/5=1.32平均带权周转时间W=(1+1.4+3.5+1.2+1.6)/5=8.7/5=1.74多级反馈队列:第1个队列的时间片为1,第i(i<1)个队列的时间片q=2(i-1))即:平均带权周转时间W= (1.33+2.5+1.8+1.8+1.6)/5=9.03/5=1.806(2)平均带权周转时间W=(1+1+9+1.89)/4=3.22平均带权周转时间W=(1+1.89+1+1.89)/4=1.45平均带权周转时间W=3.22平均带权周转时间W=1.25平均带权周转时间W=3.22平均带权周转时间W=1.4453.考虑系统中出现的情况:(1)计算每个进程还可能需要的资源,并填入表的“仍然需要”栏目中。

(2)系统当前是否处于安全状态?为什么?(3)系统当前是否死锁?为什么?(4)如果进程P3又有新的请求(0,2,0,0),系统是否可以安全地接受此请求?解答:存在安全序列<P1,P4,P5,P2,P3>(3)不会发生死锁,因为存在安全序列,进程按此顺序执行可保证不死锁。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Resource = (R1, R2, … ,Rm) Available = (V1, V2, … ,Vm)
Max =
M11 M12 … M1m M21 M22 … M2m …… …… Mn1 Mn2 … Mnm C11 C12 … C1m C21 C22 … C2m …… …… Cn1 Cn2 … Cnm A11 A12 … A1m A21 A22 … A2m …… …… An1 An2 … Anm
存在安全序列<P2,P1,P3> 存在安全序列
安全状态
——实例
系统有三个进程P1、 、 ,共有12台磁带机 台磁带机, 系统有三个进程 、P2、P3,共有 台磁带机,进程 P1要求 台,P2要求 台,P3要求 台。在T0时刻, 要求10台 要求4台 要求9台 时刻, 要求 要求 要求 时刻 进程P1、 、 已获得 已获得7、 、 台 尚有1台未分配 台未分配, 进程 、P2、P3已获得 、2、2台,尚有 台未分配, 系统是否处于安全状态? 问:系统是否处于安全状态? 进程 P1 P2 P3 最大需求 10 4 9 已分配 7 2 2 可用 1
第4 章
调度与死锁
●调度类型与准则
本章要点
●调度算法
●死锁的基本概念 ●死锁的预防与避免 ●死锁的检测与解除

4.3 死锁的基本概念
一组竞争系统资源或相互通信的进程相互的“永久” 一组竞争系统资源或相互通信的进程相互的“永久” 阻塞。若无外力作用,这组进程将永远不能继续执行。 阻塞。若无外力作用,这组进程将永远不能继续执行。
不存在安全序列, 不存在安全序列,系统处于不安全状态
死锁的避免
●不安全状态:可能死锁 不安全状态: ●安全状态:一定能避免死锁 安全状态:
避免死锁的实质 ——如何使系统不进入不安全状态 如何使系统不进入不安全状态
Байду номын сангаас 银行家算法
数据结构定义
最著名的避免死锁的策略
系统中每种资源的总量 没有分配的每种资源总量 每个进程对每种资源的最大需求 Mij:第i个进程对第 种资源的最大需求 个进程对第j种资源的最大需求 第 个进程对第
(a)可能死锁
(b)死锁
产生死锁的原因
进程P 进程 …… get(A); …… get(B); …… release(A); …… release(B); ……
●资源数
A、B分别代 表某种资源 进程Q 进程 …… get(B); …… get(A); …… release(B); …… release(A); ……
安全状态
——实例
系统有三个进程P1、 、 ,共有12台磁带机 台磁带机, 系统有三个进程 、P2、P3,共有 台磁带机,进程 P1要求 台,P2要求 台,P3要求 台。在T0时刻, 要求10台 要求4台 要求9台 时刻, 要求 要求 要求 时刻 进程P1、 、 已获得 已获得5、 、 台 尚有3台未分配 台未分配, 进程 、P2、P3已获得 、2、2台,尚有 台未分配, 系统是否处于安全状态? 问:系统是否处于安全状态? 进程 P1 P2 P3 最大需求 10 4 9 已分配 5 2 2 可用 3
Need =
每个进程尚需的每种资源的数量
Allocation =
当前分配情况
银行家算法
分成两部分: ★银行家算法 分成两部分: 1.资源请求 ,进行资源预分配 资源请求 2.安全检测,若安全则真正资源分配,若不安全则回到预分配前的状态 安全检测, 安全检测 若安全则真正资源分配, 1.资源请求 资源请求 假设进程Pi提出资源请求 假设进程 提出资源请求 (1)如果 如果Request[*]≤Need[i, *],便转向步骤 ; 如果 [ ] [ ] 便转向步骤2; 否则认为出错, 因为它所请求的资源数已超过它所宣布需要的最大值。 否则认为出错, 因为它所请求的资源数已超过它所宣布需要的最大值。 (2)如果 (2)如果Request[*]≤Available[*],便转向步骤(3); 如果Request[*]≤Available[*] 便转向步骤(3); 否则, 表示尚无足够资源, 须等待 须等待。 否则, 表示尚无足够资源,Pi须等待。 (3)假定系统可以把资源分配给进程 , 并修改下面数据结构中的数值 假定系统可以把资源分配给进程 假定 系统可以把资源分配给进程Pi, :
消费者先行 死锁! 死锁!
问题的提出:对于生产者 消费者问题 消费者问题, 问题的提出:对于生产者-消费者问题,如果 操作的位置交换, 将P操作的位置交换,将产生什么样的后果? 操作的位置交换 将产生什么样的后果?
交换P操作的位置 交换 操作的位置
void producer() //生产者进程 生产者进程 {while (true) {produce an item in data_p; P(mutex); P(empty); buffer[i] = data_p; i = (i + 1) % n; V(mutex); V(full); } } void consumer()//消费者进程 消费者进程 {while (true) {P(full); P(mutex); data_c = buffer[j]; j = (j + 1) % n; V(mutex); V(empty); consume the item in data_c; } }
避免死锁是通过明智的选择, 避免死锁是通过明智的选择,确保系统永远不会 即动态地决定是否分配资源给进程! 到达死锁点 。即动态地决定是否分配资源给进程! 安全状态—与—不安全状态 安全状态 不安全状态
●安全状态是指系统至少存在一个安全序列 安全状态是指系统至少存在一个安全序列
<P1, P2, …, Pn>,按照这个序列为进程分配 ,按照这个序列为进程分配 资源,直到满足最大需求, 资源,直到满足最大需求,每个进程都可顺 序完成。 序完成。 若系统不存在这样一个安全序列, ●若系统不存在这样一个安全序列,则系统处 于不安全状态。 于不安全状态。
< 要求该种资源的进程数 ●进程的推进顺序非法
进程的推进顺序不当
进程Q 释放A P和Q都想要A 释放B 死锁 地带 申请A
y
(1) (2)
●(1)、(2) 、 、
(4) 、(5) 正常运行
●(3) 、(6)
P和Q都想要B
(3) (6) (5) (4) x
申请A 申请B 释放A 释放B 进程P
发生死锁
银行家算法
2.安全检测算法 安全检测算法 (1)设置两个向量: 设置两个向量: 设置两个向量 工作向量Work: 表示系统可提供给进程继续运行所需的各类资源 ① 工作向量 数目,它含有m个元素 初始时, 个元素。 数目,它含有 个元素。初始时,Work[*] =Available[*]; 表示系统是否有足够的资源分配给某进程, ② Finish: 表示系统是否有足够的资源分配给某进程,使之运行完成 初始时Finish[i]=false; 当有足够资源分配给进程时 , 令 Finish[i] 当有足够资源分配给进程时, 。 初始时 [] [] =true。 。 (2)从进程集合中找到一个能满足下述条件的进程: 从进程集合中找到一个能满足下述条件的进程: 从进程集合中找到一个能满足下述条件的进程 ① Finish[i]=false; [] ② Need[i,*]≤Work[*]; [ ] [ ] 若找到, 则执行步骤(3), 否则,执行步骤(4)。 若找到, 则执行步骤 , 否则,执行步骤 。 (3)当进程 获得资源后 , 可顺利执行 , 直至完成 , 并释放出分配给它 当进程Pi获得资源后 可顺利执行,直至完成, 当进程 获得资源后, 的资源,故应执行: 的资源,故应执行: ① Work[*]=Work[*]+Allocation[i, *]; [ ] [ ] [ ] ② Finish[i]=true; [] 返回步骤( 返回步骤 2); (4)如果所有进程的 如果所有进程的Finish[i]=true都满足, 则表示系统处于安全状态 都满足, 如果所有进程的 [] 都满足 否则,系统处于不安全状态。 ;否则,系统处于不安全状态。
优点: 优点:
– 方法简单
缺点: 缺点:
– 进程延迟运行 – 资源浪费 – 用户有时提不出他要使用的全部资源

4.4死锁的预防与避免 死锁的预防与避免
死锁的预防 方法
互斥条件不可禁止 去掉“请求保持条件” 去掉“请求保持条件”
–占有某些资源的进程,当它有新的资源请求被拒绝时, 占有某些资源的进程,当它有新的资源请求被拒绝时, 占有某些资源的进程 该进程停止运行,并释放它所占有的资源。当它再次 该进程停止运行,并释放它所占有的资源。 被执行时,重新申请资源。 被执行时,重新申请资源。 –如果一个进程请求另一个进程占有的资源,操作系统 如果一个进程请求另一个进程占有的资源, 如果一个进程请求另一个进程占有的资源 可以剥夺后者占有的资源, 可以剥夺后者占有的资源,要求它释放资源并将资源 分配给前者使用
Allocation[i, *]=Allocation[i, *]+Request[*]; [ ] [ ] [ ]
Available[*]=Available[*]-Request[*]; [ ] [ ] [ ] Need[i, *]=Need[i, *]-Request[*]; [ ] [ ] [ ] (4)系统执行安全检测算法, 检查此次资源分配后 , 系统是否处于安全 系统执行安全检测算法, 系统执行安全检测算法 检查此次资源分配后, 状态。若安全, 才正式将资源分配给进程Pi, 以完成本次分配; 否则, 状态 。 若安全 , 才正式将资源分配给进程 , 以完成本次分配 ; 否则 , 将本次的试探分配作废,恢复原来的资源分配状态,让进程Pi等待 等待。 将本次的试探分配作废,恢复原来的资源分配状态,让进程 等待。
相关文档
最新文档