进程调度与死锁部分练习题
计算机操作系统习题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.多个终端能够得到系统及时响应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,假定它们同时到达,并在同一台处理器上以单道方式运行,则平均周转时间最小的执行顺序是()。
操作系统之调度算法和死锁中的银行家算法习题参考答案

操作系统之调度算法和死锁中的银行家算法习题参考答案集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-1.有三个批处理作业,第一个作业10:00到达,需要执行2小时;第二个作业在10:10到达,需要执行1小时;第三个作业在10:25到达,需要执行25分钟。
分别采用先来先服务,短作业优先和最高响应比优先三种调度算法,各自的平均周转时间是多少?解:先来先服务:(结束时间=上一个作业的结束时间+执行时间周转时间=结束时间-到达时间=等待时间+执行时间)按到达先后,执行顺序:1->2->3短作业优先:1)初始只有作业1,所以先执行作业1,结束时间是12:00,此时有作业2和3;2)作业3需要时间短,所以先执行;3)最后执行作业2最高响应比优先:高响应比优先调度算法既考虑作业的执行时间也考虑作业的等待时间,综合了先来先服务和最短作业优先两种算法的特点。
1)10:00只有作业1到达,所以先执行作业1;2)12:00时有作业2和3,作业2:等待时间=12:00-10:10=110m;响应比=1+110/60=2.8;作业3:等待时间=12:00-10:25=95m,响应比=1+95/25=4.8;所以先执行作业33)执行作业22.在一单道批处理系统中,一组作业的提交时刻和运行时间如下表所示。
试计算一下三种作业调度算法的平均周转时间T和平均带权周转时间W。
(1)先来先服务;(2)短作业优先(3)高响应比优先解:先来先服务:作业顺序:1,2,3,4短作业优先:作业顺序:1)8:00只有作业1,所以执行作业1;2)9:00有作业2和3,作业3短,所以先执行3;3)9:12有作业2和4,作业4短,所以先执行4;4)执行作业2高响应比优先:作业顺序:1)8:00只有作业1,所以执行作业1;2)9:00有作业2和3作业2等待时间=9:00-8:30=30m,响应比=1+30/30=2;作业3等待时间=9:00-9:00=0m,响应比=1+0/12=1;所以执行作业2;3)9:30有作业3和4作业3等待时间=9:30-9:00=30m,响应比=1+30/12=3.5;作业4等待时间=9:30-9:06=24m,响应比=1+24/6=5;所以执行作业44)执行作业33.设系统中有3种类型的资源(A,B,C)和5个进程(P1,P2,P3,P4,P5),A资源的数量为17,B资源的数量为5,C资源的数量为20。
处理机调度与死锁习题

处理机调度与死锁1.进程调度的两种基本方式:和2.处理机调度分为三级,分别是:,,3.在抢占调度方式中,抢占的原则有,,4.对于批处理作业的调度,一次可以从后备作业中选择个作业进入主存储器(A)一个 (B)一个或一个以上 (C)全部 (D)都不是5. 在分时系统控制下,对终端用户采用方法占用CPU(A)时间片轮转 (B) 轮流使用计算机(C) 每人一机 (D) 人-机对话6. 常用的批处理进程的调度算法有,,7. 在操作系统中,死锁出现指的是:(A)计算机发生重大故障(B)资源数远远少于进程数(C)若干进程因竞争资源而无限等待其他进程释放已占有的资源(D)进程同时申请的资源数超过资源总数8. 死锁产生的基本原因有:,9. 某系统有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是10. 预防死锁的预先分配法和资源有序分配法,它们分别破坏了产生死锁的必要条件中的和11.银行家算法在解决死锁问题中是用于的(A)预防死锁(B)避免死锁(C)检测死锁(D)解除死锁12.优先权是创建进程时确定,确定之后就不再发生改变的(A)先来先服务(B)静态(C)动态(D)短作业13.某系统中有11台打印机,N个进程共享该资源,每个进程要求3台。
当N的取值不超过时,系统不会发生死锁。
(A)4 (B)6 (C)5 (D)714.银行家算法中,当一个进程提出的资源请求将导致系统从进入时,系统就拒绝该资源分配请求15.进程调度算法采用时间片轮转法,时间片过大时,就会使轮转法转化为调度算法。
16.现有3个同时到达的作业J1,J2,J3,他们的执行时间分别为T1,T2,T3,且T1<T2<T3。
系统按单道方式运行且采用短作业优先的算法,则平均周转时间是17.既考虑作业等待时间又考虑作业执行时间的调度算法是(A)响应比高者优先(B)短作业优先(C)优先级调度(D)先来先服务18.某进程被唤醒后立即投入运行,我们就说这个系统采用的是剥夺式调度算法,对吗?为什么?19.产生死锁的必要条件是什么?常用的解决死锁的措施有哪些?20. 设有3道作业job1,job2,job3,提交时间分别为8,8.2,8.4,执行时间分别为2,1,0.5,则按FCFS算法和SJF的平均周转时间分别为多少?21.有5个批处理作业(A,B,C,D,E)几乎同时到达,估计的运行时间分别为2,4,6,8,10,它们的优先数分别为1,2,3,4,5(1为低优先数),对下面的每种调度算法,分别计算作业的平均周转时间。
进程调度与死锁处理

