The authors present an algorithm for solving the k mutual exclusion problem in a distributed system. The algorithm is token based, whereby a token is passed among sites. Only sites that either receive the token with a nonzero semaphore or receive the token with a zero semaphore and later receive a release message from a previous site are allowed to enter their critical sections. Attached to the token is a queue which lists the sites scheduled to receive the token and a general semaphore. In all cases except extremely light token request traffic, the number of messages per critical section execution can be expressed as a small constant. This constant approaches three in an extremely heavy token request environment. >
['Kia Makki', 'Paul Banta', 'Ken Been', 'Niki Pissinou', 'E. K. Park']
A token based distributed k mutual exclusion algorithm