CS 550: NOTES ON CONCURRENCY
Jan. 28, 2005
General Notes
Software Algorithms for Mutual Exclusion
2-Process Case
Incorrect Algorithm No. 1
Incorrect Algorithm No. 2
Incorrect Algorithm No. 3
Incorrect Algorithm No. 4
Dekker's Algorithm
Peterson's Algorithm
N-Process Case
Eisenberg and MacGuire's Algorithm
Peterson's N-Process algorithm
Lamport's Bakery Algorithm
Implementation of Synchronization Mechanisms
Implementing a Simple Binary Semaphore
Implementing a Fair Binary Semaphore
Implementing a Counting Semaphore
Implementing a Monitor
Using Synchronization Mechanisms
Semaphore Solution for Producer-Consumer
Monitor Solution for Producer-Consumer
Monitor Solution for Dining Philosophers
Back to Notes Index
Back to CS356 Main Page