题37
题目
Q:【2015 统考真题】若系统
I.
II.
III.
A. 仅 I、II
B. 仅 II、III
C. 仅 I、III
D. I、II、III
分析
A:死锁检测,是检查是不是死锁上了,也就是有两种结果,要么没死锁,要么死锁上了。
死锁检测的目的是,检测到了,就给人家解开,这个解开很关键
解
B
- 死锁的处理采用三种策略: 死锁预防、死锁避免、死锁检测和解除
- 死锁预防采用破坏产生死锁的 4 个必要条件中的一个或几个来防止发生死锁
- 其中之一的“破坏循环等待条件”, 一般采用顺序资源分配法, 即限制了用户申请资源的顺序, 因此 I 的前半句属于死锁预防的范畴
- 银行家算法虽然会通过检测是否存在安全序列来判断申请资源的请求是否合法, 但安全序列并不是唯一的, 也不是固定的, 它只是一种可能的分配方案, 而不是一种必须遵循的规则, 银行家算法更没有给出固定的申请资源的顺序, 因此 I 错误
- 银行家算法是最著名的死锁避免算法
- 其中最大需求矩阵 Max 定义了每个进程对
类资源的最大需求量 - 系统在执行安全性算法中都会检查此次资源试分配后, 系统是否处于安全状态, 若不安全则将本次的试探分配作废
- 其中最大需求矩阵 Max 定义了每个进程对
- 在死锁的检测和解除中, 系统为进程分配资源时不采取任何措施, 但提供死锁检测和解除的手段, 一旦检测到系统发生死锁, 就立即采取相应的措施来解除死锁, 因此不用关心进程所需的总资源量
- II、III 正确