This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
RE: regarding transparent data ranges (in tracepoint support)
- From: "Newman, Mark (N-Superior Technical Resource Inc)" <mark dot newman at lmco dot com>
- To: Daniel Jacobowitz <drow at mvista dot com>, ankit thukral <ankit_plug at yahoo dot com>
- Cc: Jim Blandy <jimb at redhat dot com>, gdb at sources dot redhat dot com
- Date: Wed, 19 Nov 2003 14:34:49 -0500
- Subject: RE: regarding transparent data ranges (in tracepoint support)
Guys - again please excuse my ignorance but
I was assuming that transparent memory would either be
In ROM
In a write protected page
In an unprotected page (for those systems without memory protection)
Possibly swapped out to the disk (for those system with a disk)
However definitely readable by "read_inferior_memory".
Why would the data not be loaded into some form of memory?
What kind of data are we talking about?
Mark Newman
> -----Original Message-----
> From: gdb-owner@sources.redhat.com
> [mailto:gdb-owner@sources.redhat.com]On Behalf Of Daniel Jacobowitz
> Sent: Wednesday, November 19, 2003 1:56 PM
> To: ankit thukral
> Cc: Jim Blandy; gdb@sources.redhat.com
> Subject: Re: regarding transparent data ranges (in tracepoint support)
>
>
> On Wed, Nov 19, 2003 at 08:25:37AM -0800, ankit thukral wrote:
> >
> > --- Jim Blandy <jimb@redhat.com> wrote:
> > >
> > > ankit thukral <ankit_plug@yahoo.com> writes:
> > >
> > > > hi all,
> > > > i read about the transparent data ranges and
> > > > learned that data in these ranges are not supposed
> > > to
> > > > be collected by the remote stub since they belong
> > > to
> > > > read-only segment of the debuggee.my problem is :
> > > a
> > > > TSTART would start the debuggee and it may so
> > > happen
> > > > that the debuggee finishes executing.at this
> > > point,if
> > > > the GDB requests for some data in the transparent
> > > data
> > > > range,then how can the remote stub provide it with
> > > one
> > > > since the debuggee has exited ?
> > >
> > > If the target is a gdbserver, then it would need to
> > > read the bytes
> > > from the executable file. This is easy to do with
> > > BFD, but if I
> > > remember right, gdbserver doesn't use BFD at the
> > > moment; not sure how
> > > to get around that.
> > >
> > > If the target is an embedded system, then presumably
> > > the transparent
> > > data ranges correspond to ROM regions, so the data
> > > is still there.
> >
> >
> >
> > how about setting a (internal) breakpoint in the
> > debuggee which would prevent it from exiting even
> > though it has finished executing main(),and then
> > entertain GDB requests for the transparent (or
> > read-only) memory regions by reading from the memory
> > of the debuggee???
>
> That would work (but be wasteful). At least on Linux, you could read
> /proc/pid/maps to find what ranges correspond to where in what file,
> and save that information.
>
> --
> Daniel Jacobowitz
> MontaVista Software Debian GNU/Linux Developer
>