SlideShare a Scribd company logo
1 of 9
Xen Architecture Overview




Date:      February 13, 2008
Version:   1.2
Table of Contents

Executive Summary ............................................................................................................ 3
Xen Components ................................................................................................................. 3
  Xen Hypervisor ............................................................................................................... 3
  Domain 0 ......................................................................................................................... 4
  Domain U ........................................................................................................................ 4
  Domain Management and Control .................................................................................. 6
    Xend ............................................................................................................................ 6
    Xm............................................................................................................................... 6
    Xenstored .................................................................................................................... 6
    Libxenctrl .................................................................................................................... 6
    Qemu-dm .................................................................................................................... 7
    Xen Virtual Firmware ................................................................................................. 7
Xen Operation ..................................................................................................................... 7
  Domain 0 to Domain U Communication ........................................................................ 8
Glossary .............................................................................................................................. 9




Xen Architecture Overview                                                                                                              2
Executive Summary
This document contains a high level architectural overview of the Xen hypervisor and the
associated tools and applications necessary to support a complete virtualization
environment. The architecture is based on Xen 3.2 released in late January 2008 and is
only an introduction to the overall Xen architecture. For a more complete description of
the architecture please reference the many Xen books available.

Xen Components
A Xen virtual environment consist of several items that work together to deliver the
virtualization environment a customer is looking to deploy:

       Xen Hypervisor
       Domain 0
       Domain Management and Control (Xen DM&C)
       Domain U (Dom U) PV Guest
       Domain U (Dom U) HVM Guest

The diagram below shows the basic organization of these components.




      Domain 0
                             DOM U                            DOM U

     Xen DM&C               PV Guest                           HVM
                                                               Guest




                                       Xen Hypervisor




Xen Hypervisor
The Xen hypervisor is the basic abstraction layer of software that sits directly on the
hardware below any operating systems. It is responsible for CPU scheduling and memory
partitioning of the various virtual machines running on the hardware device. The
hypervisor not only abstracts the hardware for the virtual machines but also controls the
execution of virtual machines as they share the common processing environment. It has



Xen Architecture Overview                                                               3
no knowledge of networking, external storage devices, video, or any other common I/O
functions found on a computing system.

Domain 0
Domain 0, a modified Linux kernel, is a unique virtual machine running on the Xen
hypervisor that has special rights to access physical I/O resources as well as interact with
the other virtual machines (Domain U: PV and HVM Guests) running on the system. All
Xen virtualization environments require Domain 0 to be running before any other virtual
machines can be started.

Two drivers are included in Domain 0 to support network and local disk requests from
Domain U PV and HVM Guests (see below); the Network Backend Driver and the Block
Backend Driver. The Network Backend Driver communicates directly with the local
networking hardware to process all virtual machines requests coming from the Domain U
guests. The Block Backend Driver communicates with the local storage disk to read and
write data from the drive based upon Domain U requests.



                                        Domain 0

                            PV Drivers:

                              Network Backend Driver


                              Block Backend Driver




Domain U
All paravirtualized virtual machines running on a Xen hypervisor are referred to as
Domain U PV Guests and are run modified Linux operating systems, Solaris, FreeBSD,
and other UNIX operating systems. All fully virtualized machines running on a Xen
hypervisor are referred to as Domain U HVM Guests and run on standard Windows or
any other unchanged operating system.

The Domain U PV Guest virtual machine is aware that it does not have direct access to
the hardware and recognizes that other virtual machines are running on the same
machine. The Domain U HVM Guest virtual machine is not aware that it is sharing
processing time on the hardware and that other virtual machines are present.




Xen Architecture Overview                                                                  4
A Domain U PV Guest contains two drivers for network and disk access, PV Network
Driver and PV Block Driver.


                                     Domain U
                                     PV Guest
                            PV Drivers:

                             Network Driver


                             Block Driver




