top of page

U   ALGORITMO DE FILOSOFOS

El problema de los filósofos cenando es un problema clÔsico de las ciencias de la computación propuesto por Edsger Dijkstra en 1965 para representar el problema de la sincronización de procesos en un sistema operativo.

 

Enunciado:

 

Cinco filósofos se sientan alrededor de una mesa y pasan su vida cenando y pensando. Cada filósofo tiene un plato de fideos y un tenedor a la izquierda de su plato. Para comer los fideos son necesarios dos tenedores y cada filósofo sólo puede tomar los que estÔn a su izquierda y derecha. Si cualquier filósofo toma un tenedor y el otro estÔ ocupado, se quedarÔ esperando, con el tenedor en la mano, hasta que pueda tomar el otro tenedor, para luego empezar a comer.

 

Posibles Soluciones

 

 Por turno cĆ­clico

Se empieza por un filósofo, que si quiere puede comer y despuĆ©s pasa su turno al de la derecha. Cada filósofo sólo puede comer en su turno. Problema: si el nĆŗmero de filósofos es muy alto, uno puede morir de hambre antes de su turno.  

 

Colas de tenedores

Cuando un filósofo quiere comer se pone en la cola de los dos tenedores que necesita. Cuando un tenedor estÔ libre lo toma. Cuando toma los dos tenedores, come y deja libre los tenedores.

 

 

.

 

La imagen es el algoritmo de la cena de los 5 filósofos... los filósofos estarÔn en el estado de hambre, comer y pensar un filósofo puede coger 2 tenedores. Esto indica q solo 2 filósofos comerÔn y los demÔs estarÔn en estado hambriento. Los filósofos que estén comiendo pensaran hasta que llegue el turno de los filósofos hambrientos.

Universidad Los Libertadores



Elaborado:Giovanni Lopez

 

Docente:Jose Fernando Pinto

 

bottom of page