死锁预防和死锁避免方案不符合以下哪项要求?
(A)在防止死锁中,如果结果状态是安全的,则始终会批准对资源的请求
(B)在避免死锁的情况下,如果结果状态安全,则始终会授予资源请求
(C)避免死锁比防止死锁的限制要少
(D)避免死锁需要先验知识答案: (A)
解释:
防止死锁:可以通过防止所需的四个中的至少一个来防止死锁
使适应:
1.互斥–可共享资源不需要;必须持有不可共享的资源。
2.保留并等待–必须保证进程请求资源时,它不会保留任何其他资源。在开始执行之前,要求流程请求并分配其所有源,或者仅在流程没有资源时才允许流程请求资源。资源利用率低;可能饿死。限制发出请求的方式。
3.无抢占-如果一个拥有某些资源的进程请求另一个不能立即分配给它的资源,然后释放当前正被持有的所有资源。已抢占的资源将添加到该进程正在等待的资源列表中。仅当进程可以重新获得其旧资源以及所请求的新资源时,它才会重新启动。
4.循环等待–施加所有资源类型的总顺序,并要求每个进程以递增的顺序请求资源。
避免死锁:
当调度程序发现启动某个进程或授予资源请求可能导致将来的死锁时,则该进程就不会启动或该请求未被授予。避免死锁算法会动态检查资源分配状态,以确保永远不会出现循环等待条件。资源分配状态由可用和已分配资源的数量以及进程的最大需求来定义。
选择问题:
(A)在防止死锁中,如果结果状态是安全的,则始终会批准对资源的请求。如果设置为false,则死锁预防方案通过确保不会出现四个必要条件之一来处理死锁。在防止死锁中,即使结果状态是安全的,也可能不会批准对资源的请求。
(B)在避免死锁的情况下,如果结果状态是安全的,则始终会批准对资源的请求。的确,与避免死锁一样,如果结果状态是安全的,而不是将对资源的请求授予为安全状态,则它现在可以容纳其他资源。
(C)避免死锁比防止死锁的限制要少。确实,与防死锁一样,即使结果状态是安全的,也可能无法授予对资源的请求。但是在避免死锁的情况下,如果结果状态是安全的,则准许请求资源。
(D)避免死锁需要先验地了解资源需求,避免死锁会检查任何死锁的可能性,即使系统处于安全状态,它也会检查分配请求的资源后系统是否未处于死锁状态。因此,避免死锁需要先验的资源需求知识。
请参阅https://www.geeksforgeeks.org/operating-systems-set-11/的问题2
该解决方案由Nitika Bansal提供
这个问题的测验