进程调度与死锁处理基本信息:[矩阵文本题] *1. ()又称为轻量级进程,是处理机调度的基本单位。
[填空题] * _________________________________(答案:线程)2. 用户级线程到内核控制线程的映射模型包括: *多对一模型(正确答案)一对多模型多对多模型(正确答案)一对一模型(正确答案)3. 高级调度又称为()或(),它的调度对象是作业。
*作业调度(正确答案)长程调度(正确答案)进程调度短程调度4. 低级调度又称为()或(),它的调度对象是进程。
*进程调度(正确答案)作业调度短程调度(正确答案)中程调度5. 低级调度的主要功能包括: *保存处理机的现场信息(正确答案)按某种算法选取进程(正确答案)把处理机分配给进程(正确答案)从外存的后备队列中选取某些作业调入内存6. 中级调度又称为()调度,其主要功能是在内存资源紧张时,将内存中那些暂时不能运行的进程调至外存上去等待;当这些进程具备运行条件且内存资源允许时,由中级调度决定把外存上的那些具备运行条件的就绪进程重新调入内存,修改其状态为就绪状态,挂在就绪队列上等待进程调度。
[填空题] *_________________________________(答案:中程)7. 下面关于处理机调度的说法正确的是: *高级调度主要用于多道批处理系统中(正确答案)低级调度可用于多道批处理、分时和实时(正确答案)高级调度的运行频率较低,一般约几分钟(正确答案)低级调度的运行频率较高,一般约几十毫秒一次(正确答案)8. 进程调度有可能在以下情况发生: *当一个进程退出时。
(正确答案)当一个进程在I/O设备或信号量上阻塞时。
(正确答案)当一个新进程创建时。
(正确答案)当一个I/O中断或时钟中断发生时。
(正确答案)9. 进程一旦被分配处理机,可以一直运行直到执行完毕或发生某事件而被阻塞,这种调度方式称为: [单选题] *抢占式调度非抢占式调度(正确答案)优先级调度调度10. 选择调度算法的性能准则包括: *周转时间短、响应时间短、等待时间短(正确答案)系统吞吐量高、处理机利用率好、各种资源均衡利用(正确答案)低成本、易实现(正确答案)兼顾优先权准则和公平性(正确答案)11. 下列关于计算机系统中资源的描述正确的是: *需要排它使用的对象称为资源。
操作系统第3章习题-答案

第3章调度与死锁一、单项选择题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. 某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是________。
A. 9 =B. 10C. 11D. 1210. 以优先级为基础的进程调度算法可以保证在任何时候正在运行的进程总是诸就绪进程中优先级最高的进程。
上述描述是________。
A. 正确的=B. 错误的11. 当检测出发生死锁时,可以通过撤消一个进程解除死锁。
上述描述是________。
A. 正确的=B. 错误的12. 在下列解决死锁的方法中,属于死锁预防策略的是____。
OS-处理机调度 死锁 内存管理-习题