A Domain U HVM Guest does not have the PV drivers located within the virtual
machine; instead a special daemon is started for each HVM Guest in Domain 0, Qemu-
dm. Qemu-dm supports the Domain U HVM Guest for networking and disk access
requests.

The Domain U HVM Guest must initialize as it would on a typical machine so software
is added to the Domain U HVM Guest, Xen virtual firmware, to simulate the BIOS an
operating system would expect on startup. More information on the Xen virtual firmware
is presented later in this document.




             Domain 0                                     Domain U
                                                         HVM Guest




              Qemu-DM
                                                     Xen virtual
                                                      firmware




Xen Architecture Overview                                                            5
Domain Management and Control
A series of Linux daemons are classified as Domain Management and Control by the
open source community. These services support the overall management and control of
the virtualization environment and exist within the Domain 0 virtual machine. The
diagrams below show the daemons outside the Domain 0 diagram for a clearer
understanding of the architecture.

Xend
The Xend daemon is a python application that is considered the system manager for the
Xen environment. It leverages the libxenctrl library (see below) to make requests of the
Xen hypervisor. All requests processed by the Xend are delivered to it via an XML RPC
interface by the Xm (see below) tool.


                                                   XML RPC
                                     Xend                         XM


                                  Libxenctrl

     Domain 0




                                       Xen Hypervisor




Xm
The command line tool that takes user input and passes to Xend via XML RPC.

Xenstored
The Xenstored daemon maintains a registry of information including memory and event
channel links between Domain 0 and all other Domain U Guests. The Domain 0 virtual
machine leverages this registry to setup device channels with other virtual machines on
the system. (See Domain 0 to Domain U Communication for more details).

Libxenctrl
Libxenctrl is a C library that provides Xend the ability to talk with the Xen hypervisor via
Domain 0. A special driver within Domain 0, privcmd delivers the request to the
hypervisor.


Xen Architecture Overview                                                                  6
Xend


     Domain 0                      Libxenctrl




     privcmd




                                        Xen Hypervisor




Qemu-dm
Every HVM Guest running on a Xen environment requires its own Qemu daemon. This
tool handles all networking and disk requests from the Domain U HVM Guest to allow
for a fully virtualized machine in the Xen environment. Qemu must exist outside the Xen
hypervisor due to its need for access to networking and I/O and is therefore found in
Domain 0.

A new tool, Stub-dm, is in development for future versions of Xen that will remove the
need for a Qemu running for every Domain U HVM Guest and will instead provide a set
of services available to every Domain U HVM Guest. This feature is not available in Xen
3.2 but is currently part of the xen-unstable tree and will be released as part of Xen 3.3.

Xen Virtual Firmware
The Xen Virtual Firmware is a virtual BIOS that is inserted into every Domain U HVM
Guest to ensure that the operating system receives all the standard start-up instructions it
expects during normal boot-up providing a standard PC-compatible software
environment.

Xen Operation
This section demonstrates how a paravirtualized Domain U is able to communicate with
external networks or storage via the Xen hypervisor and Domain 0.




Xen Architecture Overview                                                                      7
Domain 0 to Domain U Communication
As stated earlier, the Xen hypervisor is not written to support network or disk requests
thus a Domain U PV Guest must communicate via the Xen hypervisor with the Domain 0
to accomplish a network or disk request. The example presented below shows a Domain
U PV Guest writing data to the local hard disk.

The Domain U PV Guest PV block driver receives a request to write to the local disk and
writes the data via the Xen hypervisor to the appropriate local memory which is shared
with Domain 0. An event channel exists between Domain 0 and the Domain U PV Guest
that allows them to communicate via asynchronous inter-domain interrupts in the Xen
hypervisor. Domain 0 will receive an interrupt from the Xen hypervisor causing the PV
Block Backend Driver to access the local system memory reading the appropriate blocks
from the Domain U PV Guest shared memory. The data from shared memory is then
written to the local hard disk at a specific location.

