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-devel

Re: [Xen-devel] What are the mechanism for switching between Xen Hypervi

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-devel] What are the mechanism for switching between Xen Hypervisor and Virtual Machine
From: Mark Williamson <mark.williamson@xxxxxxxxxxxx>
Date: Fri, 11 Jul 2008 16:07:22 +0100
Cc: Tom Creck <tom-xen@xxxxxxxxxxx>
Delivery-date: Fri, 11 Jul 2008 08:07:48 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <18377627.post@xxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <18377627.post@xxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.9.9
>       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

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