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

[Xen-devel] Re: Xen/ia64 status (and solicitation for alpha testers and developers)

Mark Williamson <maw48 <at> cantab.net> writes:

> > Xenlinux must go 
> > through a binary-translation pass after which it is essentially fully
> > virtualized but as a result is quite slow (4x).
> That sounds interesting - what exactly does the binary translation pass do?
> Just curious...

Sorry about the delayed response...

Since Xenlinux/ia64 is demoted, all privileged instructions trap
and are emulated.  The real problem is with "privilege sensitive"
instructions -- those instructions that don't trap but behave
differently depending on whether they execute privileged or not.
There are three of these on ia64.  Also, there are certain registers
that can be read at any privilege level but can only be written
when privileged.  Examples include the eight "kernel registers"
and the cpuid registers.

All the privilege-sensitive (and reads of write-privilege-sensitive
registers) also need to trap and be emulated.  I force this to
happen by finding and translating all such instructions to other
unique illegal/privilged bit patterns that trap.

This is all slow but, as with x86, paravirtualization will greatly
reduce the number of privops emulated and bring performance to
within a couple percent of native (as demonstrated in our VM'04
paper on vBlades).

Hope that helps!

SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
Xen-devel mailing list



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