12.07.2015 Views

Introducción - Departamento de Lenguajes y Sistemas Informáticos

Introducción - Departamento de Lenguajes y Sistemas Informáticos

Introducción - Departamento de Lenguajes y Sistemas Informáticos

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Programación Concurrente. I.T. <strong>Sistemas</strong> y Gestión. Relación <strong>de</strong> Problemas 8Tema 3. Monitores.26. Aunque un monitor garantiza la exclusión mútua, los procedimientos tienen que serre-entrantes. Explicar porqué.27. Demostrar que incluso si la implementación <strong>de</strong>l semáforo es FIFO, la simulación <strong>de</strong>lmonitor con semáforos no lo es.28. Se consi<strong>de</strong>ran dos recursos <strong>de</strong>nominados r1 y r2. Del recurso r1 existen N1 ejemplaresy <strong>de</strong>l recurso r2 existen N2 ejemplares. Escribir un monitor que gestione la asignación <strong>de</strong>los recursos a los procesos <strong>de</strong> usuario, suponiendo que cada proceso pue<strong>de</strong> pedir:• ⋅un ejemplar <strong>de</strong>l recurso r1• ⋅un ejemplar <strong>de</strong>l recurso r2• ⋅un ejemplar <strong>de</strong>l recurso r1 y otro <strong>de</strong>l recurso r2La solución <strong>de</strong>berá satisfacer estas dos condiciones:• Un recurso no será asignado a un proceso que <strong>de</strong>man<strong>de</strong> un ejemplar <strong>de</strong> r1 o unejemplar <strong>de</strong> r2 hasta que al menos un ejemplar <strong>de</strong> dicho recurso que<strong>de</strong> libre• Se dará prioridad a los procesos que <strong>de</strong>man<strong>de</strong>n un ejemplar <strong>de</strong> ambos recursos29. Escribir una solución al problema <strong>de</strong> "lectores-escritores" con monitores:a) Con prioridad a los lectores.b) Con prioridad a los escritores:c) Con priorida<strong>de</strong>s iguales30. Coches que vienen <strong>de</strong>l norte y <strong>de</strong>l sur preten<strong>de</strong>n cruzar un puente sobre un río. Sóloexiste un carril sobre dicho puente. Por lo tanto, en un momento dado, sólo pue<strong>de</strong> sercruzado por uno o más coches en la misma dirección (pero no en direcciones opuestas).a) Completar el código <strong>de</strong>l siguiente monitor queresuelve el problema <strong>de</strong>l acceso al puentesuponiendo que llega un coche <strong>de</strong>l norte (sur) ycruza el puente si no hay otro coche <strong>de</strong>l sur (norte)cruzando el puente en ese momento.b) Mejorar el monitor anterior, <strong>de</strong> forma que ladirección <strong>de</strong>l trafico a través <strong>de</strong>l puente cambiecada vez que lo hayan cruzado 10 coches en unadirección, mientras 1 ó más coches estuviesenesperando cruzar el puente en dirección opuesta.MONITORGestionaTraficoVAR ................PROCEDIMIENTO EntrarCocheDelNorte...................PROCEDIMIENTO SalirCocheDelNorte....................PROCEDIMIENTO EntrarCocheDelSur.....................

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!