XenTerminology

From Xen
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


Icon todo.png Needs Refactor

Defines key terminology, a little old, could split into glossary items or be part of some Xen overview guide


Xen Terminology

To add a definition, please provide a 1- or 2-line explanation, followed by a link to more details (other wiki pages, external web pages, etc) when available.

Basics

  • guest operating system: An operating system that can run within the Xen environment.
  • hypervisor: Code running at a higher privilege level than the supervisor code of its guest operating systems.
  • virtual machine monitor ("vmm"): In this context, the hypervisor.
  • domain: A running virtual machine within which a guest OS executes.
  • domain0 ("dom0"): The first domain, automatically started at boot time. Dom0 has permission to control all hardware on the system, and is used to manage the hypervisor and the other domains.
  • unprivileged domain ("domU"): A domain with no special hardware access.
  • hypercall: a syscall what a hypervisor is to an OS

Approaches to Virtualization

  • full virtualization: An approach to virtualization which requires no modifications to the hosted operating system, providing the illusion of a complete system of real hardware devices.
  • paravirtualization: An approach to virtualization which requires modifications to the operating system in order to run in a virtual machine. Xen uses paravirtualization but preserves binary compatibility for user space applications.

Address Spaces

  • MFN (machine frame number): Real host machine address; the addresses the processor understands.
  • GPFN (guest pseudo-physical frame number): Guests run in an illusory contiguous physical address space, which is probably not contiguous in the machine address space.
  • GMFN (guest machine frame number): Equivalent to GPFN for an auto-translated guest, and equivalent to MFN for normal paravirtualised guests. It represents what the guest thinks are MFNs.
  • PFN (physical frame number): A catch-all for any kind of frame number. "Physical" here can mean guest-physical, machine-physical or guest-machine-physical.

Page Tables

  • l4 table: Define me.
  • l3 table: Define me.
  • l2 table: Define me.
  • l1 table: Define me.
  • SPT (shadow page table): shadow version of a guest OSes page table. Useful for numerous things, for instance in tracking dirty pages during live migration.
  • PAE: Intel's Physical Addressing Extensions, which enable x86/32 machines to address up to 64 GB of physical memory.
  • PSE (page size extension): used as a flag to indicate that a given page is ahuge/super page (2/4 MB instead of 4KB).

Shadow Page Table Modes

  • external: Define me.
  • translate: Define me.

x86 Architecture

  • HVM: Hardware Virtual Machine, which is the full-virtualization mode supported by Xen. This mode requires hardware support, e.g. Intel's Virtualization Technology (VT) and AMD's Pacifica technology.
  • SVM: full-virtualization support on AMD's Pacifica-enabled processors
  • VT-x: full-virtualization support on Intel's x86 VT-enabled processors
  • VT-i: full-virtualization support on Intel's IA-64 VT-enabled processors
  • shadow mode: Define me.
  • writable page tables: Define me.

Networking Infrastructure

  • backend: one half of a communication end point - interdomain communication is implemented using a frontend and backend device model interacting via event channels.
  • frontend: the device as presented to the guest; other half of the communication endpoint.
  • vif: virtual interface; the name of the network backend device connected by an event channel to a network front end on the guest.
  • event channel: Define me.
  • vethN: local networking front end on dom0; renamed to ethN by xen network scripts in bridging mode (FIXME)
  • pethN: real physical device (after renaming)

Migration

  • Live migration: A technique for moving a running virtual machine to another physical host, without stopping it or the services running on it.

Scheduling

  • BVT: The Borrowed Virtual Time scheduler is used to give proportional fair shares of the CPU to domains.
  • SEDF: The Simple Earliest Deadline First scheduler provides weighted CPU sharing in an intuitive way and uses realtime algorithms to ensure time guarantees.