[Top][All Lists]

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

[Qemu-devel] Possible derivative project : a simple I386 virtualizer ?

From: Emmanuel Charpentier
Subject: [Qemu-devel] Possible derivative project : a simple I386 virtualizer ?
Date: Wed, 05 May 2004 23:21:20 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040413 Debian/1.6-5

Dear list,

My first attemps with QEMY weren't very impressive : while Windows 98 was (somewhat) instalable, the display was so limited and so slow that it was in practice very hard to use.

I've been extremely impressed with my attempts to test a W2K installation : the system is in fact usable for practical purposes. This emulator, being real fast, allows for a lot of testing situations.

Another possibility is to actually use the guest system for production. The classical cases, in the i386 world, are using Windows applications on a Linux workstation or, conversively, use Linux applications on Windows desktops. This is the target of virtualizers such as VMWare and Win4Lin.

Kevin Lawton, author of the Plex86 virtualizer, noted that coupling its virtualizer with Bochs could lead to fast execution of user-level programs by leaving least-privileged code (i. e. anything that doesn't touch hardware or system) running on the actual hardware, and trapping any instruction escaping this level (privileged instructions, system calls, access to no-owned memory location or IO ports, etc ...). Unfortunately, Kevin didn't go further in this direction, and concentrates now on the idea of a virtualizer dedicated to running a specialized version of the Linux kernels on virtual machines. (BTW, Kevin states that the development of this idea probably requires outside funding, and won't touch it. Being laid off by Mandrakesoft was probably a hard experience to him, and I fully respect his point of view ...).

Could Kevin's trick be used with QEMU ? The guest OS as a whole would run in an emulator, who would leave the user-level code run on the host CPU, but trapping any and all non-user-level code and running it on the emulator ?

This idea sounds simple. So simple in fact that I'm probably reinventing the wheel (and a square wheel wit an excentered axis, at that ...). Furthermore, while the idea souns extremely simple, the realization probably isn't ...

Furthermore, my abilities at this level of programming are almost zilch : while I have been able to write (loooong ago) some assembly code for Z80 and 6502, while I'd probably still able to write for the 8086, my last assembly gigs were some toy programs to undetstand the 80286, and my knowledge of the 386 and later is strictly theoretical. I migh be pipedreaming in a big way.

Could you sound off your reactions to this (ammitedly simplistic) idea ?

                                        Emmanuel Charpentier

reply via email to

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