
List of Figures
1.1 Dependencies in a simple cooking activity . . . . . . . . . . . 11
2.1 An operating system process and its components . . . . . . . 20
2.2 Components of a multithreaded process . . . . . . . . . . . . 21
2.3 Relating parallel, concurrent, and general program execution 23
2.4 Timelines illustrating parallel versus non-parallel execution . 25
2.5 Two processes executing a non-atomic counter increment with-
out interleaving . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.6 Two processes executing a non-atomic counter increment with
erroneous interleaving . . . . . . . . . . . . . . . . . . . . . . 34
4.1 A sequence of messages ...