skip to main content
article
Free Access

A tree-based algorithm for distributed mutual exclusion

Published:01 January 1989Publication History
Skip Abstract Section

Abstract

We present an algorithm for distributed mutual exclusion in a computer network of N nodes that communicate by messages rather than shared memory. The algorithm uses a spanning tree of the computer network, and the number of messages exchanged per critical section depends on the topology of this tree. However, typically the number of messages exchanged is O(log N) under light demand, and reduces to approximately four messages under saturated demand.

Each node holds information only about its immediate neighbors in the spanning tree rather than information about all nodes, and failed nodes can recover necessary information from their neighbors. The algorithm does not require sequence numbers as it operates correctly despite message overtaking.

References

  1. 1 LAMPORT, L. Time, clocks, and the ordering of events in a distributed system. Comrnun. ACM 21, 7 (July 1978), 558-565. Google ScholarGoogle Scholar
  2. 2 MAEKAWA, M. A 4~ algorithm for mutual exclusion in decentralized systems. ACM Trans. Comput. Syst. 3, 2 (May 1985), 145-159. Google ScholarGoogle Scholar
  3. 3 RICART, G., AND AGRAWALA, A.K. An optimal algorithm for mutual exclusion in computer networks. Commun. ACM 24, 1 (Jan. 1981), 9-17. Google ScholarGoogle Scholar
  4. 4 SuzuKI, I., AND KASAMI, T. A distributed mutual exclusion algorithm. A CM Trans. Comput. Syst. 3, 4 (Nov. 1985), 344-49. Google ScholarGoogle Scholar

Index Terms

  1. A tree-based algorithm for distributed mutual exclusion

      Recommendations

      Reviews

      Charles N. Schroeder

      This interesting and well-written paper presents an algorithm for distributed mutual exclusion in a computer network. The algorithm uses messages, rather than shared memory, to pass the equivalent of a token that allows the node holding the privilege to enter the critical section. The author compares the algorithm to others, suggests ways to improve it, and lists some possible problems. The network topology affects the algorithm's performance (the number of messages passed); Raymond discusses best and worst cases as well as two variations of the algorithm's implementation. I found the paper easy to read and to follow. One could easily scan it for the major concepts, and even a novice at distributed systems and networking should be able to follow the flow of the paper and most of the proofs. I recommend this interesting approach to the general reader interested in distributed systems and networks.

      Access critical reviews of Computing literature here

      Become a reviewer for Computing Reviews.

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Computer Systems
        ACM Transactions on Computer Systems  Volume 7, Issue 1
        Feb. 1989
        116 pages
        ISSN:0734-2071
        EISSN:1557-7333
        DOI:10.1145/58564
        Issue’s Table of Contents

        Copyright © 1989 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 January 1989
        Published in tocs Volume 7, Issue 1

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader