Why Synchronize? Need to know when it is safe for different processes to use shared data
Issues for Synchronization:
Uninterruptable
instruction to fetch and update memory (atomic operation);
User level synchronization operation using
this primitive;
For large scale MPs, synchronization can be
a bottleneck; techniques
to reduce contention and latency of synchronization