Issue No. 06 - June (1994 vol. 20)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.295897
<p>A self-stabilizing system is a network of processors, which, when started from an arbitrary (and possibly illegal) initial state, always returns to a legal state in a finite number of steps. This implies that the system can automatically deal with infrequent errors. One issue in designing self-stabilizing algorithms is the number of states required by each machine. This paper presents mutual exclusion algorithms which will be self-stabilizing while only requiring each machine in the network to have two states. The concept of a randomized central demon is also introduced in this paper. The first algorithm is a starting point where no randomization is needed (the randomized central demon is not necessary). The other two algorithms require randomization. The second algorithm builds on the first algorithm and reduces the number of network connections required. Finally, the number of necessary connections is again reduced yielding the final two-state, probabilistic algorithm for an asynchronous, unidirectional ring of processes.</p>
distributed algorithms; token networks; local area networks; probability; fault tolerant computing; reliability; two-state self-stabilizing algorithms; token rings; legal state; illegal state; infrequent errors; mutual exclusion algorithms; randomized central demon; network connections; probabilistic algorithm; asynchronous unidirectional ring; binary state machines; distributed algorithms; distributed system
M. Flatebo and A. Datta, "Two-State Self-Stabilizing Algorithms for Token Rings," in IEEE Transactions on Software Engineering, vol. 20, no. , pp. 500-504, 1994.