VMM(4) | Device Drivers Manual (amd64) | VMM(4) |
vmm
— virtual
machine monitor
vmm0 at mainbus0
#include
<machine/vmmvar.h>
The vmm
driver implements a virtual
machine monitor (VMM) suitable for executing
virtual
machines (VMs). A VMM runs on the
host
operating system and provides facilities to execute one or more VMs, each of
which is provided with a suitable complement of virtual hardware.
These VMs run independently of the host, but may interact with it as any other machine would (e.g. via network communications or other means).
VMs are allocated hardware resources by the VMM during creation, including:
Although VMs execute independently of each other and the host, they do consume host resources and, as such, the number of VMs (and their configurations) should be taken into consideration when planning host capacity.
The vmm
driver requires suitable host CPU
capabilities in order to provide VM services. The
vmm
driver requires at least one CPU with
hardware-assisted virtualization capabilities and nested or extended paging
capabilities to be present on the host. For more information, consult the
CPU vendor's documentation.
The following
ioctl(2) commands are provided
for managing vmm
guests:
VMM_IOC_CREATE
struct vm_create_params *vmm
if not yet started.
(Does not start the VCPU.)VMM_IOC_RUN
struct vm_run_params *VMM_IOC_INFO
struct vm_info_params *vmm
.VMM_IOC_TERM
struct vm_terminate_params *VMM_IOC_RESETCPU
struct vm_resetcpu_params *VMM_IOC_INTR
struct vm_intr_params *VMM_IOC_READREGS
struct vm_rwregs_params *VMM_IOC_WRITEREGS
struct vm_rwregs_params *VMM_IOC_READVMPARAMS
struct vm_revmparams_params *VMM_IOC_WRITEVMPARAMS
struct vm_rwvmparams_params *VMM_IOC_MPROTECT_EPT
struct vm_mprotect_ept_params *The vmm
driver appeared in
OpenBSD 5.9.
Mike Larkin <mlarkin@openbsd.org>
April 2, 2021 | OpenBSD-7.0 |