Self-stabilization of wait-free shared memory objects

  • Jaap -Henk Hoepman
  • Marina Papatriantafilou
  • Philippas Tsigas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 972)


It is an interesting question whether one can device highly fault tolerant distributed protocols that tolerate both processor failures as well as transient memory errors. To answer this question we consider self-stabilizing wait-free shared memory objects. In this paper we propose a general definition of a self-stabilizing wait-free shared memory object that expresses safety guarantees even in the face of processor failures. We prove that within this framework one cannot construct a self-stabilizing single-reader single-writer regular bit from single-reader single-writer safe bits. This impossibility result leads us to postulate a self-stabilizing dual-reader single-writer safe bit as the minimal object needed to achieve selfstabilizing wait-free interprocess communication and synchronization.

Based on this model, adaptations of well known wait-free constructions of regular and atomic shared registers are proven to be self-stabilizing.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AGMT92]
    Afek, Y., Greenberg, D., Merritt, M., and Taubenfeld, G. Computing with faulty shared memory. In 11th PODC (Vancouver, BC, Canada, 1992), ACM Press, pp. 47–58.Google Scholar
  2. [AKY90]
    Afek, Y., Kutten, S., and Yung, M. Memory-efficient self stabilizing protocols for general graphs. In 4th WDAG (Bari, Italy, 1990), LNCS 486, Springer Verlag, pp. 15–28.Google Scholar
  3. [AMT93]
    Afek, Y., Merritt, M., and Taubenfeld, G. Benign failure models for shared memory. In 7th WDAG (Lausanne, Switzerland, 1993), LNCS 725, Springer Verlag, pp. 69–83.Google Scholar
  4. [AH93]
    Anagnostou, E., and Hadzilacos, V. Tolerating transient and permanent failures. In 7th WDAG (Lausanne, Switzerland, 1993), LNCS 725, Springer Verlag, pp. 174–188.Google Scholar
  5. [AH90]
    Aspnes, J., and Herlihy, M. P. Wait-free data structures in the asynchronous PRAM model. In 2nd SPAA (Crete, Greece, 1990), ACM Press, pp. 340–349.Google Scholar
  6. [AKKV88]
    Awerbuch, B., Kirousis, L. M., Kranakis, E., and Vitányi, P. M. B. A proof technique for register atomicity. In 8th FST&TCS (Pune, India, 1988), LNCS 338, Springer Verlag, pp. 286–303.Google Scholar
  7. [AKM+93]
    Awerbuch, B., Kutten, S., Mansour, Y., Patt-Shamir, B., and Varghese, G. Time optimal self-stabilizing synchronization. In 25th STOC (San Diego, CA, USA, 1993), ACM Press, pp. 652–661.Google Scholar
  8. [BGW89]
    Brown, G. M., Gouda, M. G., and Wu, C. L. Token systems that self-stabilize. IEEE Trans. on Comput.38, 6 (1989), 845–852.CrossRefGoogle Scholar
  9. [BP89]
    Burns, J. E., and Pachl, J. Uniform self-stabilizing rings. ACM Trans. Prog. Lang. & Syst.11, 2 (1989), 330–344.Google Scholar
  10. [Dij74]
    Dijkstra, E. W. Self-stabilizing systems in spite of distributed control. Comm. ACM17, 11 (1974), 643–644.CrossRefGoogle Scholar
  11. [DIM93]
    Dolev, S., Israeli, A., and Moran, S. Self-stabilization of dynamic systems assuming only read/write atomicity. Distr. Comput.7, 1 (1993), 3–16.Google Scholar
  12. [DW93]
    Dolev, S., and Welch, J. L. Wait-free clock synchronization. In 12th PODC (Ithaca, NY, USA, 1993), ACM Press, pp. 97–108.Google Scholar
  13. [GP93]
    Gopal, A. S., and Perry, K. J. Unifying self-stabilization and fault-tolerance. In 12th PODC (Ithaca, NY, USA, 1993), pp. 195–206.Google Scholar
  14. [Her91]
    Herlihy, M. P. Wait-free synchronization. ACM Trans. Prog. Lang. & Syst.13, 1 (1991), 124–149.Google Scholar
  15. [Hoe94]
    Hoepman, J.-H. Uniform deterministic self-stabilizing ring-orientation on odd-length rings. In 8th WDAG (Terschelling, The Netherlands, 1994), LNCS 857, Springer Verlag, pp. 265–279.Google Scholar
  16. [IJ93]
    Israeli, A., and Jalfon, M. Uniform self-stabilizing ring orientation. Inf. & Comput.104, 2 (1993), 175–196.Google Scholar
  17. [IS92]
    Israeli, A., and Shaham, A. Optimal multi-writer multi-reader atomic register. In 11th PODC (Vancouver, BC, Canada, 1992), ACM Press, pp. 71–82.Google Scholar
  18. [JCT92]
    Jayanti, P., Chandra, T., and Toueg, S. Fault-tolerant wait-free shared objects. In 33rd FOCS (Pittsburgh, Penn., USA, 1992), IEEE Comp. Soc. Press, pp. 157–166.Google Scholar
  19. [KP90]
    Katz, S., and Perry, K. J. Self-stabilizing extensions for message-passing systems. In 9th PODC (Quebec City, Quebec, Canada, 1990), ACM, ACM Press, pp. 91–101.Google Scholar
  20. [Lam86]
    Lamport, L. On interprocess communication. Part I: Basic formalism, part II: Algorithms. Distr. Comput.1, 2 (1986), 77–101.CrossRefGoogle Scholar
  21. [LTV89]
    Li, M., Tromp, J., and Vitányi, P. M. B. How to share concurrent wait-free variables. Tech. Rep. CS-R8916, CWI, Amsterdam, 1989.Google Scholar
  22. [LV91]
    Li, M., and Vitányi, P. M. B. Optimality of wait-free atomic multiwriter variables. Tech. Rep. CS-R9128, CWI, Amsterdam, The Netherlands, 1991.Google Scholar
  23. [PT94]
    Papatriantafilou, M., and Tsigas, P. Wait-free self-stabilizing clock synchronization. In 4th SWAT (Arhus, Denmark, 1994), LNCS 824, Springer Verlag, pp. 267–277.Google Scholar
  24. [PB87]
    Peterson, G. L., and Burns, J. E. Concurrent reading while writing ii: The multi-writer case. In 28th FOCS (Los Angeles, CA, USA, 1987), IEEE Comp. Soc. Press, pp. 383–392.Google Scholar
  25. [Sch93]
    Schneider, M. Self-stabilization. ACM Comput. Surv.25, 1 (1993), 45–67.CrossRefGoogle Scholar
  26. [Tel94]
    Tel, G. Introduction to Distributed Algorithms. Cambridge University Press, 1994.Google Scholar
  27. [VA86]
    Vitányi, P. M. B., and Awerbuch, B. Atomic shared register access by asynchronous hardware. In 27th FOCS (Toronto, Ont., Canada, 1986), IEEE Comp. Soc. Press, pp. 233–243.Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Jaap -Henk Hoepman
    • 1
  • Marina Papatriantafilou
    • 2
    • 3
  • Philippas Tsigas
    • 3
  1. 1.CWISB AmsterdamThe Netherlands
  2. 2.CTI & CE and Informatics Dept.Patras UniversityGreece
  3. 3.MPI für InformatikSaarbrückenGermany

Personalised recommendations