Has anyone actually used a reversable debugger? The only product that Google turns up is UndoDB. It is for apparently for Linux only.
相关问题
- How to compile C++ code in GDB?
- Pass custom debug information to Microsoft bot fra
- How do I identify what code is generating “ '&
- Invoke and control GDB from c++
- Don't want netbeans debugger to go to disassem
相关文章
- How to handle all signals in GDB
- How do I get to see DbgPrint output from my kernel
- Advanced profiling is unavailable for the selected
- Can't Inspect Variables When Debugging .NET As
- What is the difference between glibc's MALLOC_
- Embedding a program's source code into its bin
- How to execute another python script from your scr
- How do I debug errors that have no error message?
The latest gdb version 7.0 (released this week) supports reverse debugging on a number of platforms (eg. native i386 and x86_64 linux, VMware workstation, UndoDB, and Simics simulators from Virtutech). ftp://ftp.gnu.org/pub/gdb
It works with the latest preview / pre-release of VMware workstation 7.0, which also supports reverse debugging of MSWindows guests using Visual Studio debugger. Get a free trial download of workstation 7.0 at http://communities.vmware.com/community/beta/workstation, and find some helpful usage tips here at http://communities.vmware.com/docs/DOC-10714
The newly released gdb-7.0 includes reverse debugging capability for native linux x86 and x86_64. You can debug any linux program as usual, turn on the "recording" feature, and from that point on, if you step forward too far, you can step backward or reverse-continue to a breakpoint.
The word your looking for may be "Omniscient Debugging".
Here is one: http://www.lambdacs.com/debugger/
The UndoDB page has some links to (expensive) commercial debuggers.
I am using UndoDB on Linux instead of plain gdb for every debugging session. Reverse debugging is very useful and speeds up debugging significantly. You can start debugging from the symptom of the problem (e.g. assertion failure or some wrong message is printed) and debug backwards in time, looking for the root cause of the problem.
Yes, I've used it back in the 90th.. The Watcom C Debugger (understood FORTRAN and most other languages as well) had the option to let you step back and forward in time.
It's great, but not a big new thing...
Mozilla
rr
open source trace based reverse debugginghttps://github.com/mozilla/rr
It is similar to UndoDB, but free and open source.
Only works on Linux x86 unfortunately, because such tools require advanced OS features to work efficiently.
Here is a minimal example of rr in action: How to go to the previous line in GDB?