mientras (1) {
K;
P(mutex);
Agregue un elemento al búfer;
V(mutex);
L;
}
P2
mientras (1) {
METRO;
P(mutex);
Eliminar un elemento del búfer;
V(mutex);
NORTE;
}
Las declaraciones K, L, M y N son respectivamente
(A) P(lleno), V(vacío), P(lleno), V(vacío)
(B) P(lleno), V(vacío), P(vacío), V(lleno)
(C) P(vacío ), V(lleno), P(vacío), V(lleno)
(D) P(vacío), V(lleno), P(lleno), V(vacío)
Respuesta: (D)
Explicación:
El proceso P1 es el productor y el proceso P2 es el consumidor.
El semáforo ‘completo’ se inicializa en ‘0’. Esto significa que no hay ningún elemento en el búfer.
El semáforo ‘vacío’ se inicializa en ‘n’. Esto significa que hay espacio para n elementos en el búfer.
En el proceso P1, esperar en el semáforo ‘vacío’ significa que si no hay espacio en el búfer, P1 no puede producir más elementos. La señal en el semáforo ‘lleno’ significa que se ha agregado un elemento al búfer.
En el proceso P2, esperar en el semáforo ‘lleno’ significa que si el búfer está vacío, el consumidor no puede consumir ningún artículo. La señal en el semáforo ‘vacío’ incrementa un espacio en el búfer después del consumo de un elemento.
Por lo tanto, la opción (D) es correcta.
Comente a continuación si encuentra algo incorrecto en la publicación anterior.
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