IEEE Transactions on Software Engineering · 1993 · 12 citations · 13 references
ComputingComputer EngineeringComputer ScienceAlgorithmsComputer ArchitectureDistributed SystemsClock SynchronizationConcurrent ModelingConcurrent ProgrammingDistributed ComputingInterprocess CommunicationTemporal LogicConcurrency SemanticsConcurrent ProcessesLogical ClocksTime Synchronization In Distributed SystemsVector Clocks
We have noticed two problems with viewing a process as a sequence of events. The first problem is the complete loss of information about potential intra-process concurrency for both sequential and distributed computations, and partial loss of information about potential inter-process concurrency for distributed computations. The second problem is that the resulting reasoning framework does not lend itself to refinement (from sequential computing or a given set of distributed processes) to a preferable set of distributed processes. We argue that it is more natural to view a computation, either distributed or sequential, as a partially ordered set of events. Doing so leads to a view, called passive-space and time view, which we propose. To aid users of the relation "Affects" in developing algorithms, we define vector clocks, that are global logical clocks, so that the relation "Affects", and hence all potential concurrency, between events can be identified from their timestamps assigned.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
13
Communicating sequential processes
C. A. R. Hoare · Communications of the ACM · 1983 · 3.8K citations · Full text
Communicating sequential processes
C. A. R. Hoare · Communications of the ACM · 1978 · 3.5K citations · Full text
K. Mani Chandy, Leslie Lamport · ACM Transactions on Computer Systems · 1985 · 2.4K citations · Full text
David Jefferson · ACM Transactions on Programming Languages and Systems · 1985 · 2.4K citations · Full text