Some myths about famous mutual exclusion algorithms

Dekker's algorithm[9] is the historically first software solution to mutual exclusion problem for 2-process case. The first software solution for n-process case was subsequently proposed by Dijkstra[8]. These two algorithms have become de facto examples of mutual exclusion algorithms, for their historical importance. Since the publication of Dijkstra's algorithm, there have been many solutions proposed in the literature [24, 1, 2]. In that, Peterson's algorithm [21] is one among the very popular algorithms. Peterson's algorithm has been extensively analyzed for its elegance and compactness. This paper attempts to dispel the myths about some of the properties of these three remarkable algorithms, by a systematic analysis.

[1]  Edsger W. Dijkstra,et al.  Cooperating sequential processes , 2002 .

[2]  Edsger W. Dijkstra,et al.  Hierarchical ordering of sequential processes , 1971, Acta Informatica.

[3]  A. Einstein,et al.  The Evolution of Physics: The Growth of Ideas from the Early Concepts to Relativity and Quanta , 1938 .

[4]  Edsger W. Dijkstra,et al.  Letters to the editor: go to statement considered harmful , 1968, CACM.

[5]  William Stallings,et al.  Operating Systems: Internals and Design Principles , 1991 .

[6]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[7]  Michel Raynal,et al.  Algorithms for mutual exclusion , 1986 .

[8]  Edsger W. Dijkstra,et al.  Solution of a problem in concurrent programming control , 1965, CACM.

[9]  Mamoru Maekawa,et al.  Operating Systems: Advanced Concepts , 1987 .

[10]  M. Malik,et al.  Operating Systems , 1992, Lecture Notes in Computer Science.

[11]  Òòòðð,et al.  Shared-memory Mutual Exclusion: Major Research Trends Since 1986 , 1986 .

[12]  Alan Shaw,et al.  The logical design of operating systems , 1987 .

[13]  Alain J. Martin A New Generalization of Dekker's Algorithm for Mutual Exclusion , 1986, Inf. Process. Lett..

[14]  James H. Anderson,et al.  Shared-memory mutual exclusion: major research trends since 1986 , 2003, Distributed Computing.

[15]  H AndersonJames,et al.  Shared-memory mutual exclusion , 2003 .

[16]  James H. Anderson Lamport on mutual exclusion: 27 years of planting seeds , 2001, PODC '01.

[17]  Gregory R. Andrews,et al.  Concurrent programming - principles and practice , 1991 .

[18]  Edsger W. Dijkstra,et al.  Go To Statement Considered Harmful , 2022, Software Pioneers.

[19]  Tomasz Kowaltowski,et al.  Another Solution of the Mutual Exclusion Problem , 1984, Inf. Process. Lett..

[20]  Abraham Silberschatz,et al.  Operating Systems Concepts , 2005 .

[21]  Gary L. Peterson,et al.  Myths About the Mutual Exclusion Problem , 1981, Inf. Process. Lett..

[22]  P. Campbell How to Solve It: A New Aspect of Mathematical Method , 2005 .

[23]  Gregory R. Andrews,et al.  Foundations of Multithreaded, Parallel, and Distributed Programming , 1999 .

[24]  Micha Hofri,et al.  Proof of a mutual exclusion algorithm—a classic example , 1990, OPSR.

[25]  Mordechai Ben-Ari,et al.  Principles of concurrent programming , 1982 .