Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XEN(4)			    Kernel Interfaces Manual			XEN(4)

NAME
       xen -- Xen Hypervisor Guest (DomU) Support

SYNOPSIS
       To  compile  hardware-assisted  virtualization  (HVM) Xen guest support
       with para-virtualized drivers into an amd64 or i386 kernel,  place  the
       following lines in your kernel configuration file:

	     options XENHVM
	     device xenpci

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).  HVM	configurations may either rely on  transparently  emu-
       lated  hardware	peripherals,  or  para-virtualized  drivers, which are
       aware of	virtualization,	and hence able to optimize  certain  behaviors
       to improve performance or semantics.

       FreeBSD	supports  hardware-assisted  virtualization (HVM) on both i386
       and amd64 kernels.

       Para-virtualized	device drivers are required in order to	 support  cer-
       tain  functionality,  such as processing	management requests, returning
       idle physical memory pages to the hypervisor, etc.

   Xen DomU 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.

	     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.

	     pcifront  Allow  physical PCI devices to be passed	through	into a
		       PV domain.

	     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.

   Performance considerations
       In  general, PV drivers will perform better than	emulated hardware, and
       are the recommended configuration for HVM installations.

       Using a hypervisor introduces a second layer  of	 scheduling  that  may
       limit  the  effectiveness  of certain FreeBSD scheduling	optimisations.
       Among these is adaptive locking,	which is no longer able	 to  determine
       whether	a  thread  holding  a lock is in execution.  It	is recommended
       that adaptive locking be	disabled when using Xen:

	     options NO_ADAPTIVE_MUTEXES
	     options NO_ADAPTIVE_RWLOCKS
	     options NO_ADAPTIVE_SX

HISTORY
       Support for xen first appeared in FreeBSD 8.1.

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>,
       and Colin Percival <cperciva@FreeBSD.org>.  This	manual page was	 writ-
       ten by Robert Watson <rwatson@FreeBSD.org>.

BUGS
       FreeBSD is only able to run as a	Xen guest (DomU) and not as a Xen host
       (Dom0).

       As  of  this release, Xen PV DomU support is not	heavily	tested;	insta-
       bility has been reported	during VM migration of PV kernels.

       Certain PV driver features, such	as the balloon driver, are under-exer-
       cised.

FreeBSD	13.2			April 30, 2015				XEN(4)

NAME | SYNOPSIS | DESCRIPTION | HISTORY | AUTHORS | BUGS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xen&sektion=4&manpath=FreeBSD+14.0-RELEASE+and+Ports>

home | help