TL;DR: This work has proposed a modification of Raymond's algorithm that not only overcomes the fairness problem, but also handles the priority of the requesting processes.
Abstract: The traditional approaches towards implementing mutual exclusion can not be applied for distributed systems where nodes are loosely coupled. The existing algorithms typically follow either a symmetric or a token based approach. While the symmetric algorithms tend to increase the network traffic, token based approach offers solutions at a lower communication cost. Raymond has designed an efficient token based mutual exclusion algorithm. However, one major limitation of Raymond's algorithm is the lack of fairness in the sense that a token request that is generated later may be granted ahead of another request that was made earlier. In this work, we have proposed a modification of Raymond's algorithm. The new token based algorithm not only overcomes the fairness problem, but also handles the priority of the requesting processes.
TL;DR: This work states that only one process is allowed to execute the critical section (CS) of a distributed system at any given time, and there are three basic approaches for implementing distributed mutual exclusion: token-based approach, non-token- based approach, and quorum-based approaches.
Abstract: Introduction Mutual exclusion is a fundamental problem in distributed computing systems. Mutual exclusion ensures that concurrent access of processes to a shared resource or data is serialized, that is, executed in a mutually exclusive manner. Mutual exclusion in a distributed system states that only one process is allowed to execute the critical section (CS) at any given time. In a distributed system, shared variables (semaphores) or a local kernel cannot be used to implement mutual exclusion. Message passing is the sole means for implementing distributed mutual exclusion. The decision as to which process is allowed access to the CS next is arrived at by message passing, in which each process learns about the state of all other processes in some consistent way. The design of distributed mutual exclusion algorithms is complex because these algorithms have to deal with unpredictable message delays and incomplete knowledge of the system state. There are three basic approaches for implementing distributed mutual exclusion: Token-based approach. Non-token-based approach. Quorum-based approach. In the token-based approach, a unique token (also known as the PRIVILEGE message) is shared among the sites. A site is allowed to enter its CS if it possesses the token and it continues to hold the token until the execution of the CS is over. Mutual exclusion is ensured because the token is unique.
TL;DR: In this paper, the authors proposed a modification of Raymond's algorithm, which not only overcomes the fairness problem, but also handles the priority of the requesting processes in a distributed system.
Abstract: The traditional approaches towards implementing mutual exclusion can not be applied for distributed systems where nodes are loosely coupled. The existing algorithms typically follow either a symmetric or a token based approach. While the symmetric algorithms tend to increase the network traffic, token based approach offers solutions at a lower communication cost. Raymond has designed an efficient token based mutual exclusion algorithm. However, one major limitation of Raymond's algorithm is the lack of fairness in the sense that a token request that is generated later may be granted ahead of another request that was made earlier. In this work, we have proposed a modification of Raymond's algorithm. The new token based algorithm not only overcomes the fairness problem, but also handles the priority of the requesting processes.