Lamport on mutual exclusion: 27 years of planting seeds

Mutual exclusion is a topic that Leslie Lamport has returned to many times throughout his career. This article, which is being written in celebration of Lamport's sixtieth birthday, is an attempt to survey some of his many contributions to research on this topic.

[1]  Evangelos Kranakis,et al.  Atomic Multireader Register , 1987, WDAG.

[2]  Baruch Awerbuch,et al.  Atomic shared register access by asynchronous hardware , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[3]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[4]  Leslie Lamport,et al.  The mutual exclusion problem: partII—statement and solutions , 1986, JACM.

[5]  James H. Anderson,et al.  Fast, scalable synchronization with minimal hardware support , 1993, PODC '93.

[6]  Gary L. Peterson,et al.  Constructing multi-reader atomic values from non-atomic values , 1987, PODC '87.

[7]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[8]  Leslie Lamport Concurrent reading and writing of clocks , 1990, TOCS.

[9]  Leslie Lamport A New Approach to Proving the Correctness of Multiprocess Programs , 1979, TOPL.

[10]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[11]  Hagit Attiya,et al.  Adaptive and efficient mutual exclusion (extended abstract) , 2000, PODC.

[12]  Hagit Attiya,et al.  Adaptive and efficient mutual exclusion , 2002, PODC '00.

[13]  Ashok K. Agrawala,et al.  Real-time system design , 1990, McGraw-Hill Computer Science series.

[14]  Leslie Lamport,et al.  A fast mutual exclusion algorithm , 1987, TOCS.

[15]  Yehuda Afek,et al.  Fast, wait-free (2k-1)-renaming , 1999, PODC '99.

[16]  Bard Bloom,et al.  Constructing two-writer atomic registers , 1987, PODC '87.

[17]  Donald E. Knuth,et al.  Additional comments on a problem in concurrent programming control , 1966, CACM.

[18]  W DijkstraEdsger Self-stabilizing systems in spite of distributed control , 1974 .

[19]  Leslie Lamport,et al.  The mutual exclusion problem: part I—a theory of interprocess communication , 1986, JACM.

[20]  James H. Anderson,et al.  Time/Contention Trade-Offs for Multiprocessor Synchronization , 1996, Inf. Comput..

[21]  Mark Moir,et al.  Fast, Long-Lived Renaming (Extended Abstract) , 1994, WDAG.

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

[23]  Ambuj K. Singh,et al.  The elusive atomic register , 1994, JACM.

[24]  Bard Bloom Constructing Two-Writer Atomic Registers , 1988, IEEE Trans. Computers.

[25]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[26]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[27]  James H. Anderson,et al.  An improved lower bound for the time complexity of mutual exclusion , 2001, PODC '01.

[28]  Leslie Lamport,et al.  win and sin: predicate transformers for concurrency , 1990, TOPL.

[29]  Robert Cypher The communication requirements of mutual exclusion , 1995, SPAA '95.

[30]  Eugene Styer Improving fast mutual exclusion , 1992, PODC '92.

[31]  Paul G. Sorenson,et al.  A Real-Time System Design Methodology* , 1975 .

[32]  John Tromp How to Construct an Atomic Variable (Extended Abstract) , 1989, WDAG.

[33]  Hagit Attiya,et al.  Adaptive Long-Lived Renaming with Read and Write Operations , 1999 .

[34]  John Tromp,et al.  How to construct an atomic variable , 1989 .

[35]  Leslie Lamport,et al.  Proving the Correctness of Multiprocess Programs , 1977, IEEE Transactions on Software Engineering.

[36]  B SchneiderFred Implementing fault-tolerant services using the state machine approach: a tutorial , 1990 .

[37]  Paul Gordon Sorenson,et al.  A methodology for real-time system development. , 1974 .

[38]  Hagit Attiya,et al.  Long-lived renaming made adaptive , 1999, PODC '99.

[39]  G. S. Graham A New Solution of Dijkstra ' s Concurrent Programming Problem , 2022 .

[40]  Hermann Kopetz,et al.  The non-blocking write protocol NBW: A solution to a real-time synchronization problem , 1993, 1993 Proceedings Real-Time Systems Symposium.

[41]  Leslie Lamport Reasoning about nonatomic operations , 1983, POPL '83.

[42]  Manhoi Choy,et al.  Adaptive solutions to the mutual exclusion problem , 1993, PODC '93.

[43]  Leslie Lamport,et al.  When does a correct mutual exclusion algorithm guarantee mutual exclusion? , 2000, Inf. Process. Lett..

[44]  Gary L. Peterson,et al.  Concurrent Reading While Writing , 1983, TOPL.

[45]  Mark Moir,et al.  Wait-Free Algorithms for Fast, Long-Lived Renaming , 1995, Sci. Comput. Program..

[46]  Mark Moir,et al.  Long-lived renaming made fast , 1995, PODC '95.

[47]  Leslie Lamport What it means for a concurrent program to satisfy a specification: why no one has specified priority , 1985, POPL '85.

[48]  Leslie Lamport,et al.  Concurrent reading and writing , 1977, Commun. ACM.

[49]  Hagit Attiya,et al.  Adaptive wait-free algorithms for lattice agreement and renaming (extended abstract) , 1998, PODC '98.

[50]  Richard E. Newman A Protocol for Wait-Free, Atomic, Multi-Reader Shared Variables , 1987, PODC.