PUERTA | PUERTA CS 2019 | Pregunta 32

Considere tres procesos simultáneos P1, P2 y P3 como se muestra a continuación, que acceden a una variable compartida D que se ha inicializado en 100.

El proceso se ejecuta en un sistema monoprocesador que ejecuta un sistema operativo de tiempo compartido. Si los valores mínimo y máximo posibles de D después de que los tres procesos hayan completado la ejecución son X e Y respectivamente, entonces el valor de Y–X es __________.

Nota: Esta fue una pregunta de tipo numérico.
(A) 80
(B) 130
(C) 50
(D) Ninguno de estos

Respuesta: (A)
Explicación: El valor mínimo (X) de D será posible cuando,

  1. P2 lee D=100, adelantada.
  2. P1 ejecuta D=D+20, D=120.
  3. P3 ejecuta D=D+10, D=130.
  4. Ahora, P2 tiene D=100, ejecuta, D = D-50 = 100-50 = 50. P2 escribe el valor final D=50.

Entonces, el valor mínimo (X) de D es 50.

El valor máximo (Y) de D será posible cuando,

  1. P1 lee D=100, adelantada.
  2. P2 lee D=100, ejecuta, D = D-50 = 100-50 = 50.
  3. Ahora, P1 ejecuta, D = D+20 = 100+20 = 120.
  4. Y ahora, P3 lee D=120, ejecuta D=D+10, D=130. P3 escribe D=130 valor final.

Entonces, el valor máximo (Y) de D es 130.

Por lo tanto,

= Y - X
= 130 - 50
= 80 

Entonces, la opción (A) es correcta.
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 *