Crirical Sections with Hardware Primitives
Test and Set
Swap
Fetch and Add
Problems with simple solutions that use these primitives