| OCR Text |
Show 99 to a from its grandchildren are omitted for clarity. Assume that task a fails during the evaluation of P. residue effects may affect any one of the related tasks at any stage of the state transition. A residue-free fault tolerant measure must assure that tasks P and R are not affected by the failure of a from state a through state g. The failure of a obviously has no effect in state a. In state b, failure of the processor which absorbs a means that parent task P will not receive a positive acknowledge from task a. As a result, processor P times out and reissues a new task Q. The system acts as if the first invocation of a did not take place. In state c, task P receives an acknowledge from a and establishes a parent-to-child pointer to a. The new pointer may provide additional fault detection capability, but the impact of the failure remains similar to that of state b. Residual effects. resulting from the failure of Q, may happen at state d and successive states. Parent task P is left in the same situation as if it were in state b or c. However. there is a child task R lingering around the system. Task R may be stranded due to incomplete information from parent Q. In this case, R commits suicide and the recovery from P is free from residual effects. Or, task R may complete the evaluation and try to return the result. In the simple rollback scheme. R sends the result to a dead parent Q and eventually gives up. The residue lasts for a while and subsides harmlessly. In the spl icing scheme, R sends the result to P after failing to communicate with parent a. Case analysis in section 3.4. 1.4 has shown that there is no correctness problem. State e has exactly the same recovery condition as state d, since the transient state d becomes state · e as so~n as task R finds an idle processor. The discussions on state d can be applied here and will not be repeated. State f is similar to state c as tar as recovery is concerned. |