\vfill
\begin{tabular}{l}
{\Huge \bf Users' Manual} \\[4mm]
-{\huge Xen v3.0} \\[80mm]
+{\huge Xen v3.3} \\[80mm]
\end{tabular}
\end{center}
\vspace*{\fill}
-Xen is Copyright \copyright 2002-2005, University of Cambridge, UK, XenSource
-Inc., IBM Corp., Hewlett-Packard Co., Intel Corp., AMD Inc., and others. All
-rights reserved.
+Xen is Copyright \copyright 2002-2008, Citrix Systems, Inc., University of Cambridge, UK, XenSource Inc., IBM Corp., Hewlett-Packard Co., Intel Corp., AMD Inc., and others. All rights reserved.
Xen is an open-source project. Most portions of Xen are licensed for copying
under the terms of the GNU General Public License, version 2. Other portions
Xen is an open-source \emph{para-virtualizing} virtual machine monitor
-(VMM), or ``hypervisor'', for the x86 processor architecture. Xen can
-securely execute multiple virtual machines on a single physical system
-with close-to-native performance. Xen facilitates enterprise-grade
-functionality, including:
+(VMM), or ``hypervisor'', for a variety of processor architectures including x86. Xen can securely execute multiple virtual machines on a single physical system with near native performance. Xen facilitates enterprise-grade functionality, including:
\begin{itemize}
\item Virtual machines with performance close to native hardware.
\item Live migration of running virtual machines between physical hosts.
\item Up to 32\footnote{IA64 supports up to 64 virtual CPUs per guest virtual machine} virtual CPUs per guest virtual machine, with VCPU hotplug.
-\item x86/32, x86/32 with PAE, x86/64, IA64 and Power platform support.
+\item x86/32 with PAE, x86/64, and IA64 platform support.
\item Intel and AMD Virtualization Technology for unmodified guest operating systems (including Microsoft Windows).
\item Excellent hardware support (supports almost all Linux device
drivers).
Paravirtualized Xen support is available for increasingly many
operating systems: currently, mature Linux support is available and
-included in the standard distribution. Other OS ports---including
-NetBSD, FreeBSD and Solaris x86 v10---are nearing completion.
+included in the standard distribution. Other OS ports, including
+NetBSD, FreeBSD and Solaris are also complete.
\section{Hardware Support}
-Xen currently runs on the x86 architecture, requiring a ``P6'' or
-newer processor (e.g.\ Pentium Pro, Celeron, Pentium~II, Pentium~III,
-Pentium~IV, Xeon, AMD~Athlon, AMD~Duron). Multiprocessor machines are
-supported, and there is support for HyperThreading (SMT). In
-addition, ports to IA64 and Power architectures are supported.
+Xen currently runs on the IA64 and x86 architectures. Multiprocessor
+machines are supported, and there is support for HyperThreading (SMT).
-The default 32-bit Xen supports for Intel's Physical Addressing Extensions (PAE), which enable x86/32 machines to address up to 64 GB of physical memory.
-It also supports non-PAE 32-bit Xen up to 4GB of memory.
-Xen also supports x86/64 platforms such as Intel EM64T and AMD Opteron
-which can currently address up to 1TB of physical memory.
+The default 32-bit Xen requires processor support for Physical
+Addressing Extensions (PAE), which enables the hypervisor to address
+up to 16GB of physical memory. Xen also supports x86/64 platforms
+such as Intel EM64T and AMD Opteron which can currently address up to
+1TB of physical memory.
Xen offloads most of the hardware support issues to the guest OS
running in the \emph{Domain~0} management virtual machine. Xen itself
Xen has grown into a fully-fledged project in its own right, enabling us
to investigate interesting research issues regarding the best techniques
for virtualizing resources such as the CPU, memory, disk and network.
-Project contributors now include XenSource, Intel, IBM, HP, AMD, Novell,
-RedHat.
+Project contributors now include Citrix, Intel, IBM, HP, AMD, Novell,
+RedHat, Sun, Fujitsu, and Samsung.
Xen was first described in a paper presented at SOSP in
2003\footnote{\tt
\section{What's New}
-Xen 3.0.0 offers:
+Xen 3.3.0 offers:
\begin{itemize}
-\item Support for up to 32-way SMP guest operating systems
-\item Intel (Physical Addressing Extensions) PAE to support 32-bit
- servers with more than 4GB physical memory
-\item x86/64 support (Intel EM64T, AMD Opteron)
-\item Intel VT-x support to enable the running of unmodified guest
-operating systems (Windows XP/2003, Legacy Linux)
-\item Enhanced control tools
-\item Improved ACPI support
-\item AGP/DRM graphics
+\item IO Emulation (stub domains) for HVM IO performance and scailability
+\item Replacement of Intel VT vmxassist by new 16b emulation code
+\item Improved VT-d device pass-through e.g. for graphics devices
+\item Enhanced C and P state power management
+\item Exploitation of multi-queue support on modern NICs
+\item Removal of domain lock for improved PV guest scalability
+\item 2MB page support for HVM and PV guests
+\item CPU Portability
\end{itemize}
-
-Xen 3.0 features greatly enhanced hardware support, configuration
-flexibility, usability and a larger complement of supported operating
-systems. This latest release takes Xen a step closer to being the
-definitive open source solution for virtualization.
+Xen 3.3 delivers the capabilities needed by enterprise customers and gives computing industry leaders a solid, secure platform to build upon for their virtualization solutions. This latest release establishes Xen as the definitive open source solution for virtualization.
The Xen distribution includes three main components: Xen itself, ports
of Linux and NetBSD to run on Xen, and the userspace tools required to
manage a Xen-based system. This chapter describes how to install the
-Xen~3.0 distribution from source. Alternatively, there may be pre-built
+Xen~3.3 distribution from source. Alternatively, there may be pre-built
packages available as part of your operating system distribution.
The former allows the overall build target architecture to be
specified. You will typically not need to modify this unless
-you are cross-compiling or if you wish to build a non-PAE
-Xen system. Additional configuration options are documented
-in the \path{Config.mk} file.
+you are cross-compiling. Additional configuration options are
+documented in the \path{Config.mk} file.
The top-level \path{Makefile} is chiefly used to customize the set of
kernels built. Look for the line: