Sei sulla pagina 1di 15

The Xen Hypervisor

TM

Destin Smith-Norris

COP 4610 - Computer Operating Systems


The Xen Hypervisor
• What is Xen?
• Why Xen?
• Xen Architecture
• Functions of Xen
• Evaluation
What is Xen?
• Xen is a platform for
virtualizing Operating
Systems
• Its goals are to be efficient,
secure, robust and scalable
• Can handle up to 100
simultaneous OS instances
including Linux and Windows
• Can run either paravirtualized
guests or fully virtualized
guests
Why Virtualize with Xen?
• The main advantages to OS virtualization
are security, hardware reduction,
efficiency, and application mobility [1]
• The uses for such an environment are
limitless
• Can host many private services on
dedicated operating system instances with
complete isolation on single server
History of Xen
• Xen is an open source operating system
originally developed as a research project at the
University of Cambridge in 2003
• It is included in many commercial Linux
distributions, as well as influencing Microsoft’s
Hyper-V[3] and Citrix’s virtualization products
• It has been implemented into countless
commercial products from companies including
Sun, Oracle, Microsoft and Citrix
Architecture
• The foundation of a Xen system is the Xen
Hypervisor [4]. This is what sits directly on the
hardware of a system below any other Operating
Systems.
• It is responsible for CPU scheduling between
kernels and memory management for the
various virtual machines running above it[4].
• The Hypervisor has no knowledge of networking,
storage or any other standard I/O function found
on the computer[4].
Architecture
• A modified Linux kernel runs directly above
the Xen Hypervisor, called Domain0
• This unique virtual machine is given access
to the physical hardware resources available
on the computer
• Hosts the Xen Domain Management and
Control
Architecture
• Running parallel to Domain 0 are any number of
other modified Operating Systems
• These are called Domain U (Dom U) PV
guests[4]. These are paravirtualized virtual
machines running on top of the Xen hypervisor
• It is also possible to run fully virtualized
machines as Domain U HVM guests
• Running a Windows operating system would be
an example of this
Architecture
Memory Management
• Xen is responsible for ensuring the
complete isolation of VMs
• Processes are given direct access to
memory, Xen is only needed when a
process needs to go out of its reserved
memory space
• The insures efficiency and security
CPU Virtualization
• Xen runs on higher privilege level than
guest OSes (hence ‘hypervisor’)
• In x86 machines, Xen runs in most
privileged ring 0, guests OS run in 1, and
user land processes run in ring 3
CPU Scheduling
• Guests control their own processes
scheduling
• Scheduling between guest OSes is
controlled by Xen
• Admin can select from multiple scheduling
algorithms, including Borrowed Virtual
Time, Simple Earliest Deadline First, and
Credit
Evaluation
• Xen – Less is More
• Under 150,000 lines of code
• Can save thousands in hardware and
energy reductions
• Used in production environments around
the world
• Security is a major issue
Sources
• [1] Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim
Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield.
Xen and the art of virtualization. In SOSP ’03: Proceedings of the
nineteenth ACM symposium on Operating systems principles,
pages 164–177, New York, NY, USA, 2003. ACM.
• [2] L. Cherkasova, D. Gupta, and A. Vahdat. Comparison of the
three CPU schedulers in Xen. PERFORMANCE EVALUATION
REVIEW, 35(2):42, 2007.
• [3] Mary Jo Foley. Review: Microsoft’s hyper-v puts vmware and
linux on notice. http://blogs.zdnet.com/microsoft/?p=1182.
• [4] Xenc . Xen Architecture Overview, 2008.

• Images taken from Xen and XenSource publications.

Potrebbero piacerti anche