FreeBSD Manual Pages
XEN(4) Kernel Interfaces Manual XEN(4) NAME xen -- Xen Hypervisor Support SYNOPSIS FreeBSD supports running both as a Xen guest and host on amd64 hard- ware. Guest support is limited to HVM and PVH modes, while host sup- port is limited to PVH mode only. Xen support is built by default in the i386 and amd64 GENERIC kernels; note however that host mode is only available on amd64. DESCRIPTION The Xen Hypervisor allows multiple virtual machines to be run on a sin- gle computer system. When first released, Xen required that i386 ker- nels be compiled "para-virtualized" as the x86 instruction set was not fully virtualizable. Primarily, para-virtualization modifies the vir- tual memory system to use hypervisor calls (hypercalls) rather than di- rect hardware instructions to modify the TLB, although para-virtualized device drivers were also required to access resources such as virtual network interfaces and disk devices. With later instruction set extensions from AMD and Intel to support fully virtualizable instructions, unmodified virtual memory systems can also be supported; this is referred to as hardware-assisted virtualiza- tion (HVM and PVH). HVM configurations may either rely on transpar- ently emulated hardware peripherals, or para-virtualized drivers, which are aware of virtualization, and hence able to optimize certain behav- iors to improve performance or semantics. PVH configurations rely on para-virtualized drivers exclusively for IO. FreeBSD Para-virtualized device drivers are required in order to sup- port certain functionality, such as processing management requests, re- turning idle physical memory pages to the hypervisor, etc. Xen device drivers These para-virtualized drivers are supported: balloon Allow physical memory pages to be returned to the hy- pervisor as a result of manual tuning or automatic pol- icy. blkback Exports local block devices or files to other Xen do- mains where they can then be imported via blkfront. blkfront Import block devices from other Xen domains as local block devices, to be used for file systems, swap, etc. console Export the low-level system console via the Xen console service. control Process management operations from Domain 0, including power off, reboot, suspend, crash, and halt requests. evtchn Expose Xen events via the /dev/xen/evtchn special de- vice. gntdev Allow access to the grant table interface via the /dev/xen/gntdev special device. netback Export local network interfaces to other Xen domains where they can be imported via netfront. netfront Import network interfaces from other Xen domains as lo- cal network interfaces, which may be used for IPv4, IPv6, etc. privcmd Allow issuing hypercalls via the /dev/xen/privcmd spe- cial device. timer Implementation of a one-shot high resolution per-CPU timer using the hypercall interface. acpi cpu When running as a host forwards power management re- lated information from ACPI to the hypervisor for bet- ter performance management. xenpci Represents the Xen PCI device, an emulated PCI device that is exposed to HVM domains. This device allows de- tection of the Xen hypervisor, and provides interrupt and shared memory services required to interact with the hypervisor. xenstore Information storage space shared between domains. HISTORY Support for xen first appeared in FreeBSD 8.1. Support for host mode was added in 11.0 . AUTHORS FreeBSD support for Xen was first added by Kip Macy <kmacy@FreeBSD.org> and Doug Rabson <dfr@FreeBSD.org>. Further refinements were made by Justin Gibbs <gibbs@FreeBSD.org>, Adrian Chadd <adrian@FreeBSD.org>, Colin Percival <cperciva@FreeBSD.org>, and Roger Pau Monn <royger@FreeBSD.org>. This manual page was written by Robert Watson <rwatson@FreeBSD.org>, and Roger Pau Monn <royger@FreeBSD.org>. FreeBSD 14.3 January 8, 2024 XEN(4)
NAME | SYNOPSIS | DESCRIPTION | HISTORY | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xen&sektion=4&manpath=FreeBSD+14.3-RELEASE+and+Ports>