【例 4-5】某系统采用固定分区分配存储管理,内存空间为 640K,其中地址 0 到 40K 被系统 占用,其它空间按分区大小相等的方法划为 4 个分区,则当有大小分别为 7 KB、90KB、30KB、 20KB 的作业进入内存时,浪费的内存为( )。
A.3KD B.450KB C.453KB D.147KB
【例 3-16】某系统中有 11 台打印机,N 个进程共享打印机资源,每个进程要求 3 台。当 N
的取值不超过( )时,系统不会发生死锁。
A.4
B.5
C.6
D.7
二、综合应用题 【例 3-17】对于下述处理机调度算法分别画出进程状态转换图。 (1) 时间片轮转算法; (2) 可抢占处理机的优先数调度算法; (3) 不可抢占处理机的优先数调度算法。
【例 3-9】在非剥夺调度方式下,运行进程执行 V 原语后,其状态( )。
A.不变
B.要变
C.可能要变 D.可能不变
【例 3-10】在分时系统中,进程调度除了采用时间片轮转算法,还可以结合( )调度算法。 A.可剥夺 CPU 的动态优先数调度算法 B.先来先服务调度算法 C.短作业优先调度算法 D.高响应比优先调度算法
【例 3-18】假定在单 CPU 条件下有下列要执行的作业:
表 2-1
作业 运行时间 优先级
1
10
2
2
4
3
3
3
5
作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间
单位)。
(1)描述在采用非抢占式优先级算法时执行这些作业的情况。
PDF 文件使用 "pdfFactory Pro" 试用版本创建
【例 3-5】假设就绪队列中有 10 个进程,系统将时间片设为 400ms,CPU 进行进程切换要花
调度与死锁 例题

