Mail Archives: djgpp/2001/06/01/03:00:08
"Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il> writes:
> > From: "Mark Stephen Krueger" <mkrueger AT nvidia DOT com>
> > Date: Thu, 31 May 2001 17:52:12 -0500
> >
> > What is the easiest way in either gdb or fsdb to be able to view the page
> > tables?
>
> AFAIK, you can't: accessing page tables needs to run at ring 0,
> because the instructions to do that are privileged.
>
> > Also, can gdb display info about the LDT and GDT?
>
> What info about these tables do you want to display?
>
> > Can either of these debuggers dump memory using a specific selector?
>
> Please define ``dump memory''. GDB generally displays memory
> addresses as variables; if you mean ``dump memory'' the DEBUG.COM
> style, then it cannot do that, even for memory that is part of the
> normal DS selector addressable range.
What about the `x' command? That certainly can dump memory in a
format rather like debug's.
> FSDB does have a memory pane,
> though.
> As for other selectors, I don't think you can do that currently. If
> you have specific needs, there might be a way to do something, so
> please consider telling what memory do you need to dump and why.
I suspect you can sort of cheat to dump memory in other selectors. I
haven't tried this, but here's an idea:
set $p = start_address
while ($p < end_address)
print/x _farpeekb(selector, $p++)
end
You might have to have _farpeekb compiled into your program for this
to work; you could insert
#include <sys/farptr.h>
void *dummy = &_farpeekb;
somewhere in your program to achieve this.
--
Nate Eldredge
neldredge AT hmc DOT edu
- Raw text -