Superstabilizing mutual exclusion

Summary. A superstabilizing protocol is a protocol that i is self-stabilizing, meaning that it can recover from an arbitrarily severe transient fault; and ii can recover from a local transient fault while satisfying a passage predicate during recovery. This paper investigates the possibility of superstabilizing protocols for mutual exclusion in a ring of processors, where a local fault consists of any transient fault at a single processor; the passage predicate specifies that there be at most one token in the ring, with the single exception of a spurious token colocated with the transient fault. The first result of the paper is an impossibility theorem for a class of superstabilizing mutual exclusion protocols. Two unidirectional protocols are then presented to show that conditions for impossibility can independently be relaxed so that superstabilization is possible using either additional time or communication registers. A bidirectional protocol subsequently demonstrates that superstabilization in O(1) time is possible. All three superstabilizing protocols are optimal with respect to the number of communication registers used.

[1]  Jorge Arturo Cobb,et al.  Propagated timestamps: a scheme for the stabilization of maximum-flow routing protocols , 1997, WSS.

[2]  Shlomi Dolev,et al.  SuperStabilizing protocols for dynamic distributed systems , 1995, PODC '95.

[3]  Richard W. Buskens,et al.  Self-stabilizing mutual exclusion in the presence of faulty nodes , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[4]  Arobinda Gupta,et al.  Fault-containing self-stabilizing algorithms , 1996, PODC '96.

[5]  Anish Arora,et al.  Designing masking fault-tolerance via nonmasking fault-tolerance , 1995, Proceedings. 14th Symposium on Reliable Distributed Systems.

[6]  Victor P. Nelson Fault-tolerant computing: fundamental concepts , 1990, Computer.

[7]  I-Ling Yen A Highly Safe Self-Stabilizing Mutual Exclusion Algorithm , 1996, Inf. Process. Lett..

[8]  Anoop Gupta,et al.  Hive: fault containment for shared-memory multiprocessors , 1995, SOSP.

[9]  George Varghese Self-stabilization by counter flushing , 1994, PODC '94.

[10]  Kenneth J. Perry,et al.  Unifying self-stabilization and fault-tolerance , 1993, PODC '93.

[11]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[12]  Boaz Patt-Shamir,et al.  Time-adaptive self stabilization , 1997, PODC '97.

[13]  Anish Arora,et al.  Closure and Convergence: A Foundation of Fault-Tolerant Computing , 1993, IEEE Trans. Software Eng..

[14]  Amos Israeli,et al.  Self-stabilization of dynamic systems assuming only read/write atomicity , 1990, PODC '90.

[15]  Krishnamurthy Vidyasankar,et al.  Constructing 1-writer multireader multivalued atomic variables from regular variables , 1995, JACM.

[16]  Yoshiaki Katayama,et al.  A latency-optimal superstabilizing mutual exclusion protocol , 1997, WSS.