On Thu, 2006-01-12 at 15:26 +0000, Keir Fraser wrote:
> On 12 Jan 2006, at 15:14, Dave Hansen wrote:
>
> >> This is a good set of questions. We have about half dozen files in
> >> /proc/xen right now. One is an obvious canididate to stick in /dev, as
> >> it has primarily an ioctl() interface.
> >
> > Actually, anything with an ioctl interface is probably a good cantidate
> > for a writable sysfs file. The basic idea is that we prefer something
> > in sysfs with a discrete, unique name. It also makes it a lot easier
> > to
> > develop with because you can look at the values from scripts, and you
> > don't have to worry about synchronizing any headers.
> >
> > So, what kind of ioctls are we talking about?
>
> They are pretty low level. e.g., pass-thru a raw hypercall direct to
> xen, map another VM's pages into my address space (given a list of page
> frames), etc. very strongly binary, and unlikely to be useful for
> scripting.
The ppc64 hypervisor does something like this today in a couple of
places. It is kinda a mess. I think that putting a generic, binary
firmware interface leads to having a bit of a crutch. It basically lets
the userspace software stack bypass Linux and talk directly to the
hypervisor. It also means that you have to have a very specialized
software stack for each hypervisor or virtualization type, which is very
bad.
This pushes things out to userspace, which is generally good. But, it
is pushing behavior and "hardware" knowledge out there, too. The
hardware knowledge, especially, is something that we usually try to
encapsulate.
Also things like inter-partition page sharing, and partition migration
are used in other hypervisors. I think it is essential to get common
interfaces to those things.
One last thing... When you say "very strongly binary" do you mean, "are
implemented now as very strongly binary", or "absolutely 100% have to be
horribly strongly binary"? They are two quite different things. :)
-- Dave
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|