一个操作系统有20个进程,竞争使用30个同类资源,申请方式是逐个进行,一旦某个进程获得了它的全部资源,就马上归还所有的资源,每个进程最多使用30,最少使用一个资源。20个进程需要的资源总数小于50。如果仅考虑这类资源,系统会产生死锁吗?请说明理由。

题目
一个操作系统有20个进程,竞争使用30个同类资源,申请方式是逐个进行,一旦某个进程获得了它的全部资源,就马上归还所有的资源,每个进程最多使用30,最少使用一个资源。20个进程需要的资源总数小于50。如果仅考虑这类资源,系统会产生死锁吗?请说明理由。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

系统出现死锁的原因是

A.计算机系统发生了重大故障

B.有多个封锁的进程同时存在

C.若干进程因竞争资源而无休止地等待其它进程释放已占有的资源

D.资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数


正确答案:C
解析:计算机系统中有限的资源与众多请求分配资源的进程间会存在矛盾。当若干进程需求资源的总数大于系统能提供的资源数时,进程间就会出现竞争资源的现象,如果对进程竞争的资源管理或分配不当就会引起死锁。

第2题:

在( )的情况下,系统出现死锁。

A 计算机系统发生了重大故障

B 有多个阻塞的进程正在等待键盘的输入

C 若干进程因竞争资源而无休止地相互等待他方释放已占有的资源

D 资源数大大小于进程数或进程同时申请的资源数大大超过资源总数


参考答案C

第3题:

在()情况下,系统出现死锁。

A.计算机系统发生了重大故障

B.有多个封锁的进程同时存在

C.若干进程因竞争资源而无休止地相互等持他方释放已占有的资源

D.资源数大大小于进程数或进程同时申请的资源数大大超过资源总数


参考答案:C

第4题:

对于产生死锁的4个必要条件之一的不可抢占条件是( )。

A.每一个资源每次只能给一个进程使用

B.已被占用的资源只能由占用进程自己来释放

C.一个进程申请资源得不到满足时处于等待资源的状态且不释放已占资源

D.存在一个进程环路,其中每一个进程已获得的资源同时被下一个进程所请求


正确答案:B
解析:死锁的4个必要条件中,不剥夺条件(不可抢占)是指进程所获得的资源在未使用完毕之前,不能被其他进程强行剥夺,而只能由获得该资源的进程自己释放。

第5题:

如果规定系统所有进程在整个运行过程中一次性申请所需的全部资源,若其中任何一个资源不能得到满足,则其他资源也不分配给该进程,这种死锁预防方式破坏了产生死锁的哪一个必要条件? ( )

A.进程互斥使用资源

B.占有等待资源

C.不可抢占

D.循环等待资源


正确答案:B
解析:死锁的4个必要条件中,占有等待资源是指一个进程申请资源得不到满足时处于等待资源的状态且不释放已占资源。

第6题:

某系统有4个进程,每个进程最多需要2个同类资源,则该系统不会发生死锁的最少资源数是()。

A、4

B、5

C、6

D、7


参考答案:A

第7题:

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


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

第8题:

在操作系统中,死锁出现是指()

A、计算机系统发生重大故障

B、资源数目远远少于进程数

C、若干进程因竞争资源而无限等待其他进程释放已占有的资源

D、进程同时申请的资源数超过资源总数


参考答案:C

第9题:

对于产生死锁的4个必要条件之一的循环等待资源是( )。

A.每一个资源每次只能给一个进程使用

B.已被占用的资源只能由占用进程自己来释放

C.一个进程申请资源得不到满足时处于等待资源的状态且不释放已占资源

D.存在一个进程环路,其中每一个进程已获得的资源同时被下一个进程所请求


正确答案:D
解析:出现死锁时必须同时保持4个必要条件:进程互斥使用资源、占有等待资源、不可抢占和循环等待资源,其中循环等待资源是指存在一个进程环路,其中每一个进程已获得的资源同时被下一个进程所请求。

第10题:

一个系统中存在某类资源m个,被n个进程共享。资源的分配和释放必须一个一个进行,请证明在以下两个条件下不会发生死锁: 每个进程需要资源的最大数在1~m之间; 所有进程需要的资源总数小于m+n;

更多相关问题