[Top][All Lists]

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

[Qemu-devel] Re: [PATCH] fix qruncom compilation problems

From: Stefano Bonifazi
Subject: [Qemu-devel] Re: [PATCH] fix qruncom compilation problems
Date: Thu, 09 Dec 2010 18:29:09 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20101027 Thunderbird/3.1.6

On 12/09/2010 08:16 AM, Paolo Bonzini wrote:
On 12/08/2010 10:43 PM, Stefano Bonifazi wrote:

Anyway running it with a com file as argument gave the error:
mmap: Operation not permitted

You have to run it as root I think.

Thank you! Running as root worked, though it raises then the following error (from gdb) I am currently trying to understand:
/home/stefano/LinuxDev/qemu-0.12.5/tcg/tcg.c:1367: tcg fatal error

Program received signal SIGABRT, Aborted.
0x0012e416 in __kernel_vsyscall ()
Surely any hint on how to to fix this will be very welcome :)

I wish I could understand also what was wrong before, I mean mmap.. I understand you can't babysit me, but the gap between what one studies at university and the real world is very big and I feel lost :(
I've read pretty much about mmap trying to figure out myself but understanding how to map a file (what I could find in every article about mmap online) is not the same as understanding how it works inside QEMU ..
I know each process gets its own logical address space, if I understood fine mmap should take a portion of qruncom address space and give it to the emulator that should then see that as its own address space (please correct me if I am wrong!) ..
Now if I got fine the flag MAP_FIXED, obliges the process to give that portion of address space starting at its addr parameter (the first).. or if it is not possible to give an error..
My big doubt is how can the process give exactly that portion of address space starting at zero by just  running it as root?.. I am expecting that area of address space to be taken by I dunno, code, data of the process itself.. honestly I don't know how things are allocated when a process is run(and I wish I could learn that).. but how can one think that addresses around zero are free for a mapping??
I'll appreciate very much any explanation, or links where to learn those topics! :)
Thank you very much!
Best Regards!
Stefano B. 

reply via email to

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