The event channel is shown below as a direct link between Domain 0 and Domain U PV
Guest which is a simplified view of the way the system works. In fact, the event channel
runs through the Xen hypervisor with specific interrupts registered in Xenstored allowing
both the Domain 0 and Domain U PV Guest to quickly share information across local
memory.

The figure below shows the previously described situation:



         Domain 0                                                       Domain U
                                                                        PV Guest

                                      Event Channel

         PV Block
         Backend                                                         PV Block
          Driver                                                          Driver



                                       Xen Hypervisor


                                      Shared Memory
                                        Data Dom U
                                        Data Dom U




Xen Architecture Overview                                                               8
Glossary
C: http://www.cprogramming.com/; a computer programming language

Daemons: http://en.wikipedia.org/wiki/Daemon_(computer_software); a program
running in the background rather than under direct control of a user

Driver: http://en.wikipedia.org/wiki/Device_driver; program allowing software to
interact with hardware

Full Virtualization: http://en.wikipedia.org/wiki/Full_virtualization; a virtual machine not
aware of its virtualization

Interrupt: http://en.wikipedia.org/wiki/Interrupt; signal from hardware to software
requesting a specific action in software

Kernel: http://en.wikipedia.org/wiki/Linux_kernel; the central component of a computer
operating system

Paravirtualized: http://en.wikipedia.org/wiki/Paravirtualization; virtual machine running
on a hypervisor that is aware of it being virtualized]

Python: http://www.python.org/; a dynamic object oriented programming language

ROM BIOS: http://en.wikipedia.org/wiki/BIOS; software instructions run on a machine
when turned on

XML PRC: http://www.xmlrpc.com/; method for an application to leverage another
application using HTTP for the remote procedure call and XML as the encoding




Xen Architecture Overview                                                                  9

More Related Content

What's hot

ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedStefano Stabellini
 
Architecture Of The Linux Kernel
Architecture Of The Linux KernelArchitecture Of The Linux Kernel
Architecture Of The Linux Kernelguest547d74
 
Android's Multimedia Framework
Android's Multimedia FrameworkAndroid's Multimedia Framework
Android's Multimedia FrameworkOpersys inc.
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...The Linux Foundation
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMThe Linux Foundation
 
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsXen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsStefano Stabellini
 
Android's HIDL: Treble in the HAL
Android's HIDL: Treble in the HALAndroid's HIDL: Treble in the HAL
Android's HIDL: Treble in the HALOpersys inc.
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Stefano Stabellini
 
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...The Linux Foundation
 
2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov UpdateThe Linux Foundation
 
Linux Kernel Image
Linux Kernel ImageLinux Kernel Image
Linux Kernel Image艾鍗科技
 
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022Stefano Stabellini
 
PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation
PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation
PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation Manish Jaggi
 
Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?Opersys inc.
 
Embedded Linux Quick Start Guide v1.5
Embedded Linux Quick Start Guide v1.5Embedded Linux Quick Start Guide v1.5
Embedded Linux Quick Start Guide v1.5Chris Simmonds
 

What's hot (20)

ELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for EmbeddedELC21: VM-to-VM Communication Mechanisms for Embedded
ELC21: VM-to-VM Communication Mechanisms for Embedded
 
Architecture Of The Linux Kernel
Architecture Of The Linux KernelArchitecture Of The Linux Kernel
Architecture Of The Linux Kernel
 
Audio Drivers
Audio DriversAudio Drivers
Audio Drivers
 
Android's Multimedia Framework
Android's Multimedia FrameworkAndroid's Multimedia Framework
Android's Multimedia Framework
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
 
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARMXPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
XPDS16: Porting Xen on ARM to a new SOC - Julien Grall, ARM
 
Xen Memory Management
Xen Memory ManagementXen Memory Management
Xen Memory Management
 
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systemsXen on ARM for embedded and IoT: from secure containers to dom0less systems
Xen on ARM for embedded and IoT: from secure containers to dom0less systems
 
Android's HIDL: Treble in the HAL
Android's HIDL: Treble in the HALAndroid's HIDL: Treble in the HAL
Android's HIDL: Treble in the HAL
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022
 
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
 
