Abstract
The paper deals with the problem of managing a fault-tolerant critical section in a completely asynchronous distributed network. The existence of a solution to this problem should be contrasted with a basic result of Fischer, Lynch, and Paterson, proving that in a completely asynchronous network, "nontrivial agreement" cannot be achieved even when only a single "benign" processor failure is possible. We present solutions to several versions of the critical section problem in this model. Denote by t the maximum number of possible faulty processors. Processors are allowed to fail while in the critical section, and therefore the critical section must have at least t + 1 slots. In the case where the slots are identical we present two algorithms which require t + 1 slots. The first is very simple, but requires every non-faulty processor to use the critical section infinitely often. The second solution allows non-faulty processors to quit. For distinct slots we present an algorithm that requires 2t + 1 slots.
Original language | English |
---|---|
Pages (from-to) | 1-20 |
Number of pages | 20 |
Journal | Information and Computation |
Volume | 95 |
Issue number | 1 |
DOIs | |
State | Published - Nov 1991 |
Externally published | Yes |
Bibliographical note
Funding Information:The paper deals with the problem of managing a fault-tolerant critical section in a completely asynchronous distributed network. The existence of a solution to this problem should be contrasted with a basic result of Fischer, Lynch, and Paterson, proving that in a completely asynchronous network, “nontrivial agreement” cannot be achieved even when only a single “benign” processor failure is possible. We present solutions to several versions of the critical section problem in this model. Denote by t the maximum number of possible faulty processors. Processors are allowed to fail while in the critical section, and therefore the critical section must have at least 1+ 1 slots. In the case where the slots are identical we present two algorithms which require t + 1 slots. The first is very simple, but requires every nonfaulty processor to use the critical section infinitely often. The second solution allows non-faulty processors to quit. For distinct slots we present an algorithm that requires 2t + 1 slots. 0 1991 Academic Press, Inc * This work was carried out while this author was visiting Stanford University. Supported in part by a Weizmann fellowship, by Contract ONR N00014-88-K-0166, and by a grant of Stanford Center for Integrated Systems. i This work was carried out while this author was a student in the Computer Science Department, Hebrew University, Jerusalem. : Part of this work was carried out while this author was visiting Stanford University. Supported in part by a Weizmann fellowship, by Contract ONR N00014-88-K-0166, and by a grant of Stanford Center for Intregrated Systems.
Funding
The paper deals with the problem of managing a fault-tolerant critical section in a completely asynchronous distributed network. The existence of a solution to this problem should be contrasted with a basic result of Fischer, Lynch, and Paterson, proving that in a completely asynchronous network, “nontrivial agreement” cannot be achieved even when only a single “benign” processor failure is possible. We present solutions to several versions of the critical section problem in this model. Denote by t the maximum number of possible faulty processors. Processors are allowed to fail while in the critical section, and therefore the critical section must have at least 1+ 1 slots. In the case where the slots are identical we present two algorithms which require t + 1 slots. The first is very simple, but requires every nonfaulty processor to use the critical section infinitely often. The second solution allows non-faulty processors to quit. For distinct slots we present an algorithm that requires 2t + 1 slots. 0 1991 Academic Press, Inc * This work was carried out while this author was visiting Stanford University. Supported in part by a Weizmann fellowship, by Contract ONR N00014-88-K-0166, and by a grant of Stanford Center for Integrated Systems. i This work was carried out while this author was a student in the Computer Science Department, Hebrew University, Jerusalem. : Part of this work was carried out while this author was visiting Stanford University. Supported in part by a Weizmann fellowship, by Contract ONR N00014-88-K-0166, and by a grant of Stanford Center for Intregrated Systems.
Funders | Funder number |
---|---|
Stanford Center for Integrated Systems | |
Stanford Center for Intregrated Systems | |
Office of Naval Research | N00014-88-K-0166 |