单选题
👁️ 浏览量:

试题题干

要求所有进程执行前要一次性地申请在其整个运行过程中所需要的全部资源,这种死锁预防策略摒弃了死锁必要条件中的(  )

A

互斥条件

B

请求和保持条件

C

不剥夺条件

D

环路等待条件

参考答案

正确答案:

试题解析

在操作系统中无法预知进程是否一定不访问临界资源,所以通常不能采用摒弃互斥条件来预防死锁的发生。

预防死锁可以通过摒弃下列三个必要条件之一来实现:

(1)摒弃请求和保持条件:摒弃请求和保持条件的一种方法是系统要求所有进程执行前要一次性地申请在整个运行过程中所需要的全部资源,只要有一个资源申请不成功,其他所有资源也不分配给该进程,并阻塞该进程。
(2)摒弃不剥夺条件:摒弃不剥夺条件的方法是一个已保持了某些资源的进程,当它再提出新的资源要求而不能立即得到满足时,必须释放它已经保持的所有资源。
(3)摒弃环路等待条件:摒弃环路等待的方法是指进程必须按规定的顺序申请资源。

故本题选B。