El Barbero Dormilón

April 10, 2023 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download El Barbero Dormilón...

Description

 

El barbero dormilón

Problema planteado por Dijkstra en 1971 • Una peluquería en la que hay un barbero, una silla de   peluquero y N sillas para que se sienten los clientes en espera, si es que los hay. • Si no hay clientes presentes, el barbero se sienta en  su silla de peluquero y se duerme. • Cuando llega un cliente, éste debe despertar al barbero   dormilón. • Si llegan más clientes mientras el barbero corta el cabello de   un cliente, se sientan (si hay sillas desocupadas) o salen de la peluquería (si todas las sillas están ocupadas). • Programar al barbero y los clientes.   Por lo que se ve, hay variables tipo bandera, que debe ser consultadas al iniciar un proceso, esto es clasico en los sitemas operativos multiprogramación. El problema consiste en una barbería en 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— cliente— se sienta en una silla (o se va si todas las sillas están ocupadas por clientes esperando). El problema consiste en realizar 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  la sección critica . 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 de multiprocesamiento.

Fuente(s): #include #include #include void graficar(); char SB, op; /*SB ='1' indica ocupada, '0' vacia */ int SC[6], i, j, cc, orden, t1; /* las sillas llevaran el turno */ void main(){ textmode(C80); textbackground(0); for(i=0; i
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF