Programming Concurrent Systems

Chapter 3, in Edsger Wybe Dijkstra: His Life, Work, and Legacy

Published by ACM | 2022

ISBN: ISBN: 978-1-4503-9774-2

Tribute volume for Edsger Dijkstra

Related File | PDF

Concurrent programs are nondeterministic, which makes them difficult to reason about and to debug. But today computing systems have lots of processors, so concurrent programs are unavoidable. Atomicity makes it possible to reason as though most of the program is sequential, with locks and conditions allowing a number of sequential processes to communicate safely using ideas introduced by Dijkstra in the 1960s.