Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: "Cai Qian" <caiqian@gmail.com>
To: "Michael Snyder" <Michael.Snyder@palmsource.com>
Cc: gdb@sourceware.org
Subject: Re: Virtual Machine and GDB
Date: Mon, 21 Aug 2006 18:50:00 -0000	[thread overview]
Message-ID: <a96350810608211149y12e89af0p61f73eb6a67604d8@mail.gmail.com> (raw)
In-Reply-To: <1156184892.8438.18.camel@localhost.localdomain>

Hi,

On 8/21/06, Michael Snyder <Michael.Snyder@palmsource.com> wrote:
> On Mon, 2006-08-21 at 18:59 +0100, Cai Qian wrote:
> > Hi,
> >
> > On 8/21/06, Neo <cjia@cse.unl.edu> wrote:
> > > Cai,
> > >
> > > I am wondering why you need to debug the VM remotely. Maybe you have
> > > your own requirements, such as for embedded systems. But I think you
> > > need to first make sure you can debug any binary running on your target
> > > board remotely. Then, you can treat the VM as the rest ordinary binary.
> > >
> >
> > I don't want to debug VM itself here, but executable running on the
> > VM. As my VM has a new instruction set, and GDB is quite unlikely to
> > run locally.
>
> OK, so you have two issues:
> 1) You need to get gdbserver running in your VM, and provide
> some means for gdbserver to talk to a gdb that is running in the
> outside world.  Unles you have access to a serial port, the
> obvious way to do this is to get a IP stack running in the VM,
> assign it an IP address, and let gdbserver open up a socket.
> Then gdb (running somewhere outside of the VM) can attach to
> the socket.
>

I have implemented a debug server in VM. At the moment, it can read
the RSP messages from remote GDB through socket. So, I think I have
done this part.

> 2) You need to teach gdb to understand the architecture of
> your virtual machine -- the word size, the instruction language,
> the register set, and so forth.  That doesn't mean porting gdb
> to RUN on the VM -- it just means teaching gdb how to DEBUG
> the VM (meaning, debug something that is running in the VM).
>

How can I achieve this part? At the moment, after received a packet
from remote GDB, I am trying to parse the packet first, and then send
the right response to GDB. For example,  if VM received a "info
registers" command at the debug socket, it will try to collect
register information, and then generate a right RSP message back.  Or,
if it received "next", I can set a flag in VM to indicate to only
execute one instruction. Is that a right way to do?

Qian

>
>
>
>
>


  parent reply	other threads:[~2006-08-21 18:50 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-20 21:10 Cai Qian
2006-08-21  0:07 ` Daniel Jacobowitz
2006-08-21  0:24   ` Cai Qian
2006-08-21  1:54     ` Daniel Jacobowitz
     [not found]     ` <daef60380608201849o49825a32s135b8131807ee71f@mail.gmail.com>
2006-08-21 10:25       ` Cai Qian
2006-08-21 11:38         ` teawater
2006-08-21 12:22           ` Cai Qian
2006-08-21 12:48             ` Daniel Jacobowitz
2006-08-21 13:35             ` teawater
2006-08-21 17:04             ` Neo
2006-08-21 17:59               ` Cai Qian
2006-08-21 18:28                 ` Michael Snyder
2006-08-21 18:32                   ` Daniel Jacobowitz
2006-08-21 18:50                   ` Cai Qian [this message]
2006-08-21 19:13                     ` Michael Snyder
2006-08-21 18:30                 ` Neo
2006-08-21 18:57                   ` Cai Qian
2006-08-21 19:16                     ` Michael Snyder
2006-08-22  1:21                     ` teawater
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani
2006-08-22  6:26 Anupama Chandwani

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a96350810608211149y12e89af0p61f73eb6a67604d8@mail.gmail.com \
    --to=caiqian@gmail.com \
    --cc=Michael.Snyder@palmsource.com \
    --cc=gdb@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox