Shared-Variable Programming: Locks and Barriers
- Concurrent programs use two basic kinds of synchronization:
mutual exclusion and condition synchronization which can be implemented,
for instance, by critical sections or barriers
- Critical sections implement
atomic actions in software making a composite atomic action
- A barrier is a synchronization
point that all processes must reach before any process is allowed to proceed
- Mutual exclusion is typically implemented by means of locks
that protect critical sections of code