Arquitectura del computador

Páginas: 9 (2018 palabras) Publicado: 16 de octubre de 2010
La cena de los filósofos 
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. Pero para comer los fideos son necesarios dos tenedores y cada filósofo puede tomar el tenedor que esté a su izquierda o derecha, uno por vez (o sea, no puede tomar los dos al mismo tiempo, pero puede tomaruno y después el otro). Si cualquier filósofo coge un tenedor y el otro está ocupado, se quedará esperando, con el tenedor en la mano, hasta que pueda coger el otro tenedor, para luego empezar a comer. 

Si dos filósofos adyacentes intentan tomar el mismo tenedor a una vez, se produce una condición de carrera: ambos compiten por tomar el mismo tenedor, y uno de ellos se queda sin comer. 

Sitodos los filósofos cogen el tenedor que está a su derecha al mismo tiempo, entonces todos se quedarán esperando eternamente, porque alguien debe liberar el tenedor que les falta. Nadie lo hará porque todos se encuentran en la misma situación (esperando que alguno deje sus tenedores). Entonces los filósofos se morirán de hambre. Este bloqueo mutuo se denomina deadlock. 

Una solución sería porturno cíclico. Empieza por un filósofo, después pasa su turno al de la derecha. Cada filósofo solo puede comer en su turno. Si el número de filósofos es muy alto, uno puede morir de hambre antes de su turno por lo que no es factible. También podrían Pedir más tenedores al camarero. En caso de negarse, pedir la hoja de reclamaciones. Seguramente el camarero ya habrá muerto de hambre, ya que en elcomedor de personal tienen un problema similar pero con cucharas.

Podrían Comer con un solo tenedor ya que no tiene sentido comer con dos. Si fuera un cuchillo, si tendría sentido, pero Dios no lo permitiría.

Uno podría ir a buscar más tenedores, pero los que inventaron el problema lanzarían un chorro de agua fría sobre los filósofos que quedaban en la mesa. Después de algún tiempo, cuandofuera otro filósofo a hacer lo mismo, lo molerían a palos. Pasado algún tiempo, ningún filósofo iría a buscar tenedor alguno, a pesar del hambre. Entonces si llegase otro filósofo, lo primero que haría sería buscar un tenedor, por lo que sería apaleado. Luego de algunas palizas, el nuevo filósofo ya no iría a buscar más tenedores. Si llegase otro, lo mismo.

El último en llegar participó conentusiasmo de la paliza del novato. Un tercero llegó y se repitió el hecho. Finalmente, los filósofos más antiguos morirían de hambre de tanto esperar por comer y solo quedarían los recién llegados.

Quedaron entonces, un grupo de filósofos, aun cuando nunca recibieron un baño de agua fría, los cuales continuaban golpeando a aquel que fuera a buscar tenedores. Si fuese posible preguntar a algunos deellos por qué le pegaban a quien intentase buscar tenedores, con certeza la respuesta sería: No sé, las cosas siempre se han hecho así aquí. El problema se acabaría resolviendo solo, ya que hay una cantidad finita de filósofos en el mundo.

EL barbero dormilon

En ciencias de la computación, el problema del barbero durmiente es un problema de sincronización. El problema consiste en una barberíaen la que trabaja un barbero que tiene un único sillón de barbero y varias sillas para esperar. Cuando no hay clientes, el barbero se sienta en una silla y se duerme. Cuando llega un nuevo cliente, éste o bien despierta al barbero o —si el barbero está afeitando a otro cliente— se sienta en una silla (o se va si todas las sillas están ocupadas por clientes esperando). El problema consiste enrealizar la actividad del barbero sin que ocurran condiciones de carrera. La solución implica el uso de semáforos y objetos de exclusión mutua para proteger la sección crítica.

Un semáforo es una variable protegida (o tipo abstracto de datos) que constituye el método clásico para restringir o permitir el acceso a recursos compartidos (por ejemplo, un recurso de almacenamiento) en un entorno...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • arquitectura de computadores
  • arquitectura de computadoras
  • Arquitectura de computadores
  • Arquitectura de computadoras
  • Arquitectura del Computador
  • Arquitectura De Computadoras
  • Arquitectura de computadoras
  • Arquitectura de computadoras

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS