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

Re: [Xen-devel] Guest to Host communication

On Tue, Oct 22, 2013 at 01:18:56PM +0000, Paul Durrant wrote:
> > -----Original Message-----
> > From: Jose A. Lopes [mailto:jabolopes@xxxxxxxxxx]
> > Sent: 22 October 2013 13:49
> > To: Paul Durrant
> > Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx
> > Subject: Re: [Xen-devel] Guest to Host communication
> > 
> > Hi,
> > 
> > If I understood correctly, Xenstore requires writing a driver and
> > loading it inside the VM.  Is this correct?
> > 
> Well, yes you'll need some code in the guest, but drivers already exist for 
> linux and windows so you could just use them.

So, Microsoft came up with this kvp (key value) driver that can
communicate with the host. The guest only needs to use a socket
interface to talk - and best of all it is in the upstream kernel.

The driver (user-space) is this one: 
and it listens to the socket. The kernel driver gets the
key/values from the host and it ends up pushing them to the
daemon. The daemon does whatever it needs to do with them
(say, alter the IP of the guest, return the OS info back and
so on).

It should be possible to make the kernel driver use a
XenBus instead of a VMBus and piggyback on this.

> > If so, then it seems this approach would require writing different
> > drivers for different OSes, such as, Linux and Windows.  Currently, we

The neat thing is that it would also work out of the box on Windows (I hope).

> > are just exploring different design options and we would like to aim
> > at a uniform approach across different OSes. Is there an option like that ?
> > 
> What option do you expect that doesn't involve writing at least some code for 
> each OS you want to use?
>   Paul
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.