DragonFly BSD
DragonFly kernel List (threaded) for 2006-09
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Cache coherency, clustering, and Kernel virtualization

From: Anil Madhavapeddy <anil@xxxxxxxxxx>
Date: Mon, 4 Sep 2006 17:57:45 +0100

On 4 Sep 2006, at 09:36, Matthew Dillon wrote:

Xen is the one that runs a linux kernel as the primary OS? I really
have no desire to make DragonFly dependant on some other OS for
features. And, frankly, I'm not sure I would consider Xen to be
contemporary to an actual native user-mode kernel. They are two very
different beasts, with very different levels of integration. Just
because it is a virtualization technology doesn't mean it is the
right virtualization technology for us.

Xen exposes a set of "hypercalls" which are system calls for virtualised OS kernels. They take care of privileged operations like manipulating page tables, etc. The actual management calls can be invoked by any operating system which supports that interface (a so- called domain 0).

The hypervisor itself does surprisingly little... all drivers run in domain0 (or even separate dedicated driver domains), and Xen acts as a "page proxy" by managing how domains map memory between each other in order to do efficient zero-copy I/O from front-end virtual network/ block drivers to the actual backend drivers.

OpenBSD domain0 support for Xen (i.e. no Linux anywhere) is currently underway and going pretty well (http://hg.recoil.org/openbsd-xen- sys.hg); it's pretty straightforward to add once the basic guest-OS API is supported well.

As to whether or not you want to tie yourself to Xen, that's an entirely different question. I just wanted to address the "depends on Linux" point :-) There are some features which sound very useful to you (the para-virtual live migration), and others which are not so relevant (the HVM support for hardware-assisted virtualisation).


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