Return to Reverse Execution
Julian Smith
support@undo-software.com
Tue May 16 20:24:00 GMT 2006
On Wed, 04 Jan 2006 13:00:31 -0800
Michael Snyder <msnyder@redhat.com> wrote:
> Over the past several months, there's been some great discussion
> of this topic, and even some trial patches sent out for comment.
>
> I'd like to start preparing a real submission for approval.
> I'm testing the waters now, to see how close we may be to
> converging on an acceptable interface spec.
>
> So here is my proposed gdb user interface.
We've been busy the past year or so making such a "reverse execution"
engine (we call it a bidirectional debugger). It's debugger neutral,
but our first supported front end is gdb. As such we've patched gdb-6.4
to provide support for our new commands. Communication between gdb and
the bidirectional debugger engine is via a pair of FIFOs.
You can check it out at http://undo-software.com/
> 1) A set of new commands that mimic the existing ones,
> to include:
> reverse-step (rs)
> reverse-next (rn)
> reverse-continue (rc)
> reverse-finish (rf)
We decided on using a `b' prefix to existing execution commands: bnext,
bnexti, bstep, bstepi, buntil and bfinish. There are also new commands:
`bgoton' goes back to an arbitrary temporal position, `bgoto' goes back
to an arbitrary place (e.g. `bgoto foo.c:23') and `bget' displays the
current temporal position.
If gdb develops a set of standard commands, we'd definitely use them.
The above ones seem to work well, but might not cover all types of
reverse execution engines.
- Julian
--
http://undo-software.com/
More information about the Gdb
mailing list