The mutual exclusion problem: part I—a theory of interprocess communication
@article{Lamport1986TheME, title={The mutual exclusion problem: part I—a theory of interprocess communication}, author={Leslie Lamport}, journal={J. ACM}, year={1986}, volume={33}, pages={313-326} }
A novel formal theory of concurrent systems that does not assume any atomic operations is introduced. The execution of a concurrent program is modeled as an abstract set of operation executions with two temporal ordering relations: “precedence” and “can causally affect”. A primitive interprocess communication mechanism is then defined. In Part II, the mutual exclusion is expressed precisely in terms of this model, and solutions using the communication mechanism are given.
Figures from this paper
246 Citations
Two implementation relations and the correctness of communicating replicated processes
- Computer ScienceFormal Aspects of Computing
- 2005
This paper studies the correctness of distributed systems made up of replicated processes that communicate by message passing, and shows how a target process may be implemented by replicating it in a set of copies, a majority of which is non-faulty.
A formalism for specifying communicating processes
- Computer ScienceCSC '93
- 1993
This work presents a framework to specify and validate the design of message passing systems with synchronous or asynchronous communications, and describes how a systolic array and a communication protocol can be specified and justified with respect to its design.
A PROOF TECHNIQUE FOR REGISTER ATOMICITY (Preliminary Version)
- Computer Science
- 2006
A new model is rigorously presented for the first time, and then a new method is given for proving register atomicity, which is then used to give a simple proof of the atomicity of the first and only direct construction of a multireader multiwriter register from atomic I-reader I-writer r<'gisters.
Towards the automatic synthesis of asynchronous communication mechanisms
- Computer Science
- 2010
This work introduces a technique for the automatic synthesis of ACMs, having as starting point only its functional specification, and the result is an ACM implementation that can be used to communicate two asynchronous processes guaranteeing properties such as coherence and freshness.
Partial order relations in distributed object environments
- Computer ScienceOPSR
- 2000
This work generalizes the Lamport's Happened-before relation defined for message passing applications to a causal relation between actions or methods in object world and precise a set of order properties for group method invocations.
On Lamport's interprocessor communication model
- Computer ScienceTOPL
- 1989
The extent to which Leslie Lamport's axiom system differs from systems based on “atomic,” or indivisible, actions is determined.
Service Availability in Concurrent Systems - Part I: A Theory of Hierarchical Services of Interacting Processes
- Computer ScienceComput. J.
- 2007
An axiomatic model of concurrent systems is introduced through which a number of issues related to service availability including mutual exclusion, deadlock/starvation freedom, denial/quality of services and fault tolerance can be described in a cohesive manner.
Modelling Reactive Hardware Processes Using Partial Orders
- Computer Science
- 1990
This work presents an approach based on partial-order semantics for abstract specification and composition of reactive hardware processes, and proves the correctness of networks of such processes, by using behavior machines as finite presentations of pomtrees.
Specification of time dependencies and synthesis of concurrent processes
- Computer ScienceICSE '87
- 1987
It is shown how the interval calculus may be used to give very-high-level specifications of concurrent process protocols, and how these specifications may be automatically refined using interval calculus into a target specification language.
References
SHOWING 1-10 OF 23 REFERENCES
A New Approach to Proving the Correctness of Multiprocess Programs
- Computer ScienceTOPL
- 1979
A new, nonassertional approach to proving multiprocess program correctness is described by proving the correctness of a new algorithm to solve the mutual exclusion problem. The algorithm is an…
Concurrent Programming Concepts
- Computer ScienceCSUR
- 1973
The evolution of language features for multiprogramming from event queues and semaphores to critical regions and monitors is described and it is suggested that the choice of language concepts should be guided by two simple principles.
Solution of a problem in concurrent programming control
- MathematicsCACM
- 1983
A number of mainly independent sequential-cyclic processes with restricted means of communication with each other can be made in such a way that at any moment one and only one of them is engaged in…
Solution of a problem in concurrent programming control
- MathematicsCACM
- 1965
A number of mainly independent sequential-cyclic processes with restricted means of communication with each other can be made in such a way that at any moment one and only one of them is engaged in…
A new solution of Dijkstra's concurrent programming problem
- Computer ScienceCACM
- 1974
A simple solution to the mutual exclusion problem is presented which allows the system to continue to operate despite the failure of any individual component.
Anomalous Behavior of Synchronizer and Arbiter Circuits
- Computer ScienceIEEE Transactions on Computers
- 1973
Observations are shown of oscillatory and metastable behavior of flip-flops in response to logically undefined input conditions such as those that occur in synchronizers and arbiters. Significant…
Space and Time
- ArtNature
- 1913
Abstract“FROM this time forth space and time apart from each other are become mere shadows, and only a kind of compound of the two can have any reality.” So spoke Herrmann Minkowski in 1908. But his…
Space-Time Physics
- Physics
- 1967
E. F. Taylor and J. A. Wheeler London: W. H. Freeman ' Co. 1966. Pp. 208. Price £1 6s. In recent years there has been something of a revolution in the teaching of the special theory of relativity. A…
The Mutual Exclusion Problem for Unreliable Processes: Preliminary Report
- Computer ScienceFOCS 1976
- 1976