首页 > 试题广场 >

某系统中有3个并发进程,它们均需要某类资源。进程A需要2个,

[单选题]
某系统中有3个并发进程,它们均需要某类资源。进程A需要2个,进程B需要3个,进程C需要4个,试问为确保该系统不会发生死锁所需的最少资源数是(  )
  • 6
  • 7
  • 8
  • 9
选C。
无论如何都不会发生死锁要求至多有一个进程在等待资源,因此答案是2+3+4-1=8。

如果只有7个资源,那么最坏的情况下会有两个进程分别在等待一个资源,会造成循环等待。
编辑于 2019-10-25 12:16:16 回复(0)
更多回答
推荐
B。考察的是如何破坏形成死锁的条件而进程继续运行。

产生死锁的条件:

  • 互斥条件
  • 请求和保持条件
  • 不可抢占条件
  • 循环等待条件

根据题目给出的从资源供给上解决死锁的条件,所以每个进程均差一个资源的情况下形成僵持,即A(1个资源)、B(2两个资源)、C(3个资源)的情况下,只要再加1个资源即不会产生死锁,1+2+3+1=7

编辑于 2019-10-25 14:28:03 回复(0)
B。考察的是如何破坏形成死锁的条件而进程继续运行。

产生死锁的条件:

  • 互斥条件
  • 请求和保持条件
  • 不可抢占条件
  • 循环等待条件

根据题目给出的从资源供给上解决死锁的条件,所以每个进程均差一个资源的情况下形成僵持,即A(1个资源)、B(2两个资源)、C(3个资源)的情况下,只要再加1个资源即不会产生死锁,1+2+3+1=7

发表于 2020-07-28 08:50:29 回复(0)
选B
(2 - 1) + (3 - 1) + (4 - 1) = 6,当有6个资源时,各进程均缺少1个资源;故只需再多分配一个资源即可保证任一时刻必定有进程能拿到所需的全部资源,从而避免死锁;故答案为7。

编辑于 2019-10-25 17:00:12 回复(0)