July 2014
Intermediate to advanced
554 pages
17h 49m
English
Chapter 7
Mutual exclusion is a fundamental problem in concurrent programming and has been extensively studied under different contexts. Imagine that n users (n > 1) want to print data on a shared printer infinitely often. Since at most one user can print at any time, there should be a protocol for the fair sharing of that printer. As another example, consider a network of processes, where each process has a copy of a shared file F. To be consistent, all copies of F must be identical, regardless of how individual processes perform their read or write operations. Simultaneous updates of the local copies will violate the consistency of F. A simple way to achieve this is to give each process exclusive write access ...