Considere los métodos utilizados por los procesos P1 y P2 para acceder a sus secciones críticas cuando sea necesario, como se indica a continuación. Los valores iniciales de las variables booleanas compartidas S1 y S2 se asignan aleatoriamente.
Method Used by P1 while (S1 == S2) ; Critica1 Section S1 = S2; Method Used by P2 while (S1 != S2) ; Critica1 Section S2 = not (S1);
¿Cuál de las siguientes afirmaciones describe las propiedades logradas?
(A) Exclusión mutua pero no progreso
(B) Progreso pero no exclusión mutua
(C) Ni exclusión mutua ni progreso
(D) Exclusión mutua y progreso
Respuesta: (A)
Explicación:
Exclusión mutua:
Una forma de asegurarse de que si un proceso está utilizando datos modificables compartidos, los otros procesos no podrán hacer lo mismo. mientras un proceso ejecuta la variable compartida, todos los demás procesos que deseen hacerlo al mismo tiempo deben mantenerse en espera; cuando ese proceso ha terminado de ejecutar la variable compartida, uno de los procesos en espera; mientras que ese proceso ha terminado de ejecutar la variable compartida, se debe permitir que continúe uno de los procesos que esperan hacerlo. De esta manera, cada proceso que ejecuta los datos compartidos (variables) excluye a todos los demás de hacerlo simultáneamente. Esto se llama exclusión mutua.
Requisito de Progreso:
Si ningún proceso se está ejecutando en su sección crítica y existen algunos procesos que desean ingresar a su sección crítica, entonces la selección de los procesos que ingresarán a continuación a la sección crítica no se puede posponer indefinidamente.
Solución:
Se puede observar fácilmente que el requisito de exclusión mutua se cumple con la solución anterior, P1 puede ingresar a la sección crítica solo si S1 no es igual a S2, y P2 puede ingresar a la sección crítica solo si S1 es igual a S2. Pero aquí no se cumple el Requisito de Progreso. Supongamos que cuando s1=1 y s2=0 y el proceso p1 no está interesado en entrar en la sección crítica, pero p2 quiere entrar en la sección crítica. P2 no puede ingresar a la sección crítica en esto, ya que solo cuando p1 finaliza la ejecución, solo p2 puede ingresar (entonces solo se cumple la condición s1 = s2). El progreso no estará satisfecho cuando cualquier proceso que no esté interesado en ingresar a la sección crítica no permita que otro proceso interesado ingrese a la sección crítica.
Referencia:
http://www.personal.kent.edu/~rmuhamma/OpSystems/Myos/mutualExclu.htm
Ver https://www.geeksforgeeks.org/operating-systems-set-7/
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