This paper is an algorithmic introduction to anonymity in asynchronous systems where processes communicate by reading and writing atomic read/write registers. Two types of anonymity are investigated: process-anonymity and memory-anonymity. Process-anonymity is when the processes cannot be distinguished the ones from the others (among other features, they do not have identifiers). Memory-anonymity is when the same memory locations can have different names at different processes (e.g., the location name A used by process p i and the location name B used by another process p j can correspond to the very same memory location X, and similarly for the names B at p i and A at p j which correspond to the same memory location Y ≠ X). The paper shows how algorithms can cope with the uncertainty created by these two types of anonymity. To this end, taking examples from the literature, it presents anonymity-tolerant implementations of several concurrent objects, such as snapshot, consensus, and lock, each implementation satisfying a well-defined progress condition (obstruction-freedom, non-blocking, or wait-freedom). This paper must be considered as a short example-driven introductory tutorial on anonymous asynchronous read/write systems.
CITATION STYLE
Raynal, M., & Cao, J. (2019). Anonymity in distributed read/write systems: An introductory survey. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 11028 LNCS, pp. 122–140). Springer Verlag. https://doi.org/10.1007/978-3-030-05529-5_9
Mendeley helps you to discover research relevant for your work.