Abstract
We present a “fine-grained” solution to the mutual exclusion problem. A program isfine-grained if it uses only single-reader, single-writer boolean variables and if each of its atomic operations has at most one occurrence of at most one shared variable. In contrast to other fine-grained solutions that have appeared in the literature, processes in our solution do not bysy-wait, but wait on one another only by executingawait statements. Such statements can be implemented in practice either by means of context switching or by means of “local” spinning. We show that our algorithm is correct even if shared variables are accessed nonatomically.
Similar content being viewed by others
References
Anderson, J., Gouda, M.: Atomic semantics of nonatomic programs. Inf. Process. Lett.28, 99–103 (1988)
Burns, J., Lynch, N.: Bounds on shared memory for mutual exclusion. Inf. Comput. to appear. Originally appeared as: Mutual exclusion using indivisible reads and writes. Proceedings of the 18th Allerton Conference on Communication, Control, and Computing, October 1980, pp. 833–842
Dijkstra, E.: Solution of a problem in concurrent programming control. Commun. ACM8(9), 569 (1965)
Dijkstra, E.: A discipline of programming. Englewood Cliffs, NJ: Prentice-Hall 1976
Kessels, J.: Arbitration without common modifiable variables. Acta Inf.17, 135–141 (1982)
Lamport, L.: On interprocess communication, Parts I and II. Distrib. Comput.1, 77–101 (1986)
Lamport, L.: The mutual exclusion problem II. Statement and solutions. J. ACM33 (2), 327–348 (1986)
Lamport, L.: Personal communication
Mellor-Crummey, J., Scott, M.: Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Trans. Comput. Syst.9 (1), 21–65 (1991)
Peterson, G.: Myths about the mutual exclusion problem. Inf. Process. Lett.12 (3), 115–116 (1981)
Peterson, G.: A new solution to Lamport's concurrent programming problem using small shared variables. ACM Trans. Program. Lang. Syst.5 (1), 56–65 (1983)
Author information
Authors and Affiliations
Additional information
Work supported, in part, by NSF Contract CCR 9109497 and by the Center of Excellence in Space Data and Information Sciences
Rights and permissions
About this article
Cite this article
Anderson, J.H. A fine-grained solution to the mutual exclusion problem. Acta Informatica 30, 249–265 (1993). https://doi.org/10.1007/BF01179373
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF01179373