Vous êtes sur la page 1sur 1

var

boolean p;
condition ca,cb;
int NS,SN;

Procedure Entry Entree_nord()


Begin
si (p = TRUE) alors
ca.signal;
NS ++;
p = FALSE;
finsi
si (p=FALSE) alors
ca.wait;
finsi
fin

procedure Entry sortie_nord()


begin
NS--;
si(p=TRUE) alors
cb.signal();
SN++;
p = false;
finsi
fin

Procedure Entry Entree_sud()


Begin
si (p = TRUE) alors
cb.signal;
SN ++;
p = FALSE;
finsi
si (p=FALSE) alors
cb.wait;
finsi
fin

procedure Entry sortie_sud()


begin
SN--;
si(p=TRUE) alors
ca.signal();
NS++;
p = false;
finsi
fin

Vous aimerez peut-être aussi