软件水平考试

设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况,可能会发生死锁两种情况中,若将( ),则不会发生死锁。 A.n加1或w加1 B.m加1或w减1 C.m减1或w加1 D.m减1或w减1

题目
设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况,可能会发生死锁两种情况中,若将( ),则不会发生死锁。

A.n加1或w加1
B.m加1或w减1
C.m减1或w加1
D.m减1或w减1
参考答案和解析
答案:B
解析:
如下: 情况a:m=2,n=1,w=2,系统中有2个资源,1个进程使用,该进程最多要求2个资源,所以不会发生死锁。 情况b:m=2,n=2,w=1,系统中有2个资源,2个进程使用,每个进程最多要求1个资源,所以不会发生死锁。 情况c:m=2,n=2,w=2,系统中有2个资源,2个进程使用,每个进程最多要求2个资源,此时,采用的分配策略是轮流地为每个进程分配,则第一轮系统先为每个进程分配1个,此时,系统中己无可供分配的资源,使得各个进程都处于等待状态导致系统发生死锁,这时进程资源图如下图所示。 情况d:m=4,n=3,w=2,系统中有4个资源,3个进程使用,每个进程最多要求2个资源,此时,采用的分配策略是轮流地为每个进程分配,则第一轮系统先为每个进程分配1个资源,此时,系统中还剩1个资源,可以使其中的一个进程得到所需资源运行完毕,所以不会发生死锁。 情况e:m=4,n=3,w=3,系统中有4个资源,3个进程使用,每个进程最多要求3个资源,此时,采用的分配策略是轮流地为每个进程分配,则第一轮系统先为每个进程分配1个,第二轮系统先为一个进程分配1个,此时,系统中已无可供分配的资源,使得各个进程都处于等待状态导致系统发生死锁,这时进程资源图如下图所示。

如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若系统中有若干进程共享5个R类资源,下列哪一种情况不可能发生死锁?( )

A) 系统中有6个进程,每个进程需要1个资源

B) 系统中有5个进程,每个进程需要2个资源

C) 系统中有4个进程,每个进程需要3个资源

D) 系统中有3个进程,每个进程需要4个资源

A.

B.

C.

D.


正确答案:A

第2题:

● 若系统中有若干个互斥资源R,6个并发进程,每个进程都需要2个资源R,那么系统不发生死锁的资源R 的最少数目为 (24)。

(24)

A. 6

B. 7

C. 9

D. 12


正确答案:B
试题(24)分析
    试题(24)的正确选项为B。对于选项A,操作系统为每个进程分配1个资源R后,若这6个进程再分别请求1个资源R时系统已无可供分配的资源R,则这6个进程由于请求的资源R得不到满足而死锁。对于选项B,操作系统为每个进程分配1个资源R后,系统还有1个可供分配的资源R,能满足其中的1个进程的资源R要求并运行完毕释放占有的资源R,从而使其他进程也能得到所需的资源R并运行完毕。
参考答案
      (24)B
B

第3题:

假设系统中有m个同类的互斥资源,当m个进程共享这,n个互斥资源时,每个进程的最大需求数是wo在下列情况中,系统可能会产生死锁的是______。

A.m=4,n=3,w=2

B.m=4,n=2,w=3

C.m=5,n=2,w=3

D.m=5,n=3,w=2


正确答案:B
解析:这是一道很简单的估算题。首先给每个进程1个资源,然后再给每个进程1个资源(如果有的话),依次类推。到某个阶段,如果没有1个进程的资源得到满足,且系统已经没有可用资源,则会发生死锁。显然,选项B中,首先给2个进程分别分配1个资源(这时系统还剩下2个资源),接着再分别为每个进程分配1个资源(这时系统还剩下。个资源),但这2个进程的资源都没有完全满足,不能运行,即发生死锁。

第4题:

● 系统中有R 类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为 w,那么当 m、n、w 取下表的值时,对于表中的 a-e 五种情况, (48) 可能会发生死锁。

(48)

A. a和b

B. b和c

C. c和d

D. c和e


正确答案:D

第5题:

