Abstract
This chapter is on one of the most important synchronization problems, namely mutual exclusion. This problem (whose name is usually shortened to “mutex”) consists of ensuring that at most one process at a time is allowed to access some resource (which can be a physical or a virtual resource).
After having defined the problem, the chapter presents two approaches which allow us to solve it. Both are based on permissions given by processes to other processes. The algorithms of the first approach are based on individual permissions, while the algorithms of the second approach are based on arbiter permissions (arbiter-based algorithms are also called quorum-based algorithms).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
D. Agrawal, A. El Abbadi, An efficient and fault-tolerant solution for distributed mutual exclusion. ACM Trans. Comput. Syst. 9(1), 1–20 (1991)
M. Ahamad, M.H. Ammar, S.Y. Cheung, Multidimensional voting. ACM Trans. Comput. Syst. 9(4), 399–431 (1991)
D. Barbara, H. Garcia Molina, Mutual exclusion in partitioned distributed systems. Distrib. Comput. 1(2), 119–132 (1986)
D. Barbara, H. Garcia Molina, A. Spauster, Increasing availability under mutual exclusion constraints with dynamic vote assignments. ACM Trans. Comput. Syst. 7(7), 394–426 (1989)
G. Cao, M. Singhal, A delay-optimal quorum-based mutual exclusion algorithm for distributed systems. IEEE Trans. Parallel Distrib. Syst. 12(12), 1256–1268 (1991)
O. Carvalho, G. Roucairol, On the distribution of an assertion, in Proc. First ACM Symposium on Principles of Distributed Computing (PODC’1982) (ACM Press, New York, 1982), pp. 18–20
O. Carvalho, G. Roucairol, On mutual exclusion in computer networks. Commun. ACM 26(2), 146–147 (1983)
K.M. Chandy, J. Misra, The drinking philosophers problem. ACM Trans. Program. Lang. Syst. 6(4), 632–646 (1984)
E.W. Dijkstra, Solution of a problem in concurrent programming control. Commun. ACM 8(9), 569 (1965)
H. Garcia Molina, D. Barbara, How to assign votes in a distributed system. J. ACM 32(4), 841–860 (1985)
D.K. Gifford, Weighted voting for replicated data, in Proc. 7th ACM Symposium on Operating System Principles (SOSP’79) (ACM Press, New York, 1979), pp. 150–172
J.-M. Hélary, N. Plouzeau, M. Raynal, A distributed algorithm for mutual exclusion in arbitrary networks. Comput. J. 31(4), 289–295 (1988)
T. Ibaraki, T. Kameda, A theory of coteries: mutual exclusion in distributed systems. J. Parallel Distrib. Comput. 4(7), 779–794 (1993)
L. Lamport, Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)
S. Lodha, A.D. Ksemkalyani, A fair distributed mutual exclusion algorithm. IEEE Trans. Parallel Distrib. Syst. 11(6), 537–549 (2000)
M. Maekawa, A \(\sqrt{n}\) algorithm for mutual exclusion in decentralized systems. ACM Trans. Comput. Syst. 3(2), 145–159 (1985)
M. Naor, A. Wool, The load, capacity and availability of quorums systems. SIAM J. Comput. 27(2), 423–447 (2008)
M.L. Neilsen, M. Masaaki, M. Raynal, A general method to define quorums, in Proc. 12th Int’l IEEE Conference on Distributed Computing Systems (ICDCS’92) (IEEE Press, New York, 1992), pp. 657–664
M. Nesterenko, M. Mizuno, A quorum-based self-stabilizing distributed mutual exclusion algorithm. J. Parallel Distrib. Comput. 62(2), 284–305 (2002)
D. Peleg, A. Wool, Crumbling walls: a class of practical and efficient quorum systems. Distrib. Comput. 10(2), 87–97 (1997)
M. Raynal, Algorithms for Mutual Exclusion (The MIT Press, Cambridge, 1986), 107 pages. ISBN 0-262-18119-3
M. Raynal, A simple taxonomy of distributed mutual exclusion algorithms. Oper. Syst. Rev. 25(2), 47–50 (1991)
M. Raynal, Concurrent Programming: Algorithms, Principles, and Foundations (Springer, Berlin, 2012), 500 pages. ISBN 978-3-642-32026-2
G. Ricart, A.K. Agrawala, An optimal algorithm for mutual exclusion in computer networks. Commun. ACM 24(1), 9–17 (1981)
B. Sanders, The information structure of distributed mutual exclusion algorithms. ACM Trans. Comput. Syst. 5(3), 284–299 (1987)
M. Singhal, A class of deadlock-free Maekawa-type algorithms for mutual exclusion in distributed systems. Distrib. Comput. 4(3), 131–138 (1991)
M. Singhal, A dynamic information-structure mutual exclusion algorithm for distributed systems. IEEE Trans. Parallel Distrib. Syst. 3(1), 121–125 (1992)
M. Singhal, A taxonomy of distributed mutual exclusion. J. Parallel Distrib. Comput. 18(1), 94–101 (1993)
G. Taubenfeld, Synchronization Algorithms and Concurrent Programming (Pearson Prentice-Hall, Upper Saddle River, 2006), 423 pages. ISBN 0-131-97259-6
R.H. Thomas, A majority consensus approach to concurrency control for multiple copy databases. ACM Trans. Database Syst. 4(2), 180–209 (1979)
M. Vukolić, Quorum Systems with Applications to Storage and Consensus (Morgan & Claypool, San Francisco, 2012), 130 pages. ISBN 798-1-60845-683-3
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Raynal, M. (2013). Permission-Based Mutual Exclusion Algorithms. In: Distributed Algorithms for Message-Passing Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38123-2_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-38123-2_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-38122-5
Online ISBN: 978-3-642-38123-2
eBook Packages: Computer ScienceComputer Science (R0)