We present a very simple new distributed algorithm for the classical Dining Philosophers problem.
Our algorithm is the first algorithm with the following important properties:
(1) It is fully distributed; i.e., there is no central memory or central process to which every other process may have access.
(2) It is symmetric; i.e., all processes behave identically, and do not use any process identifiers.
(3) It has a response time ≤ 3ℓ, independent of the size of the ring, where ℓ is an upper bound on the time a resource may be used by a process. Moreover, we establish the optimality of our algorithm with respect to this last measure by proving that no distributed algorithm can guarantee a response time less than 3ℓ.