Android Audio System
Android Audio SystemAndroid Audio System
Android Audio System
 
2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update2018 Genivi Xen Overview Nov Update
2018 Genivi Xen Overview Nov Update
 
Linux Kernel Image
Linux Kernel ImageLinux Kernel Image
Linux Kernel Image
 
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
 
Embedded Android : System Development - Part II (HAL)
Embedded Android : System Development - Part II (HAL)Embedded Android : System Development - Part II (HAL)
Embedded Android : System Development - Part II (HAL)
 
PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation
PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation
PCI Passthrough and ITS Support in Xen / ARM :Xen Dev Summit 2015 Presentation
 
Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?Android Treble: Blessing or Trouble?
Android Treble: Blessing or Trouble?
 
Embedded Linux Quick Start Guide v1.5
Embedded Linux Quick Start Guide v1.5Embedded Linux Quick Start Guide v1.5
Embedded Linux Quick Start Guide v1.5
 
Xen Hypervisor
Xen HypervisorXen Hypervisor
Xen Hypervisor
 

Similar to Xen architecture q1 2008

Xen & the Art of Virtualization
Xen & the Art of VirtualizationXen & the Art of Virtualization
Xen & the Art of VirtualizationTareque Hossain
 
Open source hypervisors in cloud
Open source hypervisors in cloudOpen source hypervisors in cloud
Open source hypervisors in cloudChetna Purohit
 
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...The Linux Foundation
 
Automated paravitualization of device drivers in xen
Automated paravitualization of device drivers in xenAutomated paravitualization of device drivers in xen
Automated paravitualization of device drivers in xenMPNIKHIL
 
Xen Project Update LinuxCon Brazil
Xen Project Update LinuxCon BrazilXen Project Update LinuxCon Brazil
Xen Project Update LinuxCon BrazilThe Linux Foundation
 
Xen and Client Virtualization: the case of XenClient XT
Xen and Client Virtualization: the case of XenClient XTXen and Client Virtualization: the case of XenClient XT
Xen and Client Virtualization: the case of XenClient XTThe Linux Foundation
 
Xen Hypervisor.pptx
Xen Hypervisor.pptxXen Hypervisor.pptx
Xen Hypervisor.pptxRiyaBatool
 
XenServer, Hyper-V, and ESXi - Architecture, API, and Coding
XenServer, Hyper-V, and ESXi -  Architecture, API, and CodingXenServer, Hyper-V, and ESXi -  Architecture, API, and Coding
XenServer, Hyper-V, and ESXi - Architecture, API, and Coding_Humair_Ahmed_
 
Linuxcon EU : Virtualization in the Cloud featuring Xen and XCP
Linuxcon EU : Virtualization in the Cloud featuring Xen and XCPLinuxcon EU : Virtualization in the Cloud featuring Xen and XCP
Linuxcon EU : Virtualization in the Cloud featuring Xen and XCPThe Linux Foundation
 
LinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xenLinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xenThe Linux Foundation
 
Linaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMLinaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMThe Linux Foundation
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD Editor
 
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCPOscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCPThe Linux Foundation
 
LinuxTag13: 10 years of Xen and beyond
LinuxTag13: 10 years of Xen and beyondLinuxTag13: 10 years of Xen and beyond
LinuxTag13: 10 years of Xen and beyondThe Linux Foundation
 
Mobile Virtualization using the Xen Technologies
Mobile Virtualization using the Xen TechnologiesMobile Virtualization using the Xen Technologies
Mobile Virtualization using the Xen TechnologiesThe Linux Foundation
 
A510840101 24982 23_2020_lecture_2
A510840101 24982 23_2020_lecture_2A510840101 24982 23_2020_lecture_2
A510840101 24982 23_2020_lecture_2Krishna Kumar Singh
 

Similar to Xen architecture q1 2008 (20)

