Sunday 11 March 2012

Algorithm 2

  • Shared variables
  1. boolean flag[2];
  2. initially flag [0] = flag [1] = false.
  3. flag [i] = true Þ Pi ready to enter its critical section
  • Process Pi
  do {
  flag[i] := true;
  while (flag[j]) ; 
critical section
  flag [i] = false;
  remainder section
  } while (1);
  • Satisfies mutual exclusion, but not progress requirement.

No comments:

Post a Comment