[Lguest] Guest Addresses.

ron minnich rminnich at gmail.com
Fri May 23 00:31:19 EST 2008


On Wed, May 21, 2008 at 10:45 PM, Rusty Russell <rusty at rustcorp.com.au> wrote:

> Not really.  You'd need to know the root of the page table for that particular
> process, and then you'd only see the pages which are present: the guest
> kernel is quite entitled to swap pages out.
>

yes, I did not read the question carefully enough, as I am going after
kernel variables myself ...

What you might want is a "ptrace server". There are several options.
Here's something I did many years ago that presents ptrace as a sunrpc
service: mbgokhale.org/rminnich/job/rpcptrace/manual.html

Here's a quick summary (I guess this was called SPD back then):
"SPD defines an RPC protocol for starting and controlling processes. It
     provides a server, client library, and two client programs (one TCL and
     one TK) that use the library. A single SPD process can manage many remote
     processes. It can stop and start them, single step them through system
     calls, monitor and change variable values, and send signals via kill. TCP
     is used to support the RPC, so communications are reliable."

sadly, that machine seems to be down (figures, I'm 1000 miles away
from it) but I will bring it up when I'm home.

Rpcptrace is a much lighter weight solution than running remote gdb,
but, that said, the gdb stub might work for you as well. The gdb stuff
would doubtless be better for interactive program control; I don't
know how good it is for programmatic control, as I have never tried
that.

I just recovered the code from my plan 9 home machine so if you want
it, let me know, and I can send you (or anyone else on this list who
is interested) a copy. This is old! I wrote it in 1989/1990 or
something, so flamage on the code is not permitted :-)

I am glad you asked this question as I just realized I need this same
capability I guess I'm going to revive rpcptrace for my own use -- I
had forgotten all about it.

Let me know if you use rpcptrace or gdbstub or something else :-) I am
sure there is something out there that does this as well. maybe.

thanks

ron



More information about the Lguest mailing list