Xen & the Art of Virtualization
Xen & the Art of VirtualizationXen & the Art of Virtualization
Xen & the Art of Virtualization
 
Open source hypervisors in cloud
Open source hypervisors in cloudOpen source hypervisors in cloud
Open source hypervisors in cloud
 
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
XPDDS19: The Xen-Blanket for 2019 - Christopher Clark and Kelli Little, Star ...
 
Automated paravitualization of device drivers in xen
Automated paravitualization of device drivers in xenAutomated paravitualization of device drivers in xen
Automated paravitualization of device drivers in xen
 
Xen Project Update LinuxCon Brazil
Xen Project Update LinuxCon BrazilXen Project Update LinuxCon Brazil
Xen Project Update LinuxCon Brazil
 
Xen and Client Virtualization: the case of XenClient XT
Xen and Client Virtualization: the case of XenClient XTXen and Client Virtualization: the case of XenClient XT
Xen and Client Virtualization: the case of XenClient XT
 
Xen & virtualization
Xen & virtualizationXen & virtualization
Xen & virtualization
 
Virtual Machine
Virtual MachineVirtual Machine
Virtual Machine
 
Xen Hypervisor.pptx
Xen Hypervisor.pptxXen Hypervisor.pptx
Xen Hypervisor.pptx
 
XenServer, Hyper-V, and ESXi - Architecture, API, and Coding
XenServer, Hyper-V, and ESXi -  Architecture, API, and CodingXenServer, Hyper-V, and ESXi -  Architecture, API, and Coding
XenServer, Hyper-V, and ESXi - Architecture, API, and Coding
 
Linuxcon EU : Virtualization in the Cloud featuring Xen and XCP
Linuxcon EU : Virtualization in the Cloud featuring Xen and XCPLinuxcon EU : Virtualization in the Cloud featuring Xen and XCP
Linuxcon EU : Virtualization in the Cloud featuring Xen and XCP
 
LinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xenLinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xen
 
Linaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARMLinaro connect : Introduction to Xen on ARM
Linaro connect : Introduction to Xen on ARM
 
2010 xen-lisa
2010 xen-lisa2010 xen-lisa
2010 xen-lisa
 
xen.pptx
xen.pptxxen.pptx
xen.pptx
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
 
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCPOscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
 
LinuxTag13: 10 years of Xen and beyond
LinuxTag13: 10 years of Xen and beyondLinuxTag13: 10 years of Xen and beyond
LinuxTag13: 10 years of Xen and beyond
 
Mobile Virtualization using the Xen Technologies
Mobile Virtualization using the Xen TechnologiesMobile Virtualization using the Xen Technologies
Mobile Virtualization using the Xen Technologies
 
A510840101 24982 23_2020_lecture_2
A510840101 24982 23_2020_lecture_2A510840101 24982 23_2020_lecture_2
A510840101 24982 23_2020_lecture_2
 

Recently uploaded

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701bronxfugly43
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesShubhangi Sonawane
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Shubhangi Sonawane
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 

Recently uploaded (20)

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 

