Abstract
Concurrent Timestamp Systems (ctss) allow processes to temporally order concurrent events in an asynchronous shared memory system. Bounded memory constructions of a ctss are extremely powerful tools for concurrency control, and are the basis for solutions to many coordination problems including mutual exclusion, randomized consensus, and multiwriter atomic registers. Unfortunately, known bounded ctss constructions seem to be complex from the algorithmic point of view. Due to the importance of bounded ctss, the rather involved original construction by Dolev and Shavit was followed by a series of papers that tried to provide more easily verifiable ctss constructions.
In this paper, we present what we believe is the simplest, most modular, and most easily proven bounded ctss algorithm known to date. The algorithm is constructed and its correctness proven using several tools. Our algorithm combines the labeling method of the Dolev-Shavit ctss with the atomic snapshot algorithm proposed in Afek et al. in a way that limits the amount of interleavings that can occur. We prove the correctness of our algorithm by showing that it implements a simple, unbounded, real-number based ctss specification. Our proof methodology is based on forward simulation techniques of the I/O Automata model.
Preview
Unable to display preview. Download preview PDF.
References
Y. Afek, H. Attiya, D. Dolev, E. Gafni, M. Merritt, and N. Shavit. Atomic Snapshots of Shared Memory. In Proc. 9th ACM Symp. on Principles of Distributed Computing, 1990, pp. 1–14.
H. Attiya and M. P. Herlihy. Private Communication, 1991.
B. Chor, A. Israeli, and M. Li. On process coordination using asynchronous hardware. In Proceedings of the 6 th Annual ACM Symposium on Principles of Distributed Computing, August 1987.
D. Dolev and N. Shavit. Bounded concurrent time-stamps are constructible. SIAM Journal on Computing, to appear. Also in Proceedings of the 21st Annual ACM Symposium on Theory of Computing, Seattle, Washington, pages 454–465, 1989.
C. Dwork and O. Waarts. Simple and Efficient Bounded Concurrent timestamping — or — Bounded concurrent time-stamps are comprehensible. Unpublished Manuscript, Stanford University, 1991.
M. P. Herlihy. Wait-free synchronization. In ACM TOPLAS, 13(1), pages 124–149, January 1991.
A. Israeli and M. Li. Bounded time stamps. In 28th Annual Symposium on Foundations of Computer Science, White Plains, New York, pages 371–382, 1987.
A. Israeli and M. Pinchasov. A linear time bounded concurrent timestamp scheme. Technical Report, Technion, Haifa, Israel, March 1991.
L. Lamport A new solution of Dijkstra's concurrent programming problem. Communications of the ACM, 78(8):453–455, 1974.
L. Lamport The mutual exclusion problem. part I: a theory of interprocess communication. J. ACM, 33(2):313–326, 1986.
L. Lamport On interprocess communication. parts I and II. Distributed Computing, 1, 1 (1986) 77–101.
M. Li and P. Vitanyi. A Very Simple Construction for Atomic Multiwriter Registers. Report, Aiken Computation Laboratory, Harvard University, 1987.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gawlick, R., Lynch, N., Shavit, N. (1992). Concurrent Timestamping made simple. In: Dolev, D., Galil, Z., Rodeh, M. (eds) Theory of Computing and Systems. ISTCS 1992. Lecture Notes in Computer Science, vol 601. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0035176
Download citation
DOI: https://doi.org/10.1007/BFb0035176
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55553-7
Online ISBN: 978-3-540-47214-8
eBook Packages: Springer Book Archive