Return to Contents


The Critical Section Problem

Critical Section

Critical Section (S&G, p. 166) (for example, ``for the process table'')

repeat
     
      critical section
     
      remainder section
until FALSE


Solution to the Critical Section Problem must meet three conditions...

  1. mutual exclusion: if process is executing in its critical section, no other process is executing in its critical section
  2. progress: if no process is executing in its critical section and there exists some processes that wish to enter their critical sections, then only those processes that are not executing in their remainder section can participate in the decision of which will enter its critical section next, and this decision cannot be postponed indefinitely

  3. bounded waiting: there must exist a bound on the number of times that other processes are allowed to enter their critical sections after a process has made a request to enter its critical section and before that request is granted



Return to Contents