This is the mail archive of the
mailing list for the GDB project.
Re: [Discussion/Prec] The record speed up plan (Make speed like without prec)
- From: Eli Zaretskii <eliz at gnu dot org>
- To: Hui Zhu <teawater at gmail dot com>
- Cc: gdb at sourceware dot org, msnyder at vmware dot com
- Date: Fri, 30 Apr 2010 20:52:04 +0300
- Subject: Re: [Discussion/Prec] The record speed up plan (Make speed like without prec)
- References: <firstname.lastname@example.org>
- Reply-to: Eli Zaretskii <eliz at gnu dot org>
> From: Hui Zhu <email@example.com>
> Date: Fri, 30 Apr 2010 21:23:20 +0800
> Cc: Michael Snyder <firstname.lastname@example.org>
> But lucky for us that insns exec rules we know. So most of insns
> (There a some special, I will talk it later), if we have the a
> inferior value(memory and reg), we can get the each value of next
I don't see how you can do that, unless you first read the entire
memory of the inferior. Otherwise, when an instruction references
some address, how do you know what value is stored at that address?
Also, what do you do with features such as shared memory, where the
value at a given address can change beyond control of the current
inferior, and change the result of some instruction which references
> So if we can record the all the value of a inferior A(or all the value
> that will be change, but to get it will need parse the insns that will
> be exec, this is not easy.) , we can let the inferior exec without
> step. If the user want reverse exec, get the each step value from A.
> Then the record speed will very faster than before.
But this preprocessing phase, won't it be prohibitively slow?
> 1. How to record all the status of a inferiorï For the linux,
> checkpoint already use fork to record the inferior. So prec will use
> it too.
> And when we want get the old status of inferior step by step, we can
> let the forked process step by step.
If you need single-step the forked inferior, you will still need to
wait for the slow single-step execution, and the advantage of letting
the inferior run freely is lost, right?