The Dining Philosophers Problem Revisited

  • Jürg Gutknecht
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4228)


We present an alternative solution to the Dining Philosophers problem that is based on Peterson’s mutual exclusion algorithm for N processes, with the benefit of not using any ingredients beyond atomic read and write operations. We proceed in two steps towards a comprehensible, symmetric, and starvation-free algorithm that does neither rely on atomic test-and-set instructions nor on synchronization constructs such as monitors, signals, semaphores, locks, etc.


Critical Section Mutual Exclusion Filter Algorithm Mutual Exclusion Algorithm Dine Philosopher 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Dijkstra, E.W.: Hierarchical Ordering of Sequential Processes, Acts Informatica I, pp. 115–138 (1971)Google Scholar
  2. 2.
    Silberschatz, A., Peterson, J.L.: Operating Systems Concepts. Addison-Wesley, Reading (1988)MATHGoogle Scholar
  3. 3.
    Peterson, G.L.: Myths About the Mutual Exclusion Problem. IPL 12(3), 115–116 (1981)MATHCrossRefGoogle Scholar
  4. 4.
    Shavit, N.: Lecture Notes for Lecture 2, Chapter 2.4.1. Tel-Aviv University (2003),

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Jürg Gutknecht
    • 1
  1. 1.ETH Zürich 

Personalised recommendations