Monitor Facilities
A monitor guarantees mutual exclusion
- only one process can be executing within the monitor at any instant
- semaphore implicitly associated with monitor.
- if a second process tries to enter a monitor procedure, it blocks until the first has left the monitor
- More restrictive than semaphores
- easier to use most of the time
Once in the monitor, a process may discover that it cannot continue, and may wish to sleep. Or it may wish to allow a waiting process to continue.
- Condition Variables provide synchronization within the monitor so that processes can wait or signal others to continue.