假设有3个进程竞争同类资源 如果每个进程需要2个该类资源 则至少需要个该类资源 才能保证不会发

计算机 资源,进程,同类 已帮助 人

假设有3个进程竞争同类资源,如果每个进程需要2个该类资源,则至少需要个该类资源,才能保证不会发生死锁。

热搜:临界资源是指一次只允许一个进程访问的资源

答案解析

难度★★☆ 搜索
  • 参考答案:4针对本题,首先可以使用逆向思维进行思考:3个进程,每个进程需要两个同类资源,那么总共需多少个资源呢?有以下几种情况。— 资源总数为1,则不管哪个资源占用该资源,都会导致无条件死锁。— 资源总数为2,可分两种情况:一个进程占用两个资源,直到它执行完毕后释放,然后又由另一进程同时占用这两个资源,由最后一个进程使用,这样不会导致死锁;两个资源若不为某一进程独占,将会导致死锁,一般称这种状态是不安全的。— 资源总数为3,与第(2)条同理。— 资源总数为4,则无论资源如何分配,都不会导致死锁。用公式可以总结如下:资源总数(安全的)= 进程数 ´(每个进程所需资源数-1)+ 1