假设系统中有m个同类的互斥资源,当n个进程共享这m个互斥资源时,每个进程的最大需求数是w。在下列情况中,系统可能会产生死锁的是______。

A.m=5,n=3,w=2

B.m=6,n=2,w=3

C.m=5,n=3,w=3

D.m=6,n=3,w=3

A.

B.

C.

D.


正确答案:D
解析:对于选项A:m=5,n=3,w=2,即系统中有5个资源,3个进程使用,每个进程最多要求2个资源。由于n×(w-1)+1=3×(2-1)+1=4m=5,因此系统不会产生死锁。
  对于选项B:m=6,n=2,w=3,即系统中有6个资源,2个进程使用,每个进程最多要求3个资源。因为n×(w-1)+1=2×(3-1)+1=5m=6,所以系统不会发生死锁。
  对于选项C:m=5,n=2,w=3,即系统中有5个资源,2个进程使用,每个进程最多要求3个资源。由于n×(w-1)+1=2×(3-1)+1=5=m,因此系统不会发生死锁。
  对于选项D:m=6,n=3,w=3,即系统中有6个资源,3个进程使用,每个进程最多要求2个资源。由于n×(w-1)+1=3×(3-1)+1=7>m=6,因此系统可能会产生死锁。

第6题:

设系统中有m个同类资源数,n为系统中的并发进程数,当n个进程共享m个互斥资源时,每个进程的最大需求数是w,试问下列情况下系统会死锁的是( )。

A、m=4,n=3,w=2

B、m=2,n=2,w=1

C、m=5,n=2,w=3

D、m=4,n=3,w=3


参考答案:D

第7题:

系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取表7-6的值时,对于表7-6中的a-e五种情况,(77)可能会发生死锁。

A.a和b

B.b和c

C.c和d

D.c和e


正确答案:D
解析:我们采用逐个考察的方法来解答本题。显然,情况a不会发生死锁,因为只有1个进程。情况b也不会发生死锁,因为有2个进程,每个进程对R资源的最大需求为1,而系统正好有2个R资源。因此,正确就只可能是C或者D,也就是说,情况c是肯定会发生死锁的。因为无论是选项C还是选项D,都包含情况c。下面只需要考虑情况d。3个进程互斥使用4个R资源,每个进程最多需要2个。首先每个进程申请1个资源,则还剩下1个资源,这个资源可以分配给任何一个进程,使该进程所需要的资源得到满足,得以执行,执行完毕后,释放其他2个资源,则其他2个进程也能得到其所需的资源。因此,不会发生死锁。

第8题:

若在系统中有若干个互斥资源R,6个并发进程,每个进程都需要2个资源R,那么使系统不发生死锁的资源R的最少数目为______。

A.6

B.7

C.9

D.12


正确答案:B
解析:正确选项为B。对于选项A,操作系统为每个进程分配1个资源R后,若这6个进程再分别请求1个资源R时系统已无可供分配的资源R,则这6个进程由于请求的资源R得不到满足而死锁。对于选项B,操作系统为每个进程分配1个资源R后,系统还有1个可供分配的资源R,能满足其中的1个进程的资源R要求并运行完毕释放占有的资源R,从而使其他进程也能得到所需的资源R并运行完毕。

第9题:

● 设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R 资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况, (21) 两种情况可能会发生死锁。对于这两种情况,若将 (22) ,则不会发生死锁。

(21)

A. a和b

B. b和c

C. c和d

D. c和e

(22)

A. n加1 或w加1

B. m加1 或w减1

C. m减1 或w加1

D. m减1 或w减1


正确答案:D,B

第10题:

设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a~e五种情况,( )两种情况可能会发生死锁。对于这两种情况,若将( ),则不会发生死锁。

A.a和b

B.b和c

C.c和d

D.c和e


正确答案:D
解析:所谓死锁(DeadLock)是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。
产生死锁的四个必要条件:
(1)互斥条件:一个资源每次只能被一个进程使用;
(2)请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放;
(3)不剥夺条件:进程已获得的资源,在未使用完之前,不能强行剥夺;
(4)循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。对于c和E来说,当每个进程同时掌握了一个资源,并同时申请更多的资源时,就会产生死锁。

更多相关问题