<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
There are two modes for delivering interrupts and traps to a guest
with software virtualization:<br>
- trap forwarding: 'int xx' generates a #GP that the hypervisor
intercepts, after which it interprets the instruction and (usually)
forwards to the guest IDT entry<br>
- IDT gate passthrough; in certain specific cases we use trampoline
code to directly call the guest's IDT handler (int xx ->
trampoline handler -> guest idt handler; no hypervisor
interaction occurs)<br>
<br>
Neither method applies to hardware virtualization (VT-x/AMD-V) as
the guest execution mode is identical to what it expects (no ring
compression; guest ring 0 code running in ring 1).<br>
<br>
<br>
On 10/15/2010 6:05 PM, Francesco Di Paolo wrote:
<blockquote cite="mid:SNT127-W457D87B19ECECBF2592EA297570@phx.gbl"
type="cite">
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
hello there, i<br>
i'd like to have some informations in regards to how the
hypervisor takes over when a system call(int 0x80) occurs in the
guest OS. How it is managed the passage from Ring3 to Ring1. What
i'm facing is understand what is going on when an application in
the guest OS invokes a system call(i didn't get if it is involved
the host kernel and its IDT or if there are interactions only
between the application and the guest kernel). If you could give
us some suggestions, we would be very grateful.
<pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
vbox-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:vbox-dev@virtualbox.org">vbox-dev@virtualbox.org</a>
<a class="moz-txt-link-freetext" href="http://vbox.innotek.de/mailman/listinfo/vbox-dev">http://vbox.innotek.de/mailman/listinfo/vbox-dev</a>
</pre>
</blockquote>
<br>
<br>
<div class="moz-signature">-- <br>
Kind regards / Mit freundlichen Gruessen / Met vriendelijke groet<br>
<br>
--<br>
Sander van Leeuwen | Senior Staff Engineer, VirtualBox<br>
Oracle Virtualization<br>
<br>
ORACLE Deutschland B.V. & Co. KG | Werkstrasse 24 | 71384
Weinstadt<br>
<br>
ORACLE Deutschland B.V. & Co. KG<br>
Hauptverwaltung: Riesstr. 25, D-80992 München<br>
Registergericht: Amtsgericht München, HRA 95603<br>
<br>
Komplementärin: ORACLE Deutschland Verwaltung B.V.<br>
Rijnzathe 6, 3454PV De Meern, Niederlande<br>
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697<br>
Geschäftsführer: Jürgen Kunz, Marcel van de Molen, Alexander van
der Ven<br>
</div>
</body>
</html>