From: Anthony Liguori <aliguori@us.ibm.com>
To: "Jim C. Brown" <jma5@umd.edu>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Qemu and (Pacifica | Vanderpool)
Date: Mon, 07 Nov 2005 00:30:46 -0600 [thread overview]
Message-ID: <436EF496.8040306@us.ibm.com> (raw)
In-Reply-To: <20051107055652.GA26645@jbrown.mylinuxbox.org>
Jim C. Brown wrote:
>>VT/SVM will definitely improve the performance of kqemu/qvm86.
>>
>>
>
>VT/SVM won't actually help them that much in the current case, assuming that my
>understanding is correct. They can only make the userland bits a little
>faster, and kqemu/qvm86 don't support running kernel code (where the real gains
>would be realized).
>
VT/SVM allows you to run kernel code unmodified and without binary
translation on bare metal.
>They could be extended to take over both userland and kernel code easily though.
>(In which case the user space qemu would provide only the system emulation
>bits - there'd no longer be any emulation of the guest cpu).
>
Yup.
>I believe that
>there are plans to extend kqemu to be able to do this at some point. But at
>that point I'd hesitate to call the combination "QEMU", since there would be
>nothing of the original qemu left (for the record this considered of the
>dynamic translator/JIT and the qemu-user code).
>
>
kqemu would have to take advantage of VT/SVM to be able to run kernel
code. There's an excellent paper (that I referenced in my previous
note) that explains why this is the case.
>Agreed. Of course, since Xen runs on the bare metal, one would expect that it
>would have better performance than qemu anyways (though if qemu's io model is
>used, that is not going to be true for the obvious reasons). If ease of
>installation is more important than performance, qemu is less invasive. I guess
>that can be considered a tradeoff.
>
>
Yeah, I think that's the basic trade-off.
>I doubt qemu + kqemu/qvm86 is a pure Type II anyways, since it modifies the
>host operating system. And from my understanding of qvm86, the userland code
>is essentially run directly by qvm86 directly on the bare hardware, since the
>only parts of the host kernel that are involved are the parts that tell the
>kernel to leave that code alone. Modifying the accelerators so they handle
>running of all the guest code moves even farther away from this.
>
>
The original Popek/Goldberg paper puts a set of requirements on the host
Operating System such that one can implement a Type II VMM. You can
think of kqemu/qvm86 as extending the host operating system to satisfy
the Type II requirements.
Regards,
Anthony Liguori
>--
>Infinite complexity begets infinite beauty.
>Infinite precision begets infinite perfection.
>
>
>
next prev parent reply other threads:[~2005-11-07 6:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-06 15:19 [Qemu-devel] Qemu and (Pacifica | Vanderpool) Dave Feustel
2005-11-06 15:32 ` Hetz Ben Hamo
2005-11-06 15:33 ` Paul Brook
2005-11-06 16:16 ` Mark Williamson
2005-11-07 1:01 ` Anthony Liguori
2005-11-06 16:36 ` Dave Feustel
2005-11-07 0:57 ` Anthony Liguori
2005-11-07 5:56 ` Jim C. Brown
2005-11-07 6:30 ` Anthony Liguori [this message]
2005-11-06 16:24 ` Jim C. Brown
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=436EF496.8040306@us.ibm.com \
--to=aliguori@us.ibm.com \
--cc=jma5@umd.edu \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.