Abstract
This paper details the design of a scalable algorithm for the mutual exclusion problem. Starting by inserting a redundant assignment into Peterson's algorithm for two processes, we derive another algorithm that uses only local spins, i.e., a process busy-waits only on locally accessible shared variables. The new two-process algorithm is then adapted to serve as a building block of the complete tournament-like algorithm; the adaptation is such that the entire algorithm still uses only local spins, which is crucial for scalability. We consider the simplicity of the algorithm and its derivation to be the main contributions of this paper.
This work was supported in part by research awards from the National Science Council, Taiwan (R.O.C.) and College of Management, National Taiwan University.
Preview
Unable to display preview. Download preview PDF.
References
T.E. Anderson. The performance of spin lock alternatives for shared-memory multiprocessors. IEEE Transactions on Parallel and Distributed Systems, 1(1):6–16, January 1990.
M. Choy and A.K. Singh. Adaptive solutions to the mutual exclusion problem. Distributed Computing, 8(1):1–17, 1994.
E.W. Dijkstra. Solution of a problem in concurrent programming control. Communications of ACM, 8:569, 1965.
J.L.W. Kessels. Arbitration without common modifiable variables. Acta Informatica, 17:135–141, 1982.
L. Lamport. A fast mutual exclusion algorithm. ACM Transactions on Computer Systems, 5(1):1–11, February 1987.
N.A. Lynch. Distributed Algorithms. Morgan Kaufmann, 1996.
J.M. Mellor-Crummey and M.L. Scott. Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Transactions on Computer Systems, 9(1):21–65, February 1991.
G.L. Peterson. Myths about the mutual exclusion problem. Information Processing Letters, 12(3):115–116, June 1981.
G.L. Peterson and M.J. Fischer. Economical solutions for the critical section problem in a distributed system. In Proceedings of the 9th Annual ACM Symposium on Theory of Computing, pages 91–97, 1977.
J.-H. Yang and J.H. Anderson. A fast, scalable mutual exclusion algorithm. Distributed Computing, 9(1):51–60, 1995.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tsay, YK. (1998). Deriving a scalable algorithm for mutual exclusion. In: Kutten, S. (eds) Distributed Computing. DISC 1998. Lecture Notes in Computer Science, vol 1499. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0056497
Download citation
DOI: https://doi.org/10.1007/BFb0056497
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65066-9
Online ISBN: 978-3-540-49693-9
eBook Packages: Springer Book Archive