PUERTA | GATE-CS-2014-(Conjunto-1) | Pregunta 65

Un sistema operativo utiliza el algoritmo de Banker para evitar interbloqueos al administrar la asignación de tres tipos de recursos X, Y y Z a tres procesos P0, P1 y P2. La siguiente tabla presenta el estado actual del sistema. Aquí, la array de asignación muestra la cantidad actual de recursos de cada tipo asignados a cada proceso y la array Max muestra la cantidad máxima de recursos de cada tipo requeridos por cada proceso durante su ejecución.

GATECS2014Q42

Hay 3 unidades de tipo X, 2 unidades de tipo Y y 2 unidades de tipo Z todavía disponibles. El sistema se encuentra
actualmente en un estado seguro. Considere las siguientes requests independientes de recursos adicionales en el
estado actual:

REQ1: P0 requests 0 units of X,  
      0 units of Y and 2 units of Z
REQ2: P1 requests 2 units of X, 
      0 units of Y and 0 units of Z

¿Cuál de las siguientes es VERDADERA?
(A) Solo se puede permitir REQ1.
(B) Solo se puede permitir REQ2.
(C) Se pueden permitir tanto REQ1 como REQ2.
(D) Ni REQ1 ni REQ2 pueden permitirse

Respuesta: (B)
Explicación: Este es el estado seguro actual.

DISPONIBLE X=3, Y=2, Z=2
MÁX. ASIGNACIÓN
XYZ XYZ
P0 8 4 3 0 0 1
P1 6 2 0 3 2 0
P2 3 3 3 2 1 1

Ahora, si se permite la solicitud REQ1, el estado sería:

DISPONIBLE X=3, Y=2, Z=0
MÁX. ASIGNACIÓN NECESITAR
XYZ XYZ XYZ
P0 8 4 3 0 0 3 8 4 0
P1 6 2 0 3 2 0 3 0 0
P2 3 3 3 2 1 1 1 2 2

Ahora, con la disponibilidad actual, podemos atender la necesidad de P1. El estado se convertiría en:

DISPONIBLE X=6, Y=4, Z=0
MÁX. ASIGNACIÓN NECESITAR
XYZ XYZ XYZ
P0 8 4 3 0 0 3 8 4 0
P1 6 2 0 3 2 0 0 0 0
P2 3 3 3 2 1 1 1 2 2

Con la disponibilidad resultante, no sería posible atender la necesidad de P0 o P2, debido a la falta de recurso Z.

Por lo tanto, el sistema estaría en punto muerto.

⇒ No podemos permitir REQ1.

Ahora, en el estado seguro dado, si aceptamos REQ2:

DISPONIBLE X=1, Y=2, Z=2
MÁX. ASIGNACIÓN NECESITAR
XYZ XYZ XYZ
P0 8 4 3 0 0 1 8 4 2
P1 6 2 0 5 2 0 1 0 0
P2 3 3 3 2 1 1 1 2 2

Con esta disponibilidad, damos servicio a P1 (también se puede dar servicio a P2). Entonces, el estado es:

DISPONIBLE X=6, Y=4, Z=2
MÁX. ASIGNACIÓN NECESITAR
XYZ XYZ XYZ
P0 8 4 3 0 0 1 8 4 2
P1 6 2 0 5 2 0 0 0 0
P2 3 3 3 2 1 1 1 2 2

Con la disponibilidad actual, damos servicio a P2. El estado se convierte en:

DISPONIBLE X=8, Y=5, Z=3
MÁX. ASIGNACIÓN NECESITAR
XYZ XYZ XYZ
P0 8 4 3 0 0 1 8 4 2
P1 6 2 0 5 2 0 0 0 0
P2 3 3 3 2 1 1 0 0 0

Finalmente, damos servicio a P0. El estado ahora se convierte en:

DISPONIBLE X=8, Y=5, Z=4
MÁX. ASIGNACIÓN NECESITAR
XYZ XYZ XYZ
P0 8 4 3 0 0 1 0 0 0
P1 6 2 0 5 2 0 0 0 0
P2 3 3 3 2 1 1 0 0 0

El estado así obtenido es un estado seguro. ⇒ Se puede permitir REQ2.

Por lo tanto, solo se puede permitir REQ2.

Por lo tanto, B es la opción correcta.

Comente a continuación si encuentra algo incorrecto en la publicación anterior.
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 *