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

Re: [Xen-devel] What are the mechanism for switching between Xen Hypervisor and Virtual Machine



>       I'm trying to summerize all the ways of control flow switch between a
> virtual machine and the Xen hypervisor, such as hypercall, either VM->Xen
> or Xen->VM.
>       Can you give me a complete list of all the ways and explain in
> general them to some extent?

VM->Xen transitions will occur on some some kind of interrupt-like event.  For 
instance, a software interrupt by the guest kernel (triggering a hypercall) 
and certain kinds of exceptions / faults that may occur whilst running the 
guest.  Interrupts from hardware devices - whether they're owned by a guest 
or Xen itself - will also cause a guest->Xen transition so that Xen can take 
appropriate action.

Xen->VM transitions occur after Xen has handled an interrupt of some kind.  If 
the interrupt was handled internally by Xen, the guest may be unaware of 
this.  If a hypercall was being executed, the call will return in the guest.  
If Xen decided to send an event to a guest then the corresponding event 
channel bit will be set.  If Xen decided to reschedule then it may be 
returning to a *different* guest than when the interrupt occurred.

Hope that helps,
Cheers,
Mark


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

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


 


Rackspace

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