qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] How to follow a child process created in the guest OS?


From: Andreas Färber
Subject: Re: [Qemu-devel] How to follow a child process created in the guest OS?
Date: Sat, 11 Feb 2012 01:42:28 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:9.0) Gecko/20111220 Thunderbird/9.0

Am 10.02.2012 11:26, schrieb 陳韋任:
> On Fri, Feb 10, 2012 at 08:14:41AM +0000, Stefan Hajnoczi wrote:
>> On Thu, Feb 09, 2012 at 06:33:16PM +0800, 陳韋任 wrote:
>>> I am running a tiny OS on QEMU and debugging it with gdbstub. The tiny OS 
>>> will
>>> fork process 1, 2, ... and so on. I want to follow the child process, [...]
>>>
>>>   Is there a way to do what I'm trying to do? Thanks!

> ----------------- Tiny OS code -----------------------------
> void main(void)   /* This really IS void, no error here. */
> {
>   /* initialize enviroment */
> 
>   sti();
>   move_to_user_mode();
>   if (!fork()) {    /* we count on this going ok */
>     init();         // task 1
>   }
> 
>   for(;;) pause();  // task 0
> } 
> ------------------------------------------------------------
> 
>   I am running this tiny OS on QEMU then using GDB to connect it.
> I want to follow task 1 after the forking, [...]

Since this seems to be your code, if this were PowerPC I'd simply try to
place via inline assembler a trap instruction first thing inside the
init() function. That can easily be caught in gdbstub.

Depending on what you really want to do, you could always try some
printf-style output to serial. ;)

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]