首页 > 试题广场 >

该系统可能会发生死锁的 K 的最小值是()

[单选题]
某计算机系统中有 8 台打印机,由 K 个进程竞争使用,每个进程最多需要 3台打印机。该系统可能会发生死锁的 K 的最小值是()
  • 2
  • 3
  • 4
  • 5
推荐
最坏情况下,N个进程每个都得到2台打印机,都去申请第3台,为了保证不死锁,此时打印机剩余数目至少为1台,则:

8-2N >= 1
则,N <= 3
N为3或者小于3都不会死锁,当大于3时会死锁,所以选4
编辑于 2016-07-06 21:43:45 回复(4)
由于每个进程最多需要使用3台打印机,可以先给每个进程分配2台打印机,最后在总的资源中减1个出来分配给一个进程就能避免死锁。所以用7/2=3.5,向下取整为3,所以最多使用3个进程不会发生死锁。所以发生死锁的最小值为4.
发表于 2016-07-08 13:39:30 回复(0)
2*K+1<8    :1是保留防止进入不安全状态
K<3.5  所以选择4
发表于 2016-06-15 15:28:34 回复(2)
死锁需要 多个进程同时抢一个资源 ,如果是三个,那么有两个分三个打印机,最后一个抢第三个打印机时,没有资源只能 等待 ,不会出现多个进程同时抢资源
发表于 2016-09-24 21:31:54 回复(0)
所谓 死锁 : 是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于 死锁 状态或系统产生了 死锁。8台打印机,每个进程最多占3台。那么8台能让2个进程饱和,不再去抢资源,根据定义,不饱和的进程数至少为2才会发生死锁。此时,要死锁 数目最少为;2+2=4.
发表于 2016-08-01 21:16:25 回复(0)

由于每个进程最多需要3台打印机就可以正常结束,释放占有的资源。那么现在有K个进程,最差的情况是这个k个进程每个进程分配了两台打印机,那么进程僵持在这里每个都在等待分配第三台打印机,只要还有一台打印机,进程就就能陆续释放,不会产生死锁,所以不产生死锁的条件是2k+1<=8 即k<3.5,所以可能发生死锁的k的最小值(整数)是4  


     
发表于 2016-07-29 21:38:34 回复(0)
对于M个进程,每个需要T个资源,共有N个资源,为不发生死锁,则应当满足:N > M * (T-1),即N最小为 N = M * (T - 1)  +1。
解析:最坏的资源分配策略,即给每个进程平均分配资源,当资源不足时,易导致多个进程进入阻塞。
           此时最坏的情况,即每个进程都差一个资源达成需求,但资源已分配完毕。
          若此时再添加一个资源,那么至少会有一个进程得到所需资源,进而从阻塞的状态释放,当它执行完毕,释放它请求的资源,便会多出N个待分配资源,此时可满足其他进程的的资源需求
发表于 2018-11-04 10:23:45 回复(0)
最坏情况下,N个进程每个都得到2台打印机,都去申请第3台,为了保证不死锁,此时打印机剩余数目至少为1台,则:

8-2N >= 1
则,N <= 3
N为3或者小于3都不会死锁,当大于3时会死锁,所以选4
发表于 2016-08-23 10:06:32 回复(0)
4*2=8
发表于 2016-07-08 20:50:53 回复(0)
 我认为答案应该是3个进程,假如是4个的话。4个进程都拥2台每个都缺一台,死锁。公式我认为应该是(n-1)/(k-1)向下取整数。n为资源数,k为每个进程占用的资源数。
发表于 2016-07-08 09:11:39 回复(3)
(3-1)*k+1>8时死锁
发表于 2016-06-29 16:43:46 回复(0)