Bloqueo filososf

Solo disponible en BuenasTareas
  • Páginas : 2 (379 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de noviembre de 2011
Leer documento completo
Vista previa del texto
Érase una vez cinco filósofos que vivían juntos. La vida de cada filósofo consistía principal-mente en pensar y comer y, tras años de pensar, todos los filósofos se habían puesto de acuerdo en que laúnica comida que contribuía a sus esfuerzos pensadores eran los espaguetis.
Los preparativos de la comida eran simples (figura 5.6): una mesa redonda en la que había una gran fuente de espaguetis,cinco platos, uno para cada filósofo y cinco tenedores. Un filósofo que quiera comer irá a su lugar asignado en la mesa y, usando los dos tenedores de cada lado del plato, cogerá los espaguetis y selos comerá. El problema es el siguiente: Inventar un ritual (algoritmo) que permita comer a los filósofos. El algoritmo debe satisfacer la exclusión mutua (dos filósofos no pueden emplear el mismotenedor a la vez), además de evitar el interbloqueo y la inanición (en este caso, este último término tiene significado literal además de algorítmico).
Este problema, propuesto por Dijkstra, puede noparecer importante o relevante por sí mismo. Sin embargo, sirve para ilustrar los problemas básicos del interbloqueo y la inanición. Es más, intentar desarrollar una solución revela muchas de lasdificultades de la programación concurrente (véase, por ejemplo, [GING90]). Por consiguiente, este problema es un caso de prueba estándar para examinar soluciones a la sincronización.
La figura 5.7 sugiereuna solución por medio de semáforos. Cada filósofo toma primero el tenedor de su izquierda y, después, el de su derecha. Cuando un filósofo termina de comer, devuelve los dos tenedores a la mesa. Estasolución, desafortunadamente, produce interbloqueo: Si todos los filósofos están hambrientos al mismo tiempo, todos se sientan, todos cogen el tenedor de su izquierda y todos intentan tomar el otrotenedor, que no estará. En esta situación informal, todos los filósofos pasan hambre.
Para superar el riesgo de interbloqueo, se podrían adquirir cinco tenedores adicionales (una solución más...
tracking img