PUERTA | PUERTA-CS-2007 | Pregunta 58

Dos procesos, P1 y P2, necesitan acceder a una sección crítica del código. Considere la siguiente construcción de sincronización utilizada por los procesos: aquí, Wants1 y Wants2 son variables compartidas, que se inicializan en false. ¿Cuál de las siguientes afirmaciones es VERDADERA sobre el constructo anterior?v

  /* P1 */
while (true) {
  wants1 = true;
  while (wants2 == true);
  /* Critical
    Section */
  wants1=false;
}
/* Remainder section */       


/* P2 */
while (true) {
  wants2 = true;
  while (wants1==true);
  /* Critical
    Section */
  wants2 = false;
}
/* Remainder section */

(A) No garantiza la exclusión mutua.
(B) No asegura la espera limitada.
(C) Requiere que los procesos entren en la sección crítica en estricta alternancia.
(D) No evita los puntos muertos, pero asegura la exclusión mutua.

Respuesta: (D)
Explicación:
Espera limitada: existe un límite, o límite, en la cantidad de veces que otros procesos pueden ingresar a sus secciones críticas después de que un proceso haya solicitado ingresar a su sección crítica y antes de que se conceda esa solicitud.

la exclusión mutua impide el acceso simultáneo a un recurso compartido. Este concepto se utiliza en la programación concurrente con una sección crítica, una pieza de código en la que los procesos o subprocesos acceden a un recurso compartido.

Solución:

Dos procesos, P1 y P2, necesitan acceder a una sección crítica del código. Aquí, quiere1 y quiere2 son variables compartidas, que se inicializan en falso.
Ahora, cuando tanto los deseos 1 como los deseos 2 se vuelven verdaderos, ambos procesos, p1 y p2, entran en el ciclo while y esperan a que finalice el otro. Este bucle while se ejecuta indefinidamente, lo que conduce a un punto muerto.
Ahora, suponga que P1 está en la sección crítica (significa que quiere1 = verdadero, quiere2 puede ser cualquier cosa, verdadero o falso). Entonces esto asegura que p2 no entrará en la sección crítica y viceversa. Esto satisface la propiedad de exclusión mutua.
Aquí también se cumple la condición de espera limitada, ya que existe un límite en la cantidad de procesos que obtienen acceso a la sección crítica después de que un proceso solicite acceso a ella.

Consulte la pregunta 3 de https://www.geeksforgeeks.org/operating-systems-set-13/

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *