题4
题目
一次分配所有资源的方法可以预防死锁的发生, 它破坏死锁 4 个必要条件中的 ( )。
A. 互斥
B. 占有并请求
C. 非剥夺
D. 循环等待
分析
发生死锁的 4 个必要条件: 互斥、占有并请求、非剥夺和循环等待。
一次分配所有资源的方法是当进程需要资源时, 一次性提出所有的请求, 若请求的所有资源均满足则分配, 只要有一项不满足, 就不分配任何资源, 该进程阻塞, 直到所有的资源空闲后, 满足进程的所有需求时再分配。
这种分配方式不会部分地占有资源, 因此打破了死锁的 4 个必要条件之一, 实现了对死锁的预防。
但是, 这种分配方式需要凑齐所有资源, 因此当一个进程所需的资源较多时, 资源的利用率会较低, 甚至会造成进程 “饥饿”。
解
B