工学

问答题某系统有R1设备3台,R2设备4台,它们被P1、P2、P3和P4进程共享,且已知这4个进程均按以下顺序使用设备: →申请R1→申请R2→申请R1→释放R1→释放R2→释放R1 系统运行中可能产生死锁吗?为什么?

题目
问答题
某系统有R1设备3台,R2设备4台,它们被P1、P2、P3和P4进程共享,且已知这4个进程均按以下顺序使用设备: →申请R1→申请R2→申请R1→释放R1→释放R2→释放R1 系统运行中可能产生死锁吗?为什么?
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若系统中有同类资源16个,有4个进程共享该资源。已知P1、P2、P3、P4所需总资源分别是8、5、9、6。各进程请求资源次序为(序号,进程,申请量):(1,P1,6)、(2,P2,4)、(3,P3,5)、(4,P4,1)、(5,P1,1)、(6,P2,1)。若用银行家算法为它们分配资源,分析每一步请求以后,各个进程还需的资源数以及系统所剩资源数,并指出系统是否安全。注,当某序号的申请导致系统不安全时,跳过该请求(拒绝该请求)继续往下判断,相当于将该进程阻塞。


正确答案:①(1P16)余资源10。此时P1还需2P2还需5P3还需9P4还需6。系统存在安全序列:{P1P2P3P4}故系统安全。②(2P24)余资源6。此时P1还需2P2还需1P3还需9P4还需6。系统存在安全序列:{P1P2P3P4{故系统安全。③(3P35)余资源1。此时P1还需2P2还需1P3还需4P4还需6。系统存在安全序列:{P2P1P3P4}故系统安全。④(4P41)余资源0。此时P1还需2P2还需1P3还需4P4还需5。系统不存在安全序列故系统不安全。请求(4P41)是不安全的排除该请求继续往后判断。⑤(5P11)余资源0。此时P1还需1P2还需1P3还需4P4还需6。系统不存在安全序列故系统不安全。请求(5P11)是不安全的排除该请求继续往后判断。⑥(6P21)余资源0。此时P1还需2P2还需0P3还需4P4还需6。P2进程资源已得到完全满足P2完成后资源释放。系统存在安全序列:{P2P1P3P4}故系统安全。至此6个进程均进行了是否分配资源判断。
①(1,P1,6)余资源10。此时P1还需2,P2还需5,P3还需9,P4还需6。系统存在安全序列:{P1,P2,P3,P4},故系统安全。②(2,P2,4)余资源6。此时P1还需2,P2还需1,P3还需9,P4还需6。系统存在安全序列:{P1,P2,P3,P4{,故系统安全。③(3,P3,5)余资源1。此时P1还需2,P2还需1,P3还需4,P4还需6。系统存在安全序列:{P2,P1,P3,P4},故系统安全。④(4,P4,1)余资源0。此时P1还需2,P2还需1,P3还需4,P4还需5。系统不存在安全序列,故系统不安全。请求(4,P4,1)是不安全的,排除该请求,继续往后判断。⑤(5,P1,1)余资源0。此时P1还需1,P2还需1,P3还需4,P4还需6。系统不存在安全序列,故系统不安全。请求(5,P1,1)是不安全的,排除该请求,继续往后判断。⑥(6,P2,1)余资源0。此时P1还需2,P2还需0,P3还需4,P4还需6。P2进程资源已得到完全满足,P2完成后,资源释放。系统存在安全序列:{P2,P1,P3,P4},故系统安全。至此,6个进程均进行了是否分配资源判断。 解析:问题1是概念性,问题2是对系统安全的理解,问题3就是银行家算法的一个具体实现,按照银行家算法的详细描述可得。

第2题:

假设系统中有三类互斥资源R1,R2和R3,可用资源数分别为9,8和5。在T0时刻系统中有P1,P2,P3,P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如表3-2所示。如果进程按______ 序列执行,那么系统状态是安全的。

A.P1→P2→P4→P5→P3

B.P2→P1→P4→P5→P3

C.P2→P4→P5→P1→P3

D.P4→P2→P5→P1→P3


正确答案:C
解析:由题意,R1,R2的和R3最大资源数为9,8,5。R1,R2和R3的已分配资源总数为7,7和5。因此系统中R1,R2和R3的剩余可分配资源数为2,1,0。按照什么样的顺序分配剩余的资源而不会引起死锁是解决这个问题的关键。这样的顺序可能不止一种,但总的原则是:将剩余的资源分配给某一个可以顺利完成的进程,然后收回释放的资源,再次分配给另一个可以完成的进程,然后再次收回释放的资源。按照这样的顺序推进下去,就可以保证系统不会死锁,才会是安全的。对于本题,我们可以先把剩余资源分配给P2,因为它只需要一个R2资源。P2执行完毕后,系统的可用资源数增加到4,2,1。再把资源分配给P4,因为P4只需要1个只3资源。依次类推,按照P2→P4→P5→P1→P3的顺序执行,系统是安全的。

第3题:

在一个单CPU的计算机系统中,有两台外部设备R1、R2和三个进程P1、P2、P3。系统采用可剥夺式优先级的进程调度方案,且所有进程可以并行使用I/O设备,三个进程的优先级、使用设备的先后顺序和占用设备时间如下表所示:

假设操作系统的开销忽略不计,三个进程从投入运行到全部完成,CPU的利用率约为(26)%;R2的利用率约为(27)%(设备的利用率指该设备的使用时间与进程组全部完成所占用时间的比率)。

A.60

B.67

C.78

D.90


正确答案:D
解析:由于使用处理机和输入输出设备时采取可剥夺式多任务并行工作方式,所以在分析每个进程都需要多长时间完成时,可以采用优先级高的进程先分析的方法。高优先级的进程有优先获取资源的权利,因而最高优先级的进程P1发出申请设备的请求会立即得到响应,各设备占用时间为:
 
在P1占用设备的基础上,P2可以在剩下的进程中优先得到资源:
 
在P1、P2占用设备的基础上,P3可以在剩下的空闲时间中占用资源;
 
  从图可以看出P2在使用R1设备20ms后,要使用CPU30ms,但当其运行10ms后, P1要使用CPU,由于系统采用可剥夺方式调度,P1优先级高,所以将P2暂停,让P1先运行。同理,P3开始就使用CPU,但在运行20ms后,要让给高优先级的进程P2和 P1。P1从投入运行到完成需要80ms,而P2、P3由于等待资源,运行时间都延长为100ms。 CPU在90ms~100ms共10ms时间内没有利用,所以利用率为90/100=90%,同样计算得R2的利用率为70/100=70%,R1的利用率为60%。

第4题:

● 某系统中有四种互斥资源 R1、R2、R3 和 R4,可用资源数分别为 3、5、6 和 8。假设在 T0 时刻有 P1、P2、P3 和 P4 四个进程,并且这些进程对资源的最大需求量和已分配资源数如下表所示,那么在 T0时刻系统中 R1、R2、R3和 R4 的剩余资源数分别为 (21) 。如果从 T0 时刻开始进程按 (22) 顺序逐个调度执行,那么系统状态是安全的。

(21)

A. 3、5、6 和 8

B. 3、4、2 和 2

C. 0、1、2 和 1

D. 0、1、0 和 1

(22)

A. P1→P2→P4→P3

B. P2→P1→P4→P3

C. P3→P2→P1→P4

D. P4→P2→P3→P1


正确答案:D,C

第5题:

若系统中有同类资源16个,由4个进程P1、P2、P3和P4共享该资源。已知P1、P2、P3和P4所需的资源总数分别为8、5、9和6。各进程请求资源的次序见表2-2,若系统采用银行家算法为它们分配资源,那么第(24)次申请分配会使系统进入死锁状态。

A.②或④

B.③或⑥

C.④或⑤

D.⑤或⑥


正确答案:C
解析:操作系统分配资源时的一个重要考虑是避免死锁的发生。若系统采用银行家算法为4个进程P1、P2、P3和P4分配资源,那么各进程请求资源后的系统状态如表2-10所示。

  由表2-10的求解过程可知,若系统采用银行家算法为它们分配资源,那么第④或⑤次申请分配会使系统进入死锁状态。

第6题:

假设系统处于安全状态,目前系统剩余资源数量为2,哪个进程序列不是安全序列?进程 已占资源数 最大需求数P1 P2 P3 P4 1 4 3 5 2 7 5 7

A.P1,P2,P3,P4

B.P2,P3,P4,P1

C.P3,P1,P2,P4

D.P4,P3,P2,P1


正确答案:B
解析:如果存在一个由系统中的所有进程构成的安全序列,则说系统处于安全状态。安全序列是指在一个进程序列P1,P2,…Pn>中,对每一个进程Pi(1≤i≤n),它以后尚需要的资源数量不超过系统中当前剩余资源量与所有进程巧(ii)当前占有资源的数量。按上述方法计算,对于进程P2,已占资源数为4,最大需求数为7,所以还需要资源数为3,现在系统剩余资源为2,若其他进程的资源不可抢占,则P2进程就无法执行。其他几个序列中没有这个问题。所以正确答案为B。

第7题:

假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为9、8和5。在T0时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示。如果进程按(27)序列执行,那么系统状态是安全的。

A.P1→P2→P4→P5→P3

B.P2→P1→P4→P5→P3

C.P2→P4→P5→P1→P3

D.P4→P2→P4→P1→P3


正确答案:C
解析:本题考查的是操作系统进程管理中死锁检测的多项资源银行家算法。
  解:剩余资源量为(2,1,0),进程尚需资源数为
 
  P2还需资源(0,1,0),而此时系统可用资源为(2,1,0)能满足条件,故P2能运行完,作上完成标志true,如下表所示。P2释放资源后系统的可用资源为(4,2, 1):此时P4尚需资源(0,0,1),系统能满足P4的请求,故P4能运行完,作上完成标志true,P4释放资源后系统的可用资源为(5,4,1);此时P5尚需资源(3,4,4),系统能满足P5的请求,故P5能运行完,作上完成标志true,P5释放资源后系统的可用资源为(6,5,4);依此类推。进程可按P2→P4→P5→P1→P3的顺序执行,每个进程都可以获得需要的资源运行完毕,做上完成标记,所以系统的状态是安全的。
  根据试题的可选答案,正确的答案应为C。
 

第8题:

假设系统中有4类互斥资源R1、R2、R3和R4,可用资源数分别为9、6、3和3。在T0时刻系统中有P1、P2、P3和P4这4个进程,这些进程对资源的最大需求量和已分配资源数如表4-1所示。在T0时刻,如果P1、P2、P3和P4进程按(14)序列执行,那么系统状态是安全的。

A.P1→P2→P4→P3

B.P2→P1→P4→P3

C.P3→P4→P1→P2

D.P4→P2→P1→P3


正确答案:D
解析:由于资源R1-R4属于系统中的互斥资源,且可用资源数分别为9、6、3和3,而在TO时刻系统已给P1~P4这4个进程分配了相应的资源数(如表4-1所示),其中进程P1~P4分别对 R1~R4资源的已分配累计为6、5、3、3,因此在T0时刻系统剩余的可用资源数分别为3、1、0和0。此时,只需分配一个R1资源给进程P4,就能满足该进程对资源的最大需求量。进程P4执行完毕后,系统剩余的可用资源数分别为4、3、1和1。接着给进程P2分配一个R2资源和一个R3资源,就能满足该进程对资源的最大需求量。进程P2执行完毕后,系统剩余的可用资源数分别为6、4、2和2。此时,给进程P1分配5个R1资源、3个R2资源和1个R3资源,就能满足该进程对资源的最大需求量。进程P1执行完毕后,系统剩余的可用资源数分别为7、5、3和3,能够满足进程P3对资源的最大需求量。当进程 P2执行完毕后,若给进程P3分配6个R1资源、1个R3资源和1个R4资源,就能满足该进程对资源的最大需求量。进程P3执行完毕后,系统剩余的可用资源数分别为8、5、2和2,也能够满足进程P1对资源的最大需求量。可见,P1~P4进程按P4→P2→P1→P3和P4→P2→P3→P1序列执行,系统状态都是安全的。

第9题:

操作系统分配资源时的一个重要考虑是避免死锁的发生。若系统中有同类资源16个,由四个进程P1、P2、P3和P4共享该资源。已知P1、P2、P3、P4所需的资源总数分别为8、5、9、6,各进程请求资源的次序如下表所示。若系统采(25)次申请分配会使系统进入不安全状态。

A.3、4

B.3、5

C.4、5

D.5、6


正确答案:C

第10题:

● 假设系统中有四类互斥资源R1、R2、R3和R4,可用资源数分别为9、6、3和3。在T0时刻系统中有P1、P2、P3和P4四个进程,这些进程对资源的最大需求量和已分配资源数如下表所示。在T0时刻系统剩余的可用资源数分别为 (10) 。如果P1、P2、P3和P4进程按 (11) 序列执行,那么系统状态是安全的。


正确答案:B,D

更多相关问题