| OCR Text |
Show 100 3.4.5.3 Splicing a structure. The residue on state g is uninteresting 1f the return from Q to P is only a value because task Q disappears after the value is used by parent P. However, assume that a data structure has been established among processors P, a. and R after the evaluation of task P. When processor Q fails, the structure collapses. Pointers to the structure from parent P becomes dangling and the partial structure residing in R becomes inaccessible from Q. In order to splice the structure. parent P must regenerate task a and connect the recovery task a with grandchild task R. A convenient way to accomplish both objectives is to keep the evaluation state in e where R can report the inaccessible substructure to grandparent P. This means, if the result of evaluating P is to establish a structure, the state transition diagram stays at state e until there are no more references to the structure. If the result is a value, the evaluation runs through state g and completes the cycle. 3.4.6 Discussion 3.4.6.1 Robust storage structure. Using a resilient structure for faulttolerant computing is not a new idea. Taylor and others [68, 63, 64] proposed a robust storage structure to ensure data integrity in uniprocessor or shared memory machines. Item count, identifier field, and/or additional pointers are commonly added to tree or list structures for error detection and recovery purpose. One purpose of this dissertation is to apply the resilient structure concept onto. a distributed applicative evaluation graph. · Conceptually, an evaluation structure is quite different from a storage structure. A storage structure is an object manipulated by programs, while an evaluation structure is a program itself. Furtnermore, most techniques developed for resilient storage structure seem to be impractical in applicative systems. For example. item count of a linear list is a convenient way for checking broken links 1n a shared memory machine. To maintain a correct item count and verify it regularly in a distributed network would require significant |