Locks: Introduction
This note attacks the problem of how to provide what is called a lock, which is trying to put some code around critical sections to enable them to appear to execute as if they were a single atomic instruction.