星海

操作系统 · 单选题 · 第 19 题

计算机基础面试八股 · 第 19 题

下列做法中,破坏的是死锁必要条件中的「循环等待」的是?

  1. A进程开始运行之前,一次性申请它需要的全部资源
  2. B给所有资源统一编号,进程只能按编号递增的顺序申请资源
  3. C进程申请新资源得不到满足时,释放已经持有的资源
  4. D把打印机等独占设备用 SPOOLing 技术改造成共享设备

答案

B B. 给所有资源统一编号,进程只能按编号递增的顺序申请资源

解析

按统一顺序申请资源后,等待关系只能从小编号指向大编号,不可能形成环。一次性申请全部资源破坏的是「请求并保持」,得不到就释放破坏的是「不可剥夺」,SPOOLing 破坏的是「互斥」。实际开发中多把锁按固定顺序加锁,就是这个思路。

在线刷这套题:即时判分、错题本、闪卡复习,不用登录就能练。