WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] Dom0 Device Driver Access

> > On Tuesday June 17 2008 01:00:25 pm Artur Baruchi wrote:
> >> Does Dom0 access device driver using Ring Structures (like DomU does)
> >> or it has direct access to Device Driver (like Native Linux)?
> >
> > Yes and no. Things like memory management and paging are done by xen.gz.
> > Device access is (usually) done by dom0. xen.gz runs in ring 0; dom0 runs
> > in ring 1 (not sure about the domus); and userland runs in ring 3. A
> > quick search of xen.org couldn't provide a url to back this up.
>
> suggested reading:
> Xen and the Art of Virtualization
> www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf

In this case I'd suggest also reading "Safe Hardware Access with the Xen 
Virtual Machine Monitor": 
http://www.cl.cam.ac.uk/research/srg/netos/papers/2004-oasis-ngio.pdf

The SOSP paper Todd suggests is an essential read if you want to understand 
the technical aspects of Xen, particularly the PV memory management side of 
things.  But the version of Xen described in it uses a different IO model 
that has dom0 talking to the hardware using paravirtual descriptor rings for 
block and net - this is no longer the case.

The OASIS paper describes (roughly) the architecture currently used, with dom0 
having direct access to hardware IO devices and then providing virtual 
devices to other domains.

I'd say the OASIS paper probably contains the answers to Artur's original 
question but you may need to read the SOSP paper to fully understand it!

Cheers,
Mark


-- 
Push Me Pull You - Distributed SCM tool (http://www.cl.cam.ac.uk/~maw48/pmpu/)

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

<Prev in Thread] Current Thread [Next in Thread>