Xen architecture q1 2008

  • 1. Xen Architecture Overview Date: February 13, 2008 Version: 1.2
  • 2. Table of Contents Executive Summary ............................................................................................................ 3 Xen Components ................................................................................................................. 3 Xen Hypervisor ............................................................................................................... 3 Domain 0 ......................................................................................................................... 4 Domain U ........................................................................................................................ 4 Domain Management and Control .................................................................................. 6 Xend ............................................................................................................................ 6 Xm............................................................................................................................... 6 Xenstored .................................................................................................................... 6 Libxenctrl .................................................................................................................... 6 Qemu-dm .................................................................................................................... 7 Xen Virtual Firmware ................................................................................................. 7 Xen Operation ..................................................................................................................... 7 Domain 0 to Domain U Communication ........................................................................ 8 Glossary .............................................................................................................................. 9 Xen Architecture Overview 2
  • 3. Executive Summary This document contains a high level architectural overview of the Xen hypervisor and the associated tools and applications necessary to support a complete virtualization environment. The architecture is based on Xen 3.2 released in late January 2008 and is only an introduction to the overall Xen architecture. For a more complete description of the architecture please reference the many Xen books available. Xen Components A Xen virtual environment consist of several items that work together to deliver the virtualization environment a customer is looking to deploy: Xen Hypervisor Domain 0 Domain Management and Control (Xen DM&C) Domain U (Dom U) PV Guest Domain U (Dom U) HVM Guest The diagram below shows the basic organization of these components. Domain 0 DOM U DOM U Xen DM&C PV Guest HVM Guest Xen Hypervisor Xen Hypervisor The Xen hypervisor is the basic abstraction layer of software that sits directly on the hardware below any operating systems. It is responsible for CPU scheduling and memory partitioning of the various virtual machines running on the hardware device. The hypervisor not only abstracts the hardware for the virtual machines but also controls the execution of virtual machines as they share the common processing environment. It has Xen Architecture Overview 3
  • 4. no knowledge of networking, external storage devices, video, or any other common I/O functions found on a computing system. Domain 0 Domain 0, a modified Linux kernel, is a unique virtual machine running on the Xen hypervisor that has special rights to access physical I/O resources as well as interact with the other virtual machines (Domain U: PV and HVM Guests) running on the system. All Xen virtualization environments require Domain 0 to be running before any other virtual machines can be started. Two drivers are included in Domain 0 to support network and local disk requests from Domain U PV and HVM Guests (see below); the Network Backend Driver and the Block Backend Driver. The Network Backend Driver communicates directly with the local networking hardware to process all virtual machines requests coming from the Domain U guests. The Block Backend Driver communicates with the local storage disk to read and write data from the drive based upon Domain U requests. Domain 0 PV Drivers: Network Backend Driver Block Backend Driver Domain U All paravirtualized virtual machines running on a Xen hypervisor are referred to as Domain U PV Guests and are run modified Linux operating systems, Solaris, FreeBSD, and other UNIX operating systems. All fully virtualized machines running on a Xen hypervisor are referred to as Domain U HVM Guests and run on standard Windows or any other unchanged operating system. The Domain U PV Guest virtual machine is aware that it does not have direct access to the hardware and recognizes that other virtual machines are running on the same machine. The Domain U HVM Guest virtual machine is not aware that it is sharing processing time on the hardware and that other virtual machines are present. Xen Architecture Overview 4
  • 5. A Domain U PV Guest contains two drivers for network and disk access, PV Network Driver and PV Block Driver. Domain U PV Guest PV Drivers: Network Driver Block Driver A Domain U HVM Guest does not have the PV drivers located within the virtual machine; instead a special daemon is started for each HVM Guest in Domain 0, Qemu- dm. Qemu-dm supports the Domain U HVM Guest for networking and disk access requests. The Domain U HVM Guest must initialize as it would on a typical machine so software is added to the Domain U HVM Guest, Xen virtual firmware, to simulate the BIOS an operating system would expect on startup. More information on the Xen virtual firmware is presented later in this document. Domain 0 Domain U HVM Guest Qemu-DM Xen virtual firmware Xen Architecture Overview 5
  • 6. Domain Management and Control A series of Linux daemons are classified as Domain Management and Control by the open source community. These services support the overall management and control of the virtualization environment and exist within the Domain 0 virtual machine. The diagrams below show the daemons outside the Domain 0 diagram for a clearer understanding of the architecture. Xend The Xend daemon is a python application that is considered the system manager for the Xen environment. It leverages the libxenctrl library (see below) to make requests of the Xen hypervisor. All requests processed by the Xend are delivered to it via an XML RPC interface by the Xm (see below) tool. XML RPC Xend XM Libxenctrl Domain 0 Xen Hypervisor Xm The command line tool that takes user input and passes to Xend via XML RPC. Xenstored The Xenstored daemon maintains a registry of information including memory and event channel links between Domain 0 and all other Domain U Guests. The Domain 0 virtual machine leverages this registry to setup device channels with other virtual machines on the system. (See Domain 0 to Domain U Communication for more details). Libxenctrl Libxenctrl is a C library that provides Xend the ability to talk with the Xen hypervisor via Domain 0. A special driver within Domain 0, privcmd delivers the request to the hypervisor. Xen Architecture Overview 6
  • 7. Xend Domain 0 Libxenctrl privcmd Xen Hypervisor Qemu-dm Every HVM Guest running on a Xen environment requires its own Qemu daemon. This tool handles all networking and disk requests from the Domain U HVM Guest to allow for a fully virtualized machine in the Xen environment. Qemu must exist outside the Xen hypervisor due to its need for access to networking and I/O and is therefore found in Domain 0. A new tool, Stub-dm, is in development for future versions of Xen that will remove the need for a Qemu running for every Domain U HVM Guest and will instead provide a set of services available to every Domain U HVM Guest. This feature is not available in Xen 3.2 but is currently part of the xen-unstable tree and will be released as part of Xen 3.3. Xen Virtual Firmware The Xen Virtual Firmware is a virtual BIOS that is inserted into every Domain U HVM Guest to ensure that the operating system receives all the standard start-up instructions it expects during normal boot-up providing a standard PC-compatible software environment. Xen Operation This section demonstrates how a paravirtualized Domain U is able to communicate with external networks or storage via the Xen hypervisor and Domain 0. Xen Architecture Overview 7
  • 8. Domain 0 to Domain U Communication As stated earlier, the Xen hypervisor is not written to support network or disk requests thus a Domain U PV Guest must communicate via the Xen hypervisor with the Domain 0 to accomplish a network or disk request. The example presented below shows a Domain U PV Guest writing data to the local hard disk. The Domain U PV Guest PV block driver receives a request to write to the local disk and writes the data via the Xen hypervisor to the appropriate local memory which is shared with Domain 0. An event channel exists between Domain 0 and the Domain U PV Guest that allows them to communicate via asynchronous inter-domain interrupts in the Xen hypervisor. Domain 0 will receive an interrupt from the Xen hypervisor causing the PV Block Backend Driver to access the local system memory reading the appropriate blocks from the Domain U PV Guest shared memory. The data from shared memory is then written to the local hard disk at a specific location. The event channel is shown below as a direct link between Domain 0 and Domain U PV Guest which is a simplified view of the way the system works. In fact, the event channel runs through the Xen hypervisor with specific interrupts registered in Xenstored allowing both the Domain 0 and Domain U PV Guest to quickly share information across local memory. The figure below shows the previously described situation: Domain 0 Domain U PV Guest Event Channel PV Block Backend PV Block Driver Driver Xen Hypervisor Shared Memory Data Dom U Data Dom U Xen Architecture Overview 8
  • 9. Glossary C: http://www.cprogramming.com/; a computer programming language Daemons: http://en.wikipedia.org/wiki/Daemon_(computer_software); a program running in the background rather than under direct control of a user Driver: http://en.wikipedia.org/wiki/Device_driver; program allowing software to interact with hardware Full Virtualization: http://en.wikipedia.org/wiki/Full_virtualization; a virtual machine not aware of its virtualization Interrupt: http://en.wikipedia.org/wiki/Interrupt; signal from hardware to software requesting a specific action in software Kernel: http://en.wikipedia.org/wiki/Linux_kernel; the central component of a computer operating system Paravirtualized: http://en.wikipedia.org/wiki/Paravirtualization; virtual machine running on a hypervisor that is aware of it being virtualized] Python: http://www.python.org/; a dynamic object oriented programming language ROM BIOS: http://en.wikipedia.org/wiki/BIOS; software instructions run on a machine when turned on XML PRC: http://www.xmlrpc.com/; method for an application to leverage another application using HTTP for the remote procedure call and XML as the encoding Xen Architecture Overview 9