In this paper, we present a distributed algorithm for mutual exclusion based on path reversal. The algorithm does not use logical clocks to serialize the concurrent events, and all the variables are bounded. When a process invokes a critical section, it sends a request to the tail of a queue. A dynamical rooted tree gives the path to this tail. The algorithm requires only O(Log (n)) messages on average, where n is the number of processes in the network. The performances analysis of the algorithm is based on generating formal power series. This work was financed in part by the CNRS: Unité associée 040822 and the C 3 co-ordinated research program.
Under certain assumptions on the probability distribution of operations at nodes, it is shown REF that an expected O(log n) messages are required per queuing operation, where n is the number of nodes in the graph.
A Log (N) Distributed Mutual Exclusion Algorithm Based on the Path Reversal
Journal of Parallel and Distributed Computing
Computer Science