Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Lamport's distributed mutual exclusion algorithm

Parallel and Distributed Algorithm

Lamport's distributed mutual exclusion algorithm is a contention-based method for letting the processes of a distributed system take turns in a critical section with no central coordinator. Every process keeps its own queue of pending requests, ordered by virtual timestamps derived from Lamport timestamps. A process that wants the critical section puts its request in its own queue, sends the request to every other node and waits for a reply from each. It enters when its own request is at the head of its queue and all replies have arrived. On leaving it removes its request and sends a release message to every process. The other processes queue each request they receive, answer with a timestamp, and delete a request when its release arrives. Each entry costs 3(N - 1) messages for N processes, made up of requests, replies and releases. Its drawbacks are that the failure of any one process halts progress and that the message cost is high. The Ricart-Agrawala algorithm is an improvement over it.

Facts
Time Complexity
Time Complexity (category)
Linear Time -- O(n) 1
Connections

Credited To

Source Lamport's distributed mutual exclusion algorithm (Wikipedia)

In Field

Source Lamport's distributed mutual exclusion algorithm (Wikipedia)

Invented By

Source Communications of the ACM (Leslie Lamport, 1978): Time, Clocks, and the Ordering of Events in a Distributed System
Sources
1. Lamport's distributed mutual exclusion algorithm (Wikipedia)
  • Section: Message complexity
    This algorithm creates 3(N − 1) messages per request
  • In Group: Concurrency and Distributed Systems Techniques, Article lead
    Lamport's Distributed Mutual Exclusion Algorithm is a contention-based algorithm for mutual exclusion on a distributed system.
  • In Field: Distributed Computing, Article lead
    Lamport's Distributed Mutual Exclusion Algorithm is a contention-based algorithm for mutual exclusion on a distributed system.
  • Credited To: Leslie Lamport, Article lead, title of the algorithm
    Lamport's Distributed Mutual Exclusion Algorithm is a contention-based algorithm for mutual exclusion on a distributed system.
View the Source
Communications of the ACM (Leslie Lamport, 1978): Time, Clocks, and the Ordering of Events in a Distributed System
Communications of the ACM (Leslie Lamport, 1978)Invented By: Leslie Lamport, PDF page 4
Quote, Invented By: Leslie Lamport, PDF page 4
We will illustrate the use of this total ordering of events by solving the following version of the mutual exclusion problem.
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.