Recovery Preparation
摘要
In the previous chapters, we showed how hardware integrity of a computing system can be efficiently ensured using hardware checkingChecking schemes and system softwareSystem software testingTesting procedures and their sequences. However, to recover from faults, it is necessary to eliminate the effects the error had on the computation, i.e. the software code and data space. In GAFT, this corresponds to preparation for recoveryPreparation for Recovery. We now want to show how software has to be organized to be able own recovery or in other words, we want to revise different strategies how software can, after the detection of an error, ensure that the error did not affect the software state, or if this cannot be ensured, what precautions software has to conduct to be able to reestablish a correct software state. First, we revise the state of the art and then introduce a new technology and show its power and limitations. In a next step, we will show how hardware can assist software in the process of recovery preparation. For all generic approaches to recovery preparation, so-called stable storage, a non-volatile reliable and fast storage is needed. If no direct hardware support is available, stable storage must be implemented in software. We will present a possible software implementation of such a stable storage.