Solución ejercicio 3

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar

La solución no es correcta, ya que se bloquearía el proceso que ejecuta el while del productor y también el del consumidor, y no se avanzaría en la ejecución. Sería correcto si el semáforo del productor se inicializara a 1.


También habría que asegurar que el proceso P1 comenzará antes que P2, no?? Por lo que seguro que funcionaria con el contador de P1 igual a 1, y contador de P2 igual a 0, no??

R:Creo que no, ya que en caso de que empieze por P2 bloquea a la espera de que algún proceso haga un UP sobre dicho semáforo.

Los procesos son lanzados y tu no sabes a priori qué proceso se va a ejecutar, por lo que tienes que asegurarte que si se ejecuta el consumidor antes que el productor pase a estado bloqueado. Creo que la solución ,tal y como se dice el compañero al principio, es modificar el contador del productor poniendolo a 1.--Jherrera

Lo que he intentado dar a entender en (R:Creo que no, ya que en caso de que empieze por P2 bloquea a la espera de que algún proceso haga un UP sobre dicho semáforo) es lo que tu dices Jherrera.