From: Fabrice Bellard <fabrice.bellard@free.fr>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Qemu is a wonderful (and presentation)
Date: Thu, 26 Jun 2003 19:32:13 +0200 [thread overview]
Message-ID: <3EFB2E1D.8000502@free.fr> (raw)
In-Reply-To: 20030626155242.GA20861@dragas.dyndns.org
Stefano Marinelli wrote:
> Hello everybody, I'm a Computer Sciences student at Bologna's university
> (Italy) and I'm doing a research about Virtual Machines and their
> application. My final thesis will be about it. I've spent the last month
> performing tests with bochs and plex86 (the new one) but I've found out
> that bochs is too slow (even if almost complete) while plex has good
> ideas, but is still in really alpha stage. I've put an eye on qemu and
> found out it could be the best project to work with. I like the fact
> that it can be used to emulate x86 machines on non-x86 environments,
> especially because universities often have machines like PPC and Sparc.
> Anyway, I've performed some tests with the vl and created some new
> initrd images in order to see the state of compatibility. Being a so
> young project, I didn't expect too much, but I'm amazed. It's good, the
> user emulation performs well, the System emulator shows a good project
> idea, so I think it has the possibility to become a good alternative to
> bochs.
> One of the things I matter more is the "guest" portability: looking at
> the documentations, seems that one day it will be possible to run other
> non-Linux operating systems. My task is to prepare a bunch of virtual
> machine, where students (also normal users, but I'm talking about
> University research) will be able to experiment with different operating
> systems, both "secure" and "insecure" ones (like old Windows 98),
> without having to sacrifice a physical machine. Bochs could be a
> solution, but it's soooo slow. The idea beyond the dynamic translation
> is great.
> I had great expectations with bochs+plex86, but Kevin said that it will
> be the last thing to be done, even because the guest kernel has to be
> modified (and I don't like too much the host kernel driver to be
> installed)
> So the question is: will one day be possible to run other x86
> operating systems (like the *BSD, Windows, BeOS and so on)?
Hi,
There are three problems to run other operating systems:
1) Some weird x86 instructions or behaviors are still lacking (for
example: full task gate support, call gates, segment limit checks). It
is easy to add but difficult to debug, especially if you don't have the
source code of the guest OS.
2) If the guest OS wants access to memory beyond 0xc0000000, the current
MMU emulation won't work. It can be solved by using a software MMU
emulation (slower) or by using various tricks with the segment registers
provided the guest OS does not use the full address range. The software
MMU will be implemented someday as some people need it to have an exact
full system emulation. For the rest, it depends on the number of people
who ask it :-) The optimal solution would require a tricky host kernel
patch, but in this case it can be more tempting to use plex86.
3) For Windows and MSDOS, a more complete PC hardware emulation is
needed (in particular full VGA support is needed). It is not difficult
to do, but as in (1), bugs can be difficult to find. I won't do that
unless many people ask it. Another solution is to integrate QEMU in
bochs to reuse all its PC hardware emulation stuff.
Currently, I think launching *BSD would not require many changes (maybe
it already works - I did not test. If you give me a working image I can
look at it). I may add IDE emulation soon as it can be quite useful even
with Linux.
Fabrice.
next prev parent reply other threads:[~2003-06-26 17:35 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-06-26 15:52 [Qemu-devel] Qemu is a wonderful (and presentation) Stefano Marinelli
2003-06-26 17:32 ` Fabrice Bellard [this message]
2003-06-27 7:54 ` Stefano Marinelli
2003-06-27 12:13 ` Johan Rydberg
2003-06-27 23:17 ` Stefano Marinelli
2003-06-27 8:02 ` Stefano Marinelli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3EFB2E1D.8000502@free.fr \
--to=fabrice.bellard@free.fr \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).