Considere la siguiente instantánea de un sistema que ejecuta n procesos. El proceso i contiene instancias Xi de un recurso R, 1 <= i <= n. Actualmente, todas las instancias de R están ocupadas. Además, para todo i, el proceso i ha realizado una solicitud de instancias Yi adicionales mientras mantiene las instancias Xi que ya tiene. Hay exactamente dos procesos p y q tales que Yp = Yq = 0. ¿Cuál de los siguientes puede servir como condición necesaria para garantizar que el sistema no se acerca a un punto muerto?
(A) min (Xp, Xq) < max (Yk) donde k != p y k != q
(B) Xp + Xq >= min (Yk) donde k != p y k != q
(C) max (Xp, Xq) > 1
(D) min (Xp, Xq) > 1
Respuesta: (B)
Explicación:
Interbloqueo se refiere a una condición específica cuando dos o más procesos están esperando a que otro libere un recurso, o más de dos procesos están esperando recursos.
Solución:
Condición necesaria para garantizar que no haya interbloqueo, lo que significa que sin cumplir esta condición, no es posible ningún interbloqueo. Tanto el proceso p como el q no tienen ningún requisito adicional; ambos pueden terminar liberando recursos Xp + Xq sin pedir ningún recurso adicional.
Usando esto, podemos terminar un proceso más solo si se cumple la condición B. Si los recursos liberados por p y q son suficientes para otro proceso que espera los recursos Yk, entonces el sistema no se acerca a un punto muerto.
es decir, Xp+Xq > min (Yk) donde k != p y k != q
Nota: La opción B solo aseguró que el sistema pueda continuar desde el estado actual. No garantiza que no habrá un punto muerto antes de que finalicen todos los procesos.
Consulte la pregunta 4 de https://www.geeksforgeeks.org/operating-systems-set-15/
Referencia:
https://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/7_Deadlocks.html
Esta solución es aportada por Nitika Bansal
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA