Abstract

We are investigating transparent optimistic solutions to problems dist r ibuted systems such as recovery [6], replication [3], parallelization [2], and concurrent competing alternatives [4]. By a transparent solution to such a problem we mean that a program is transformed automatically, and that the behavior of the program is equivalent to a possible behavior of the untransformed program; addition, the programmer and the end-user need not be aware of the transformation. Transparent solutions to such problems are relatively straightforward if synchronization is relied upon, but performance of such methods is generally poor or the implementat ion is too expensive, and they do not scale. Our approach is to use optimistic methods which we guess that synchronization is unnecessary, and verify this asynchronously while the program continues execution. We track inter-process dependencies and log non-deterministic events so that we can roll back a computat ion that depends upon an incorrect guess. Where virtual memory virtualizes the space of a process, we virtualize time, paging in a previous process state when a time fault (or incorrect guess) occurs.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call