Abstract :
Reverse debugging is the ability of a debugger to stop after a failure in a program has been observed and go back into the history of the execution to uncover the reason for the failure. Long the dream of programmers, over the past decade, reverse execution has become a practical technique available in a number of free and commercial tools. This article will review the history and techniques of reverse debugging, as researched, implemented, and used from the 1970s until today. We will provide some personal insights into reverse debugging, from our own practical use of one such tool, Wind River Simics.
Conference_Titel :
System, Software, SoC and Silicon Debug Conference (S4D), 2012