首页 > 试题广场 >

设有5个可用的某类资源,由4个进程共享,每个进程最多可申请(

[单选题]
设有5个可用的某类资源,由4个进程共享,每个进程最多可申请()个资源而使系统不会死锁?
  • 2
  • 4
  • 3
  • 1
推荐
A
因为如果每个进程都需要一个资源,并且申请到一个资源,那么都不会死锁并且资源还有多余,如果需要两个资源,此时每个进程又恰好申请到了一个资源,还剩一个资源一定会被4个进程中的一个申请到,所以便可以执行,系统不会死锁;那么3个呢?我们就可以想象如果4个进程分别获取到了2,1,1,1个资源,那便没有一个进程满足3的条件,此时就会出现死锁,所以最多2个,选A
编辑于 2018-05-06 22:12:25 回复(3)
产生死锁也就是每个线程所需要的资源都有被别的线程占用的情况,2的话肯定不行。至少三个。
发表于 2016-09-01 15:05:12 回复(0)
炫头像
每个进程最多可以申请2个同类资源,具体的分配方法是:先让每个进程获取一个同类资源,然后将剩余的一个资源分配给一个进程,这样就有一个进程获得了所需的全部资源而得以运行,另外三个只分配了一个资源的进程将等待获得全部资源的进程运行结束后释放资源,再进行申请资源并运行
发表于 2016-04-22 12:36:55 回复(0)
设每个进程最多申请x个资源而不产生死锁。
4 *(x-1)+ 1 = 5
x = 2
解析:
每个进程申请(x-1)个资源时,各个进程都需要等待其他进程释放资源,此时共 4 *(x-1)个资源,系统 会产生死锁;
只要再多一个资源,就可以打破死锁的僵局。

发表于 2016-07-23 15:15:31 回复(1)
答案是A
         设临界资源为m.共享进程为n个,个进程最多可申请x个资源
那么当m>n时,m>n*(x-1)时 使系统不会死锁,
          m<=n时,x=1 使系统不会死锁
编辑于 2018-05-06 22:12:25 回复(3)
全部分配资源后,要保证至少有一个进程能被满足需求,从而使其运行完后再释放资源。
所以答案是A。
发表于 2015-11-29 23:06:31 回复(0)
因为共有4个进程,5个资源,进程数小于资源数,则不会发生死锁的公式为
①最多申请资源数=资源总数/进程数(可以整除的条件下)
②最多申请资源数=(资源总数/进程数)+1(不可以整除的条件下)
所以本题用②的计算方式,得出结果为5/4+1=2
发表于 2017-09-06 10:45:57 回复(1)
设临界资源为m.共享进程为n个,一 个进程最多可申请x个资源
m>n时,m>n*(x-1)时   使系统不会死锁,
m<=n时,x=1   使系统不会死锁
发表于 2016-07-07 15:31:24 回复(0)
B吧
发表于 2016-07-14 16:53:10 回复(0)
<p>每个进程最多申请人</p>
发表于 2020-12-15 10:07:33 回复(0)
<p>可整除情况下:资源总数/进程数</p><p>不可整除情况下:资源总数/进程数+1</p><p><br></p>
发表于 2020-12-07 15:16:04 回复(0)
都没写分配策略,只问最多可以申请多少,一个进程分五个都行啊。一个用完,另一个进程再用嘛
发表于 2017-08-17 16:17:14 回复(1)
设每个进程最多申请x个资源而不产生死锁。 4 *(x-1)+ 1 = 5 x = 2 解析: 每个进程申请(x-1)个资源时,各个进程都需要等待其他进程释放资源,此时共 4 *(x-1)个资源,系统 会产生死锁; 只要再多一个资源,就可以打破死锁的僵局。
发表于 2017-07-04 18:43:32 回复(0)
答案是A
         设临界资源为m.共享进程为n个,个进程最多可申请x个资源
那么当m>n时,m>n*(x-1)时 使系统不会死锁,
          m<=n时,x=1 使系统不会死锁
发表于 2017-04-19 20:15:46 回复(0)
其实我感觉,这个题还需要知道,每个线程完成任务,需要多少数量的资源才行啊。。。
发表于 2016-09-19 14:17:13 回复(0)
B
发表于 2016-03-27 18:48:00 回复(0)
5个资源,4个进程,每个进程分两个资源,不会产生圆环,所以不会产生死锁。
发表于 2015-11-22 11:16:23 回复(0)