Reversible debuggers enable you to rewind a program and inspect its state at any point in the past. The program may jump back and forth by a single instruction or more and the [reversible] debugger records everything that the program does - every memory access, every computation, every call to the operating system.
The rather large amount of data that is so collected is presented via the metaphor of time travel; the ability to inspect the program state backwards and forwards in time.
Examples of such tools are: RetroVue [for Java], TimeMachine [for embedded systems], UndoDB [for Linux], and Nirvana from Microsoft Research.
Check them out!
No comments:
Post a Comment