PDA

View Full Version : Esercizio su semafori e monitor


gabmac2
20-02-2010, 21:49
Ho svolto questo esercizio su monitor e semafori e vorrei sapere un vostro giudizio
Una strada a senso alternato non permette il passaggio di auto,se non un senso per volta
SEMAFORI
rosse da sinistra a destra e blu viceversa

sem autorosse; sem autoblu; int turno =0;int max=5;

passa(){
if(autososse>autoblu){
turno=0;
for (i=0;i<MAX;i++){
wait(mutex)
autoblu++
autorosse--
---passa---
wait autorosse
signal autoblu
signal(mutex)
l' else è al contrario

MONITOR

condizione stradalibero
int nred, nblue, waitred, waitblue;
booleano turno
entra rossa

waitred := waitred+1;
while(nblue>0 or (waitblue>0 and turno))
do wait(stradalibero);
waitred := waitred-1;
nred := nred +1;

Come vi sembra ?
Grazie in anticipo

gabmac2
21-02-2010, 16:15
nessuno?