Affiliation:
1. School of Computing and Information Technology, Griffith University, Nathan, Queensland 4111, Australia
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.
Publisher
Association for Computing Machinery (ACM)
Cited by
7 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Transparently Mixing Undo Logs and Software Reversibility for State Recovery in Optimistic PDES;ACM Transactions on Modeling and Computer Simulation;2017-07-06
2. Assembly instruction level reverse execution for debugging;ACM Transactions on Software Engineering and Methodology;2004-04
3. Efficient optimistic parallel simulations using reverse computation;ACM Transactions on Modeling and Computer Simulation;1999-07
4. Implementation and evaluation of a highly reliable server with QRM;Systems and Computers in Japan;1998-04
5. An algorithm for fully-reversible optimistic parallel simulation;Proceedings of the 2003 International Conference on Machine Learning and Cybernetics (IEEE Cat. No.03EX693)