qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] Re: x86-64 port


From: Andi Kleen
Subject: [Qemu-devel] Re: x86-64 port
Date: Thu, 18 Mar 2004 02:40:16 +0100
User-agent: Gnus/5.110002 (No Gnus v0.2) Emacs/21.2 (gnu/linux)

Fabrice Bellard <address@hidden> writes:

> Nick Snellock wrote:
>> Is anyone working on an x86-64 port?
>
> Not me :-) An x86-64 host port would be very interesting because the
> 64 bit host MMU could be used to remap the whole emulated 4GB address
> space.

I tried to run it recently in 32bit emulation on the 64bit kernel,
but it just produced a lot of segfaults. Even when I forced the
address room to 3GB. Most likely it triggers bugs in the 32bit emulation
layer. I wasn't able to look into it yet.

> I think that there is also a lot of potential for a "code-copy" mode
> converting x86-32 to x86-64 code (look at what I did for . Along with
> the 4GB space remapping, it would give close to native performances
> without requiring any potentially unsafe kernel module (unlike the
> popular virtualizers).

Yes, and you may even get better code in the result (you have 16 registers
to play with instead of 8) 

There is one problem however: currently there are a few system calls
that know if they are executing in 32bit or 64bit and act accordingly.
You can call the 32bit int 0x80 system call handler from a 64bit process,
but you would probably run into smaller issues. This may need a few kernel
fixes. For example the environment and some other pointers are 64bit.
Should be all fixable though.

-Andi





reply via email to

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