Dynamic Reverse Code Generation for Backward Execution
TL;DR: This paper presents a method to generate reverse code, so that backtracking can be performed by executingreverse code, while running a debugger, which makes it possible to apply the method even to debugging multi-threaded programs.
read more
About: This article is published in Electronic Notes in Theoretical Computer Science. The article was published on 01 May 2007. and is currently open access. The article focuses on the topics: Dead code & Source code.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Quantitative Analysis of Concurrent Reversible Computations
Andrea Marin,Sabina Rossi +1 more
- 02 Sep 2015
TL;DR: It is proved that the equilibrium distribution of the composition of reversible automata can be derived as the product of the equilibrium distributions of each automaton in isolation.
Program Validation by Symbolic and Reverse Execution
Jooyong Lee
- 01 Jan 2007
TL;DR: This dissertation presents applications of symbolic execution and reverse execution that can help program validation and points out that the most memory-efficient way to perform reverse execution, the reverse-code generation method based on static analysis, may not be applicable to non-deterministic programs such as multi-threaded programs.
8
Binary Analysis based on Symbolic Execution and Reversible x86 Instructions
TL;DR: This paper presents a binary analysis framework based on symbolic execution with the distinguishing capability to execute stepwise forward and also backward through the execution tree, and gives an example of analysis on binary code.
5
A Case for Dynamic Reverse-code Generation to Debug Non-deterministic Programs
TL;DR: In the case of non-deterministic programs such as this bounded-buffer program, the dynamic reverse-code generation outperforms the existing backtracking methods in terms of memory efficiency.
3
•Dissertation
Définition et utilisation de traces issues de plateformes virtuelles pour le débogage des MPSoCs
Marcos Cunha Pinto
- 29 Jan 2016
TL;DR: De nombreux systemes multi-cœurs sur puce ont tendance a avoir des hierarchies memoire specifiques, pour rendre le materiel plus simple and previsible, au prix of voir percoler les contraintes materielles vers les niveaux eleves de the pile logicielle.
References
The model checker SPIN
Gerard J. Holzmann
- 01 May 1997
TL;DR: An overview of the design and structure of the verifier, its theoretical foundation, and an overview of significant practical applications are given.
Efficient algorithms for bidirectional debugging
Bob Boothe
- 01 May 2000
TL;DR: This paper discusses the research into algorithms for creating anefficient bidirectional debugger in which all traditional forward movement commands can be performed with equal ease in the reverse direction and expects that adding these backwards movement capabilities to a debugger will greatly increase its efficacy as a programming tool.
113
A Program Inverter for a Functional Language with Equality and Constructors
Robert Glück,Masahiko Kawabe +1 more
- 27 Nov 2003
TL;DR: A method for automatic program inversion in a first-order functional programming language is presented and a new self-inverse primitive function is designed that considerably simplifies the automatic inversion of programs.
55
Reverse Execution of Java Bytecode
TL;DR: The modification of the Kaffe implementation of the Java Virtual Machine is discussed, supporting a debugger capable of running Java bytecode backwards, and a model, including operational semantics, for the reverse execution of stack-based code is demonstrated.
Reverse execution of programs
Bitan Biswas,Rajib Mall +1 more
TL;DR: This work describes the implementation of a debugger which can execute C programs in either forward or backward direction depending upon an option set by the user and introduces the concept of inverse of a statement.
40