This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: GDB record target 0.0.1 for GDB-6.6 release (It make GDB support Reversible Debugging)
- From: Daniel Jacobowitz <drow at false dot org>
- To: teawater <teawater at gmail dot com>
- Cc: gdb at sources dot redhat dot com
- Date: Fri, 10 Aug 2007 14:18:17 -0400
- Subject: Re: GDB record target 0.0.1 for GDB-6.6 release (It make GDB support Reversible Debugging)
- References: <daef60380708100231n2a926967q2f55b9a2194b982d@mail.gmail.com>
On Fri, Aug 10, 2007 at 05:31:51PM +0800, teawater wrote:
> Hi All,
>
> The attachment is a patch for the GDB-6.6 that will add two commands
> ("record" and "reverse") and a new target "record" to the GDB-6.6.
>
> The command "record" can record running message such as the program pc
> register value and some frame message to a record file that default
> name is "now.rec".
>
> The target "record" can open this record file and debug the program.
> And if the current target is the "record", you can use command
> "reverse" set debug to the reverse debug mode. If you set GDB to the
> reverse debug mode. The program will reverse run. Most of GDB command
> such as "step", "next" and "breakpoint" can be use in this mode.
>
> Maybe the record function can make GDB debug real time program more
> easy than before because you can record all the running message when
> the real time program cannot be interrupt and debug it after it was
> running.
I took a look at your patch. The record command single steps the
program until it exits, right? That will not be very useful for real
time programs, because it will be extraordinarily slow the first time.
You might want to take a look at my paper in this year's GCC Summit
proceedings:
http://gcc.gnu.org/wiki/HomePage?action=AttachFile&do=get&target=GCC2007-Proceedings.pdf
We'll be publishing the code for "reverse-step" using qemu soon.
We're not trying to hold on to it, especially - just haven't found the
time yet to submit it. This is basically similar to what you've done,
except higher performance.
Actually, your work also reminds me of Amber:
http://weblogs.mozillazine.org/roc/archives/2006/12/more_about_ambe.html
--
Daniel Jacobowitz
CodeSourcery