diff options
Diffstat (limited to 'static/freebsd/man4/xen.4 3.html')
| -rw-r--r-- | static/freebsd/man4/xen.4 3.html | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/static/freebsd/man4/xen.4 3.html b/static/freebsd/man4/xen.4 3.html new file mode 100644 index 00000000..9c05924e --- /dev/null +++ b/static/freebsd/man4/xen.4 3.html @@ -0,0 +1,126 @@ +<table class="head"> + <tr> + <td class="head-ltitle">XEN(4)</td> + <td class="head-vol">Device Drivers Manual</td> + <td class="head-rtitle">XEN(4)</td> + </tr> +</table> +<div class="manual-text"> +<section class="Sh"> +<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1> +<p class="Pp"><code class="Nm">xen</code> — <span class="Nd">Xen + Hypervisor Support</span></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1> +<p class="Pp">FreeBSD supports running both as a Xen guest and host on amd64 + hardware. Guest support is limited to HVM and PVH modes, while host support + is limited to PVH mode only.</p> +<p class="Pp">Xen support is built by default in the i386 and amd64 GENERIC + kernels; note however that host mode is only available on amd64.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> +<p class="Pp">The Xen Hypervisor allows multiple virtual machines to be run on a + single computer system. When first released, Xen required that i386 kernels + be compiled "para-virtualized" as the x86 instruction set was not + fully virtualizable. Primarily, para-virtualization modifies the virtual + memory system to use hypervisor calls (hypercalls) rather than direct + 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.</p> +<p class="Pp">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 + virtualization (HVM and PVH). HVM configurations may either rely on + transparently emulated hardware peripherals, or para-virtualized drivers, + which are aware of virtualization, and hence able to optimize certain + behaviors to improve performance or semantics. PVH configurations rely on + para-virtualized drivers exclusively for IO.</p> +<p class="Pp"><span class="Ux">FreeBSD</span> Para-virtualized device drivers + are required in order to support certain functionality, such as processing + management requests, returning idle physical memory pages to the hypervisor, + etc.</p> +<section class="Ss"> +<h2 class="Ss" id="Xen_device_drivers"><a class="permalink" href="#Xen_device_drivers">Xen + device drivers</a></h2> +<p class="Pp">These para-virtualized drivers are supported:</p> +<dl class="Bl-hang Bd-indent"> + <dt><code class="Nm">balloon</code></dt> + <dd>Allow physical memory pages to be returned to the hypervisor as a result + of manual tuning or automatic policy.</dd> + <dt><code class="Nm">blkback</code></dt> + <dd>Exports local block devices or files to other Xen domains where they can + then be imported via <code class="Nm">blkfront</code>.</dd> + <dt><code class="Nm">blkfront</code></dt> + <dd>Import block devices from other Xen domains as local block devices, to be + used for file systems, swap, etc.</dd> + <dt><code class="Nm">console</code></dt> + <dd>Export the low-level system console via the Xen console service.</dd> + <dt><code class="Nm">control</code></dt> + <dd>Process management operations from Domain 0, including power off, reboot, + suspend, crash, and halt requests.</dd> + <dt><code class="Nm">evtchn</code></dt> + <dd>Expose Xen events via the <span class="Pa">/dev/xen/evtchn</span> special + device.</dd> + <dt><code class="Nm">gntdev</code></dt> + <dd>Allow access to the grant table interface via the + <span class="Pa">/dev/xen/gntdev</span> special device.</dd> + <dt><code class="Nm">netback</code></dt> + <dd>Export local network interfaces to other Xen domains where they can be + imported via <code class="Nm">netfront</code>.</dd> + <dt><code class="Nm">netfront</code></dt> + <dd>Import network interfaces from other Xen domains as local network + interfaces, which may be used for IPv4, IPv6, etc.</dd> + <dt><code class="Nm">privcmd</code></dt> + <dd>Allow issuing hypercalls via the <span class="Pa">/dev/xen/privcmd</span> + special device.</dd> + <dt><code class="Nm">timer</code></dt> + <dd>Implementation of a one-shot high resolution per-CPU timer using the + hypercall interface.</dd> + <dt><code class="Nm">acpi cpu</code></dt> + <dd>When running as a host forwards power management related information from + ACPI to the hypervisor for better performance management.</dd> + <dt><code class="Nm">xenpci</code></dt> + <dd>Represents the Xen PCI device, an emulated PCI device that is exposed to + HVM domains. This device allows detection of the Xen hypervisor, and + provides interrupt and shared memory services required to interact with + the hypervisor.</dd> + <dt><code class="Nm">xenstore</code></dt> + <dd>Information storage space shared between domains.</dd> +</dl> +</section> +</section> +<section class="Sh"> +<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1> +<p class="Pp">Support for <code class="Nm">xen</code> first appeared in + <span class="Ux">FreeBSD 8.1</span>. Support for host mode was added in 11.0 + .</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1> +<p class="Pp"><span class="Ux">FreeBSD</span> support for Xen was first added by + <span class="An">Kip Macy</span> + <<a class="Mt" href="mailto:kmacy@FreeBSD.org">kmacy@FreeBSD.org</a>> + and <span class="An">Doug Rabson</span> + <<a class="Mt" href="mailto:dfr@FreeBSD.org">dfr@FreeBSD.org</a>>. + Further refinements were made by <span class="An">Justin Gibbs</span> + <<a class="Mt" href="mailto:gibbs@FreeBSD.org">gibbs@FreeBSD.org</a>>, + <span class="An">Adrian Chadd</span> + <<a class="Mt" href="mailto:adrian@FreeBSD.org">adrian@FreeBSD.org</a>>, + <span class="An">Colin Percival</span> + <<a class="Mt" href="mailto:cperciva@FreeBSD.org">cperciva@FreeBSD.org</a>>, + and <span class="An">Roger Pau Monné</span> + <<a class="Mt" href="mailto:royger@FreeBSD.org">royger@FreeBSD.org</a>>. + This manual page was written by <span class="An">Robert Watson</span> + <<a class="Mt" href="mailto:rwatson@FreeBSD.org">rwatson@FreeBSD.org</a>>, + and <span class="An">Roger Pau Monné</span> + <<a class="Mt" href="mailto:royger@FreeBSD.org">royger@FreeBSD.org</a>>.</p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">January 8, 2024</td> + <td class="foot-os">FreeBSD 15.0</td> + </tr> +</table> |
