|
ABSTRACT
Reverse execution provides access to old states of an executing process. An application of reverse execution can be found in program debugging. When an error is detected, its cause is often hidden in the history of the process. In such situations, it is important to be able to recover and examine past states of the process. Numerous other applications of reverse execution are found in programming environments, in fault-tolerant computing and in speculative computation.Since processes are in general irreversible, the history must be saved in order to provide reverse execution. The main problem in dealing with the history is the amount of data generated. This paper describes a new approach to reverse execution based on a history cache which compacts the history. The performance of the history cache is measured on a simulator. The history cache can compact the history by more than an order of magnitude. Efficient support for reverse execution enables many new techniques such as a generic undo operation, a real-time checkpoint, and fast backtracking.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
[2] R. M. Balzer. EXDAMS - EXtendable Debugging and Monitoring System. In AFIPS Conference Proceeedings, Vol. 34, pages 567-580. SJCC, 1969.
|
 |
3
|
|
 |
4
|
|
| |
5
|
[5] K. M. Chandy and C. V. Ramamoorthy. Rollback and recovery strategies for computer programs. IEEE Transactions on Computers, 21(6):546-556, June 1972.
|
 |
6
|
|
| |
7
|
[7] A. M. Feridun and K. G. Shin. A fault-tolerant multiprocessor system with rollback recovery capabilities. In Proc. 2nd Int. Conf. Distributed Comput. Sys., pages 283-298. IEEE, 1981.
|
 |
8
|
|
| |
9
|
|
 |
10
|
|
| |
11
|
|
| |
12
|
|
 |
13
|
|
| |
14
|
[14] P. A. Lee, N. Ghani, and K. Heron. A recovery cache for the PDP-11. IEEE Transactions on Computers, 29(6):546-549, June 1980.
|
| |
15
|
[15] Y.-H. Lee and K. G. Shin. Design and evaluation of a fault-tolerant multiprocessor using hardware recovery blocks. IEEE Transactions on Computers , 33(2):113-124, February 1984.
|
 |
16
|
|
 |
17
|
K. Li , J. F. Naughton , J. S. Plank, Real-time, concurrent checkpoint for parallel programs, Proceedings of the second ACM SIGPLAN symposium on Principles & practice of parallel programming, p.79-88, March 14-16, 1990, Seattle, Washington, United States
|
| |
18
|
|
 |
19
|
|
| |
20
|
|
 |
21
|
|
 |
22
|
|
| |
23
|
|
| |
24
|
|
| |
25
|
|
| |
26
|
[26] L. Sterling and E. Shapiro. The Art of Prolog. MIT Press, Cambridge, MA, 1986.
|
 |
27
|
|
 |
28
|
|
 |
29
|
|
 |
30
|
|
CITED BY 5
|
|
|
|
|
|
|
|
Christopher D. Carothers , Kaylan S. Perumalla , Richard M. Fujimoto, Efficient optimistic parallel simulations using reverse computation, Proceedings of the thirteenth workshop on Parallel and distributed simulation, p.126-135, May 01-04, 1999, Atlanta, Georgia, United States
|
|
|
|
|
|
|
|