题目
为多道程序提供的可共享资源不足时,可能出现死锁。但是,不适当的( )也可能产生死锁。A. 进程优先权B. 资源的线性分配C. 进程推进顺序D. 分配队列优先权
为多道程序提供的可共享资源不足时,可能出现死锁。但是,不适当的( )也可能产生死锁。
A. 进程优先权
B. 资源的线性分配
C. 进程推进顺序
D. 分配队列优先权
题目解答
答案
C. 进程推进顺序
解析
考查要点:本题主要考查死锁产生的原因,特别是资源分配策略以外的其他因素。
解题核心:理解死锁的四个必要条件(互斥、不可剥夺、请求保持、环路等待),并分析选项中哪些因素可能导致这些条件成立。
关键点:
- 资源不足直接导致资源竞争加剧,但题目强调“不适当的某项操作”也可能引发死锁。
- 进程推进顺序的不合理安排可能破坏资源分配的顺序,导致进程间形成环路等待,从而触发死锁。
选项分析
A. 进程优先权
进程优先权影响调度顺序,但优先权本身不会直接导致死锁。若高优先权进程长期占用资源,可能引发资源不足,但这属于资源分配问题,而非直接导致死锁的机制。
B. 资源的线性分配
资源线性分配(如按固定顺序请求资源)是避免死锁的有效策略。若分配无序,可能增加死锁风险,但题目中正确答案并非此选项,需进一步分析。
C. 进程推进顺序
进程推进顺序的不适当安排可能导致以下情况:
- 资源释放顺序被打乱,进程无法按预期释放资源。
- 进程间形成环路等待,例如进程A等待进程B释放资源,而进程B又等待进程A释放另一资源,最终陷入死锁。
因此,推进顺序的不合理调度是死锁的重要诱因。
D. 分配队列优先权
分配队列优先权影响资源请求的处理顺序,但若资源分配逻辑正确,优先权调整一般不会直接引发死锁。