#define true;
# define false;
int flag[2];
flag[1]=flag[2]=false;
enter-crtsec(i)
int i;
{
While(flag[1-i])
flag[i]=true;
}
leave-crtsec(i)
int i;
{
flag[i]=false;
}
process I;
…
Enter-crtsec(i);
In critical section;
Leave-crtsec(i);