处理机的3级调度在以下情况发生:
• 高级调度:适合于“批处理系统”。 该调度从后备作业中选择一个或多个 作业进入内存,创建为进程,分配必要的 系统资源,然后将进程设为“就绪”,挂 入就绪队列。
处理机的3级调度在以下情况发生:
• 中级调度:为了缓解内存紧张压力而采用 的一种技术。 当内存中的进程因存储空间紧张导致 系统效率降低时,该技术可将暂时不运行 的进程换至外存挂起来,让腾出来的内存 空间分给其它进程运行。 一旦内存空间宽余时就将外存的挂起 进程重新换入内存。当外存中的挂起进程 较多时,就需要利用中级调度选择其中的 一部分换入。
低级调度完成进程调度,使“就绪”的进 程在CPU上“运行”。
2、进程调度又称为低级调度,其主要功能是 ( )。 A.选择一个作业调入内存 B.选择一个主存中的进程调出到外存 C.选择一个外存中的进程调入到主存 D.将一个就绪的进程投入运行
2、进程调度又称为低级调度,其主要功能是(D )。 A.选择一个作业调入内存 B.选择一个主存中的进程调出到外存 C.选择一个外存中的进程调入到主存 D.将一个就绪的进程投入运行 解:本题考核进程调度的基本功能,相关概念有: 选择一个作业调入内存是批处理系统的作业调度所实 现的功能。 选择一个主存中的进程调出到外存是进程换出的功能。 选择一个外存中的进程调入到主存是进程的换入功能, 是中级调度的组成部分。 将进程投入运行是进程调度的功能。 本题的正确答案应为D。
解 ① 系统在T0时刻:存在一个安全的序列(P4、P5、P1、 P2、P3),因而是安全的。 ② 若在T0时刻进程P2请求资源(0,3,4),因为可用 资源的数量不够,所以只能推迟分配。
③ 在②基础上,若进程P4请求资源(2,0,1),系统 可以予以满足。因为当分配给P4后,系统剩余的可 用资源为(0,3,2),仍能找到一个安全的序列, 比如(P4、P5、P1、P2、P3)。 ④ 在 ③的基础上,若进程P1请求资源(0,2,0), 系统不予以分配。因为分配出去后,系统找不到一 个安全序列。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章进程调度与死锁练习题(一)单项选择题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 )。
A.作业调度不当 B.系统中进程太多C.资源的独占性 D.资源竞争和进程推进顺序都不得当13.死锁的防止是根据( C )采取措施实现的。
A.配置足够的系统资源 B.使进程的推进顺序合理C.破坏产生死锁的四个必要条件之一 D.防止系统进入不安全状态14.采用按序分配资源的策略可以防止死锁.这是利用了使( B)条件不成立。
A.互斥使用资源 B.循环等待资源 C.不可抢夺资源 D.占有并等待资源15.可抢夺的资源分配策略可预防死锁,但它只适用于(D )。
A.打印机 B.磁带机 C.绘图仪 D.主存空间和处理器16.进程调度算法中的( A )属于抢夺式的分配处理器的策略。
A.时间片轮转算法 B.非抢占式优先数算法 C.先来先服务算法 D.分级调度算法17.用银行家算法避免死锁时,检测到(C )时才分配资源。
A.进程首次申请资源时对资源的最大需求量超过系统现存的资源量B.进程己占用的资源数与本次申请资源数之和超过对资源的最大需求量C.进程已占用的资源数与本次申请的资源数之和不超过对资源的最大需求量,且现存资源能满足尚需的最大资源量D.进程已占用的资源数与本次申请的资源数之和不超过对资源的最大需求量,且现存资源能满足本次申请量,但不能满足尚需的最大资源量18.实际的操作系统要兼顾资源的使用效率和安全可靠,对资源的分配策略,往往采用( D )策略。
A.死锁的防止 B.死锁的避免 C.死锁的检测 D.死锁的防止、避免和检测的混合(二)填空题1.常用的进程调度算法有先来先服务__短作业优先______、_高优先权_______、_____时间片轮转___及分级调度等算法。
2.采用优先数调度算法时,一个高优先数进程占用处理器后可有_抢占式_______或__非抢占式______两种处理方式。
3.进程调度算法的选择准则有处理器利用率、__吞吐量______、响应时间和____等待时间____等。
4.先来先服务算法仅从到达的先后次序去选作业,可能会使计算时间__短____的作业等待时间过长______。
5.计算时间短的作业优先算法只考虑用户估计的计算时间,可能使计算时间____长__的作业等待太____久__。
6.采用计算时间短的作业优先算法,肯定能使_平均周转时间_____最小。
7.响应比最高者优先算法综合考虑作业的_等待时间_____和___计算时间___。
8.确定作业的优先数可以由__用户____来提出自己作业的优先数,也可以由_操作系统_____根据作业的缓急程度、作业类型等因素综合考虑。
9.若系统中存在一种进程,它们中的每一个进程都占有了某种资源而又都在等待其中另一个进程所占用的资源。
这种等待永远不能结束,则说明出现了资源管理不当______。
10.系统出现死锁的四个必要条件是:互斥使用资源,_占有并等待资源_____,不可剥夺资源和循环等待资源______。
11.如果资源分配图中无环路,则系统中__无死锁____发生。
12.为了防止死锁的发生,只要采用分配策略破坏四个必要条件_一个条件不成立_____。
13.对资源采用_预分配资源_____的策略可以使循环等待资源的条件不成立。
14.如果操作系统能保证所有的进程在有限的时间内得到需要的全部资源,则称系统处于__安全状态____。
15.只要能保持系统处于安全状态就可避免_死锁_____的发生。
16.可以证明,M个同类资源被n个进程共享时,只要不等式__n(x- 1)+l<=m____成立,则系统一定不会发生死锁,其中x为每个进程申请该类资源的最大量。
17.死锁检测方法要解决两个问题,一是_判断系统_____是否出现了死锁,二是当有死锁发生时怎样去__解除死锁____。
18.如果资源类中含有若干个资源,应根据进程对各类资源的占有量、_尚需量_____和各类资源的___剩余量___来考虑是否有死锁存在。
19.解除死锁的方法有两种,一种是_终止_____一个或几个进程的执行以破坏循环等待,另一种是从其他进程__抢夺资源____20.中断某个进程并解除死锁后,此进程可从头开始执行,有的系统允许进程退到发生死锁之前的那个_校验点_____开始执行。
(三)计算题1.设有PA,PB,PC,PD四个进程同时依次进入就绪队列它们所需的处理器时间和优先数如下表所示:进程处理器时(秒) 优先数PA 20 2PB 15 3PC 10 5PD 12 3若不计调度等所消耗的时间。
请回答:(1)分别写出采用“先来先服务”和“非抢占式的优先数”调度算法选中的进程执行的次序.(2)在上述两种算法下,分别算出每个进程在就绪队列的周转时间。
(1)进程执行次序为:先来先服务法:Pa,Pb,Pc,Pd;非抢占式的优先数法:Pc,Pb,Pd,Pa(2)先来先服务法:每个进程在就绪队列的等待时间分别为PA:0秒;Pb:0+20=20(秒);Pc:20+15=35(秒) Pd:35+10=45(秒);平均等待时间为(0+20+35+45)/4=25(秒);非抢占式的优先数法:每个进程在就绪队列中的等待时间为:Pa:25+12=37(秒); Pb:0+10=l0(秒); PC: 0秒; Pd:10+15=25(秒);平均等待时间为(37+l0+0+25)/4=18(秒)2.若有10个同类资源供三个进程共享,下表列出了这三个进程目前己占资源和最大需求量的情况,现在这三个进程P1,P2,P3又分别申请1个、2个、1个资源,请问:(1)能否先满足进程P2的要求?为什么?(2)如何为这三个进程分配资源比较合适?进程已占资源数最大需求量P1 3 7P2 3 8P3 2 3(1)根据表,P1,P2和P3三个进程尚需资源数分别是4,5和l,系统的资源剩余量为2,若把剩余的资源量全部分配给P2,系统产已无资源可分配,使三个进程都等待资源而无法完成,形成死锁。
所以不能先满足进程P2的要求。
(2)可先为进程P3分配1个资源,当它归还3个资源后,这样共有4个可分配资源,可满足P1申请1个资源的要求,再分配3个资源给进程P1,待P1归还7个资源后,先满足P2申请2个资源的请求,分配给进程P2,再分配3个资源给P2,使它完成。
3.现有五个进程A,B,C,d,E共享Rl,R2,R3,R4这四类资源,进程对资源的需求量和目前分配情况如下表。
若系统还有剩余资源数分别为R1类2个,R2类6个,R3类2个和R4类1个,请按银行家算法回答下列问题:(1)目前系统是否处于安全状态? (2)现在如果进程D提出申请(2,5,0,0)个资源,系统是否能为它分配资源?进程已占资源数最大需求量R1 R2 R3 R4 R1 R2 R3 R4A 3 6 2 0 5 6 2 0B 1 0 2 0 1 0 2 0C 1 0 4 0 5 6 6 0D 0 0 0 1 5 7 0 1E 5 3 4 1 5 3 6 2(1)系统目前尚余有的资源数为(2,6,2,1),五个进程尚需的资源数分别是 A:(2,0,0,0) ; B:(0,0,0,0); C:(4,6,2,0) ; D:(5,7,0,0); E:(0,0,2,1);由于进程B己满足了全部资源需求,它在有限时间内会归还这些资源,因此可分配资源达到(3,6,4,1),这样就可分配给进程A;等A归还资源后,可分配资源达到(6,12,6,1),再分配给进程C;之后可分配资源会达到(7,12,10,1),分配给进程D并等待一段时间后,可分配资源将达到(7,12,10,2),最后,可分配给进程E,满足其全部请求。
所以说目前系统处于安全状态。
(2)若此时给进程D分配(2,5,0,0)个资源,进程D尚需(3,2,0,0),则系统剩余的资源量为(0,1,2,1);若待进程B归还资源后,可分配资源能达到(1,1,4,1),根据各进程尚需资源量,只有先满足E的资源需求,待它归还资源后,可配资源只有(6,4,8,2),这样就可分配给进程A;等A归还资源后,可分配资源达到(9,10,10,2),再分配给进程C;之后可分配资源会达到(10,10,14,2),最后,可分配给进程D,满足其全部请求。
所以说此时给进程D分配(2,5,0,0)个资源,目前系统处于安全状态。
4.假设系统配有相同类型的m个资源,系统中有n个进程,每个进程至少请求一个资源(最多不超过m)。
请证明,当n个进程最多需要的资源数之和小于(m+n)时,该系统不会发生死锁。
证明:设N个进程请求的最大资源量分别为xi,i=1,2,…n。
根据条件∑xi<m+n, 从而∑(xi-1)<m, ∴∑(xi-1)+1<=m.资源申请最坏的情况是每个进程已得到了(xi-1)个资源,现均要中请最后一个资源,由上式可知系统至少还有一个剩余资源可分配给某个进程,待它归还资源后就可供其他进程使用,因此该系统不会发生死锁。