Skip to main content

Deriving a scalable algorithm for mutual exclusion

  • Contributed Papers
  • Conference paper
  • First Online:
Distributed Computing (DISC 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1499))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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.

    Article  Google Scholar 

  2. M. Choy and A.K. Singh. Adaptive solutions to the mutual exclusion problem. Distributed Computing, 8(1):1–17, 1994.

    Article  Google Scholar 

  3. E.W. Dijkstra. Solution of a problem in concurrent programming control. Communications of ACM, 8:569, 1965.

    Article  Google Scholar 

  4. J.L.W. Kessels. Arbitration without common modifiable variables. Acta Informatica, 17:135–141, 1982.

    Article  MATH  MathSciNet  Google Scholar 

  5. L. Lamport. A fast mutual exclusion algorithm. ACM Transactions on Computer Systems, 5(1):1–11, February 1987.

    Article  Google Scholar 

  6. N.A. Lynch. Distributed Algorithms. Morgan Kaufmann, 1996.

    Google Scholar 

  7. 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.

    Article  Google Scholar 

  8. G.L. Peterson. Myths about the mutual exclusion problem. Information Processing Letters, 12(3):115–116, June 1981.

    Article  MATH  Google Scholar 

  9. 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.

    Google Scholar 

  10. J.-H. Yang and J.H. Anderson. A fast, scalable mutual exclusion algorithm. Distributed Computing, 9(1):51–60, 1995.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Shay Kutten

Rights and permissions

Reprints 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

Publish with us

Policies and ethics