Algoritmo cena filosofos

Páginas: 3 (556 palabras) Publicado: 2 de septiembre de 2010
El problema de la cena de los filósofos

Planteamiento.
En 1965, Dijkstra planteó y resolvió un problema de sincronización llamado el problema de la cena de los filósofos.

Cinco filósofos sesientan a la mesa. Cada uno tiene un plato de espagueti. El espagueti es tan escurridizo que un filósofo necesita dos tenedores para comerlo. Entre cada dos platos hay un tenedor.

La vida de unfilósofo consta de periodos alternados de comer y pensar. Cuando un filósofo tiene hambre intenta obtener un tenedor para su manos izquierda y otro para su mano derecha, alzando uno a la vez y en cualquierorden. Si logra obtener los dos tenedores, come un rato y después deja los tenedores y continúa pensando.

Análisis.
* Debe haber el máximo número de filósofos comiendo, para aprovechar lostenedores, este caso sólo dos porque se necesitan dos tenedores por filósofo, y sólo tenemos cinco.
*
* Debe tenerse cuidado de que dos filósofos contiguos nolleguen al mismo tiempo a comer, ya que se generaría un bloqueo.
*
Planteamiento de la solución.

* Se tiene un arreglo para ver el estado del filósofo.* Un filósofo sólo puede comer si sus vecinos no lo hacen.
* Se utilizan semáforos para indicar si los filósofos necesitan un tenedor y éste no está disponible, por que se procede abloquearlo.
* Se toma en cuenta el vecino derecho e izquierdo de cada filósofo.
* Se usan generadores aleatorios.

Algoritmo

Cabe mencionar que el programa no fue 100% guiado por el algoritmo perosi existe relación, el programa no sera presentado en lenguaje Java, por falta de conocimiento.

#include “prototypes.h”
#define N 5 /*número de filósofos*/
#define LEFT(i-1)%N /*número del vecino izquierdo de i*/
#define RIGHT (i+1)%N /*número del vecino derecho de i*/
#define THINKING 0 /*el filósofo está pensando*/
#define HUNGRY...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Cena de los filosofos
  • La cena de los filosofos
  • la cena de los filosofos
  • La cena de los filosofos JAVA
  • Análisis Algoritmo Los Filósofos Pensantes
  • Cena De Filósofos
  • cena de los filosofos
  • Algoritmo de los filosofos comensales

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS