Mutual Exclusion: The Cornerstone of Synchronization - Requirements for Solutions to the Critical Section Problem | OneNoughtOne