qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] The QEMU Accelerator Module


From: Jim C. Brown
Subject: Re: [Qemu-devel] The QEMU Accelerator Module
Date: Fri, 11 Feb 2005 12:17:16 -0500
User-agent: Mutt/1.4i

On Fri, Feb 11, 2005 at 04:09:10PM +0000, Derek Fawcus wrote:
> Well,
>   rather than whinging because Fabrice has not chosen to distribute his
> work under your preferred licence.  People could simply reimplement it.

Or do as I am, and figure out how to mix plex86 with the open source part.

Or even better, dig deep in your pockets and sponser Fabrice to completely
open it up.

> 
> Mind - this involves effort on their behalf,  and some thinking.  So it's
> certainly easier to moan.  However I suggest that such moaning is simply
> a waste of time and effort.
> 
> Now I don't know how Fabrice has done the kqemu module,  but the obvious
> approach that springs to mind is simply moving the qemu-fast processing
> into the kernel with checks for the address boundary.  So if I was to
> attempt to reimplement it,  my starting point would be to approach it
> in that fashion.
> 
> Namely placing a version of cpu_exec() and/or main_loop() into the kernel
> together with the use of the USE_CODE_COPY facility and some bounds checks
> such that if the machine being emulated attempted to have accessable memory
> above 0xc0000000 it would fall back to the user-space SOFT_MMU emulation.
> One could then manipulate the process space such that while the kernel
> module was running user space code,  it's process address space (< 0xc0000000)
> reflected the emulated machine space.

That wouldn't be complete, as kqemu uses virtalization as well. Also, it seems
that a lot of the kernel MMU support is in the open source code. Only
kqemu_delete, kqemu_exec, kqemu_get_cpu_state, and kqemu_init need to be
reimplemented.

-- 
Infinite complexity begets infinite beauty.
Infinite precision begets infinite perfection.




reply via email to

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