Timestamps in Message-Passing Systems That Preserve the Partial Ordering

Timestamping is a common method of totally ordering events in concurrent programs. However, for applications requiring access to the global state, a total ordering is inappro­ priate. This paper presents algorithms for timestamping events in both synchronous and asynchronous n1essage-passing programs that allow for access to the partial ordering in­ herent in a parallel system. The algorithms do not change the con1munications graph or require a central timestamp issuing authority.

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

[2]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[3]  Inmos Corp,et al.  Occam Programming Manual , 1984 .

[4]  Abraham Silberschatz,et al.  Error Propagation and Recovery in Concurrent Environments , 1985, Computer/law journal.

[5]  Gigliola Vaglini,et al.  Development of a Debugger for a Concurrent Language , 1986, IEEE Trans. Software Eng..

[6]  Mukul K. Sinha,et al.  Commutable transactions and the time_pad synchronization mechanism for distributed systems , 1986, IEEE Transactions on Software Engineering.

[7]  F. Baiardi,et al.  Development of a debugger for a concurrent language , 1986, IEEE Transactions on Software Engineering.

[8]  Colin J. Fidge,et al.  Reproducible Tests in CSP , 1987, Aust. Comput. J..