Issue No. 10 - October (2007 vol. 18)
The group mutual exclusion problem extends the traditional mutual exclusion problem by associating a type (or a group) with each critical section. In this problem, processes requesting critical sections of the same type can execute their critical sections concurrently. However, processes requesting critical sections of different types must execute their critical sections in a mutually exclusive manner.We present a distributed algorithm for solving the group mutual exclusion problem based on the notion of surrogate-quorum. Intuitively, our algorithm uses the quorum that has been successfully locked by a request as a surrogate to service other compatible requests for the same type of critical section. Unlike the existing quorum-based algorithms for group mutual exclusion, our algorithm achieves low message complexity of O(q) and low (amortized) bit-message complexity of O(b q r), where q is the maximum size of a quorum, b is the maximum number of processes from which a node can receive critical section requests, and r is the maximum size of a request, while maintaining both synchronization delay and waiting time at two message hops. As opposed to some existing quorum-based algorithms, our algorithm can adapt without performance penalties to dynamic changes in the set of groups. Our simulation results indicate that our algorithm outperforms the existing quorum-based algorithms for group mutual exclusion by as much as 45% in some cases.
message-passing system, resource management, mutual exclusion, group mutual exclusion, , quorumbased algorithm
R. Atreya, N. Mittal and S. Peri, "A Quorum-Based Group Mutual Exclusion Algorithm for a Distributed System with Dynamic Group Set," in IEEE Transactions on Parallel & Distributed Systems, vol. 18, no. , pp. 1345-1360, 2007.