| OCR Text |
Show required to store the history stream. It takes the director dnk2 instructions to apply the history stream. The total time is thus nk -f dnk2 or nk( 1 + dk). A typical value for k is around 10. A typical value of d is 0.1. Using these typical values for the state of 1 Mwords, the history stream will occupy 2 Mwords and the checkpoint will take 20 M instructions. A history cache which is described later can be applied to reduce the amount of data in the history stream for almost two orders of magnitude. Assuming a reduction of 10, the value of d drops to 0.01. This reduces the size of the history stream from 2 Mwords to 0.2 Mwords and speeds up the checkpoint from 20 M instructions to 11 M instructions. The real time checkpoint requires only 20% more space and 10% more cycles than a straightforward checkpoint that halts the executor for the entire period of checkpoint. The low overhead makes this approach attractive for real-time systems. This algorithm can be easily implemented using standard dual-ported dynamic RAM chips. 3.3.2 Consistency of Data Structures Besides applications in fault tolerant computing, a real time checkpoint algorithm can find many new areas of use. One such area is the creation of unobtrusive agents. Agents are processes that monitor other processes for the purpose of gathering run time statistics or for the purpose of detecting certain conditions. If agents using an real time checkpoint algorithm are executed on a separate processor, then their interference with the monitored process is minimal. An important class of agents checks for the consistency of data structures. These agents periodically verify that data structures of the executor satisfy specified criteria. An example can be found in geometric modeling. Since the computer arithmetic is finite, the manipulation of geometric models can easily produce degenerate cases. These cases violate rules of the underlying geometry. A degenerate case which violates the transitive property of equality might be three lines, where the first line 52 |