xref: /freebsd/usr.sbin/bhyve/bhyve.8 (revision d8462732ce74ccaf077dac625168cfa75f4a3b7e)
1.\" Copyright (c) 2013 Peter Grehan
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD$
26.\"
27.Dd December 8, 2020
28.Dt BHYVE 8
29.Os
30.Sh NAME
31.Nm bhyve
32.Nd "run a guest operating system inside a virtual machine"
33.Sh SYNOPSIS
34.Nm
35.Op Fl AabCDeHhPSuWwxY
36.Oo
37.Sm off
38.Fl c\~
39.Oo
40.Op Cm cpus=
41.Ar numcpus
42.Oc
43.Op Cm ,sockets= Ar n
44.Op Cm ,cores= Ar n
45.Op Cm ,threads= Ar n
46.Oc
47.Sm on
48.Op Fl G Ar port
49.Op Fl g Ar gdbport
50.Oo Fl l
51.Sm off
52.Cm help | Ar lpcdev Op Cm \&, Ar conf
53.Sm on
54.Oc
55.Oo Fl m
56.Sm off
57.Ar memsize
58.Oo
59.Cm K No | Cm k No | Cm M No | Cm m No | Cm G No | Cm g No | Cm T No | Cm t
60.Oc
61.Sm on
62.Oc
63.Op Fl p Ar vcpu Ns Cm \&: Ns Ar hostcpu
64.Op Fl r Ar file
65.Oo Fl s
66.Sm off
67.Cm help | Ar slot Cm \&, Ar emulation Op Cm \&, Ar conf
68.Sm on
69.Oc
70.Op Fl U Ar uuid
71.Ar vmname
72.Sh DESCRIPTION
73.Nm
74is a hypervisor that runs guest operating systems inside a
75virtual machine.
76.Pp
77Parameters such as the number of virtual CPUs, amount of guest memory, and
78I/O connectivity can be specified with command-line parameters.
79.Pp
80If not using a boot ROM, the guest operating system must be loaded with
81.Xr bhyveload 8
82or a similar boot loader before running
83.Nm ,
84otherwise, it is enough to run
85.Nm
86with a boot ROM of choice.
87.Pp
88.Nm
89runs until the guest operating system reboots or an unhandled hypervisor
90exit is detected.
91.Sh OPTIONS
92.Bl -tag -width 10n
93.It Fl a
94The guest's local APIC is configured in xAPIC mode.
95The xAPIC mode is the default setting so this option is redundant.
96It will be deprecated in a future version.
97.It Fl A
98Generate ACPI tables.
99Required for
100.Fx Ns /amd64
101guests.
102.It Fl b
103Enable a low-level console device supported by
104.Fx
105kernels compiled with
106.Cd "device bvmconsole" .
107This option is deprecated and will be removed in
108.Fx 13.0 .
109.It Fl c Op Ar setting ...
110Number of guest virtual CPUs
111and/or the CPU topology.
112The default value for each of
113.Ar numcpus ,
114.Ar sockets ,
115.Ar cores ,
116and
117.Ar threads
118is 1.
119The current maximum number of guest virtual CPUs is 16.
120If
121.Ar numcpus
122is not specified then it will be calculated from the other arguments.
123The topology must be consistent in that the
124.Ar numcpus
125must equal the product of
126.Ar sockets ,
127.Ar cores ,
128and
129.Ar threads .
130If a
131.Ar setting
132is specified more than once the last one has precedence.
133.It Fl C
134Include guest memory in core file.
135.It Fl D
136Destroy the VM on guest initiated power-off.
137.It Fl e
138Force
139.Nm
140to exit when a guest issues an access to an I/O port that is not emulated.
141This is intended for debug purposes.
142.It Fl g Ar gdbport
143For
144.Fx
145kernels compiled with
146.Cd "device bvmdebug" ,
147allow a remote kernel kgdb to be relayed to the guest kernel gdb stub
148via a local IPv4 address and this port.
149This option is deprecated and will be removed in
150.Fx 13.0 .
151.It Fl G Ar port
152Start a debug server that uses the GDB protocol to export guest state to a
153debugger.
154An IPv4 TCP socket will be bound to the supplied
155.Ar port
156to listen for debugger connections.
157Only a single debugger may be attached to the debug server at a time.
158If
159.Ar port
160begins with
161.Sq w ,
162.Nm
163will pause execution at the first instruction waiting for a debugger to attach.
164.It Fl h
165Print help message and exit.
166.It Fl H
167Yield the virtual CPU thread when a HLT instruction is detected.
168If this option is not specified, virtual CPUs will use 100% of a host CPU.
169.It Fl l Op Ar help|lpcdev Ns Op , Ns Ar conf
170Allow devices behind the LPC PCI-ISA bridge to be configured.
171The only supported devices are the TTY-class devices
172.Ar com1
173and
174.Ar com2 ,
175the boot ROM device
176.Ar bootrom ,
177and the debug/test device
178.Ar pc-testdev .
179.Pp
180.Ar help
181print a list of supported LPC devices.
182.It Fl m Ar memsize Ns Op Ar K|k|M|m|G|g|T|t
183Guest physical memory size in bytes.
184This must be the same size that was given to
185.Xr bhyveload 8 .
186.Pp
187The size argument may be suffixed with one of K, M, G or T (either upper
188or lower case) to indicate a multiple of kilobytes, megabytes, gigabytes,
189or terabytes.
190If no suffix is given, the value is assumed to be in megabytes.
191.Pp
192.Ar memsize
193defaults to 256M.
194.It Fl p Ar vcpu:hostcpu
195Pin guest's virtual CPU
196.Em vcpu
197to
198.Em hostcpu .
199.It Fl P
200Force the guest virtual CPU to exit when a PAUSE instruction is detected.
201.It Fl r Ar file
202Resume a guest from a snapshot.
203The guest memory contents are restored from
204.Ar file ,
205and the guest device and vCPU state are restored from the file
206.Dq Ar file Ns .kern .
207.Pp
208Note that the current snapshot file format requires that the configuration of
209devices in the new VM match the VM from which the snapshot was taken by specifying the
210same
211.Op Fl s
212and
213.Op Fl l
214options.
215The count of vCPUs and memory configuration are read from the snapshot.
216.It Fl s Op Ar help|slot,emulation Ns Op , Ns Ar conf
217Configure a virtual PCI slot and function.
218.Pp
219.Nm
220provides PCI bus emulation and virtual devices that can be attached to
221slots on the bus.
222There are 32 available slots, with the option of providing up to 8 functions
223per slot.
224.Bl -tag -width 10n
225.It Ar help
226print a list of supported PCI devices.
227.It Ar slot
228.Ar pcislot[:function]
229.Ar bus:pcislot:function
230.Pp
231The
232.Ar pcislot
233value is 0 to 31.
234The optional
235.Ar function
236value is 0 to 7.
237The optional
238.Ar bus
239value is 0 to 255.
240If not specified, the
241.Ar function
242value defaults to 0.
243If not specified, the
244.Ar bus
245value defaults to 0.
246.It Ar emulation
247.Bl -tag -width 10n
248.It Li hostbridge | Li amd_hostbridge
249.Pp
250Provide a simple host bridge.
251This is usually configured at slot 0, and is required by most guest
252operating systems.
253The
254.Li amd_hostbridge
255emulation is identical but uses a PCI vendor ID of
256.Li AMD .
257.It Li passthru
258PCI pass-through device.
259.It Li virtio-net
260Virtio network interface.
261.It Li virtio-blk
262Virtio block storage interface.
263.It Li virtio-scsi
264Virtio SCSI interface.
265.It Li virtio-9p
266Virtio 9p (VirtFS) interface.
267.It Li virtio-rnd
268Virtio RNG interface.
269.It Li virtio-console
270Virtio console interface, which exposes multiple ports
271to the guest in the form of simple char devices for simple IO
272between the guest and host userspaces.
273.It Li ahci
274AHCI controller attached to arbitrary devices.
275.It Li ahci-cd
276AHCI controller attached to an ATAPI CD/DVD.
277.It Li ahci-hd
278AHCI controller attached to a SATA hard-drive.
279.It Li e1000
280Intel e82545 network interface.
281.It Li uart
282PCI 16550 serial device.
283.It Li lpc
284LPC PCI-ISA bridge with COM1 and COM2 16550 serial ports, a boot ROM, and,
285optionally, the debug/test device.
286The LPC bridge emulation can only be configured on bus 0.
287.It Li fbuf
288Raw framebuffer device attached to VNC server.
289.It Li xhci
290eXtensible Host Controller Interface (xHCI) USB controller.
291.It Li nvme
292NVM Express (NVMe) controller.
293.It Li hda
294High Definition Audio Controller.
295.El
296.It Op Ar conf
297This optional parameter describes the backend for device emulations.
298If
299.Ar conf
300is not specified, the device emulation has no backend and can be
301considered unconnected.
302.Pp
303Network backends:
304.Bl -tag -width 10n
305.It Ar tapN Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc
306.It Ar vmnetN Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc
307.It Ar netgraph,path=ADDRESS,peerhook=HOOK Ns Oo , Ns Ar socket=NAME Oc Ns Oo , Ns Ar hook=HOOK Oc Ns Oo , Ns Ar mac=xx:xx:xx:xx:xx:xx Oc Ns Oo , Ns Ar mtu=N Oc
308.Pp
309If
310.Ar mac
311is not specified, the MAC address is derived from a fixed OUI and the
312remaining bytes from an MD5 hash of the slot and function numbers and
313the device name.
314.Pp
315The MAC address is an ASCII string in
316.Xr ethers 5
317format.
318.Pp
319With virtio-net devices, the
320.Ar mtu
321parameter can be specified to inform the guest about the largest MTU
322that should be allowed, expressed in bytes.
323.Pp
324With netgraph backend, the
325.Ar path
326and
327.Ar peerhook
328parameters must be specified to set the destination node and corresponding hook.
329The optional parameters
330.Ar socket
331and
332.Ar hook
333may be used to set the
334.Xr ng_socket 4
335node name and source hook.
336The
337.Ar ADDRESS ,
338.Ar HOOK
339and
340.Ar NAME
341must comply with
342.Xr netgraph 4
343addressing rules.
344.El
345.Pp
346Block storage devices:
347.Bl -tag -width 10n
348.It Pa /filename Ns Oo , Ns Ar block-device-options Oc
349.It Pa /dev/xxx Ns Oo , Ns Ar block-device-options Oc
350.El
351.Pp
352The
353.Ar block-device-options
354are:
355.Bl -tag -width 8n
356.It Li nocache
357Open the file with
358.Dv O_DIRECT .
359.It Li direct
360Open the file using
361.Dv O_SYNC .
362.It Li ro
363Force the file to be opened read-only.
364.It Li sectorsize= Ns Ar logical Ns Oo / Ns Ar physical Oc
365Specify the logical and physical sector sizes of the emulated disk.
366The physical sector size is optional and is equal to the logical sector size
367if not explicitly specified.
368.El
369.Pp
370SCSI devices:
371.Bl -tag -width 10n
372.It Pa /dev/cam/ctl Ns Oo Ar pp . Ns Ar vp Oc Ns Oo , Ns Ar scsi-device-options Oc
373.El
374.Pp
375The
376.Ar scsi-device-options
377are:
378.Bl -tag -width 10n
379.It Li iid= Ns Ar IID
380Initiator ID to use when sending requests to specified CTL port.
381The default value is 0.
382.El
383.Pp
3849P devices:
385.Bl -tag -width 10n
386.It Pa sharename=/path/to/share[,9p-device-options]
387.El
388.Pp
389The
390.Ar 9p-device-options
391are:
392.Bl -tag -width 10n
393.It Li ro
394Expose the share in read-only mode.
395.El
396.Pp
397TTY devices:
398.Bl -tag -width 10n
399.It Li stdio
400Connect the serial port to the standard input and output of
401the
402.Nm
403process.
404.It Pa /dev/xxx
405Use the host TTY device for serial port I/O.
406.El
407.Pp
408Boot ROM device:
409.Bl -tag -width 10n
410.It Pa romfile
411Map
412.Ar romfile
413in the guest address space reserved for boot firmware.
414.El
415.Pp
416Pass-through devices:
417.Bl -tag -width 10n
418.It Ns Ar slot Ns / Ns Ar bus Ns / Ns Ar function
419Connect to a PCI device on the host at the selector described by
420.Ar slot ,
421.Ar bus ,
422and
423.Ar function
424numbers.
425.El
426.Pp
427Guest memory must be wired using the
428.Fl S
429option when a pass-through device is configured.
430.Pp
431The host device must have been reserved at boot-time using the
432.Va pptdevs
433loader variable as described in
434.Xr vmm 4 .
435.Pp
436Virtio console devices:
437.Bl -tag -width 10n
438.It Li port1= Ns Pa /path/to/port1.sock Ns ,anotherport= Ns Pa ...
439A maximum of 16 ports per device can be created.
440Every port is named and corresponds to a Unix domain socket created by
441.Nm .
442.Nm
443accepts at most one connection per port at a time.
444.Pp
445Limitations:
446.Bl -bullet -offset 2n
447.It
448Due to lack of destructors in
449.Nm ,
450sockets on the filesystem must be cleaned up manually after
451.Nm
452exits.
453.It
454There is no way to use the "console port" feature, nor the console port
455resize at present.
456.It
457Emergency write is advertised, but no-op at present.
458.El
459.El
460.Pp
461Framebuffer devices:
462.Bl -tag -width 10n
463.It Xo
464.Oo rfb= Ns Oo Ar IP\&: Oc Ns Ar port Oc Ns Oo ,w= Ns Ar width Oc Ns Oo ,h= Ns
465.Ar height Oc Ns Oo ,vga= Ns Ar vgaconf Oc Ns Oo Ns ,wait Oc Ns Oo ,password= Ns
466.Ar password Oc
467.Xc
468.Bl -tag -width 8n
469.It Ar IPv4:port No or Ar [IPv6%zone]:port
470An
471.Ar IP
472address and a
473.Ar port
474VNC should listen on.
475The default is to listen on localhost IPv4 address and default VNC port 5900.
476An IPv6 address must be enclosed in square brackets and may contain an
477optional zone identifier.
478.It Ar width No and Ar height
479A display resolution, width and height, respectively.
480If not specified, a default resolution of 1024x768 pixels will be used.
481Minimal supported resolution is 640x480 pixels,
482and maximum is 1920x1200 pixels.
483.It Ar vgaconf
484Possible values for this option are
485.Dq io
486(default),
487.Dq on
488, and
489.Dq off .
490PCI graphics cards have a dual personality in that they are
491standard PCI devices with BAR addressing, but may also
492implicitly decode legacy VGA I/O space
493.Pq Ad 0x3c0-3df
494and memory space
495.Pq 64KB at Ad 0xA0000 .
496The default
497.Dq io
498option should be used for guests that attempt to issue BIOS calls which result
499in I/O port queries, and fail to boot if I/O decode is disabled.
500.Pp
501The
502.Dq on
503option should be used along with the CSM BIOS capability in UEFI
504to boot traditional BIOS guests that require the legacy VGA I/O and
505memory regions to be available.
506.Pp
507The
508.Dq off
509option should be used for the UEFI guests that assume that
510VGA adapter is present if they detect the I/O ports.
511An example of such a guest is
512.Ox
513in UEFI mode.
514.Pp
515Please refer to the
516.Nm
517.Fx
518wiki page
519.Pq Lk https://wiki.freebsd.org/bhyve
520for configuration notes of particular guests.
521.It wait
522Instruct
523.Nm
524to only boot upon the initiation of a VNC connection, simplifying the
525installation of operating systems that require immediate keyboard input.
526This can be removed for post-installation use.
527.It password
528This type of authentication is known to be cryptographically weak and is not
529intended for use on untrusted networks.
530Many implementations will want to use stronger security, such as running
531the session over an encrypted channel provided by IPsec or SSH.
532.El
533.El
534.Pp
535xHCI USB devices:
536.Bl -tag -width 10n
537.It Li tablet
538A USB tablet device which provides precise cursor synchronization
539when using VNC.
540.El
541.Pp
542NVMe devices:
543.Bl -tag -width 10n
544.It Li devpath
545Accepted device paths are:
546.Ar /dev/blockdev
547or
548.Ar /path/to/image
549or
550.Ar ram=size_in_MiB .
551.It Li maxq
552Max number of queues.
553.It Li qsz
554Max elements in each queue.
555.It Li ioslots
556Max number of concurrent I/O requests.
557.It Li sectsz
558Sector size (defaults to blockif sector size).
559.It Li ser
560Serial number with maximum 20 characters.
561.El
562.Pp
563AHCI devices:
564.Bl -tag -width 10n
565.It Li nmrr
566Nominal Media Rotation Rate, known as RPM. value 1 will indicate device as Solid State Disk. default value is 0, not report.
567.It Li ser
568Serial Number with maximum 20 characters.
569.It Li rev
570Revision Number with maximum 8 characters.
571.It Li model
572Model Number with maximum 40 characters.
573.El
574.Pp
575HD Audio devices:
576.Bl -tag -width 10n
577.It Li play
578Playback device, typically
579.Ar /dev/dsp0 .
580.It Li rec
581Recording device, typically
582.Ar /dev/dsp0 .
583.El
584.El
585.It Fl S
586Wire guest memory.
587.It Fl u
588RTC keeps UTC time.
589.It Fl U Ar uuid
590Set the universally unique identifier
591.Pq UUID
592in the guest's System Management BIOS System Information structure.
593By default a UUID is generated from the host's hostname and
594.Ar vmname .
595.It Fl w
596Ignore accesses to unimplemented Model Specific Registers (MSRs).
597This is intended for debug purposes.
598.It Fl W
599Force virtio PCI device emulations to use MSI interrupts instead of MSI-X
600interrupts.
601.It Fl x
602The guest's local APIC is configured in x2APIC mode.
603.It Fl Y
604Disable MPtable generation.
605.It Ar vmname
606Alphanumeric name of the guest.
607This should be the same as that created by
608.Xr bhyveload 8 .
609.El
610.Sh DEBUG SERVER
611The current debug server provides limited support for debuggers.
612.Ss Registers
613Each virtual CPU is exposed to the debugger as a thread.
614.Pp
615General purpose registers can be queried for each virtual CPU, but other
616registers such as floating-point and system registers cannot be queried.
617.Ss Memory
618Memory (including memory mapped I/O regions) can be read and written by the debugger.
619Memory operations use virtual addresses that are resolved to physical addresses
620via the current virtual CPU's active address translation.
621.Ss Control
622The running guest can be interrupted by the debugger at any time
623.Pq for example, by pressing Ctrl-C in the debugger .
624.Pp
625Single stepping is only supported on Intel CPUs supporting the MTRAP VM exit.
626.Pp
627Breakpoints are supported on Intel CPUs that support single stepping.
628Note that continuing from a breakpoint while interrupts are enabled in the
629guest may not work as expected due to timer interrupts firing while single
630stepping over the breakpoint.
631.Sh SIGNAL HANDLING
632.Nm
633deals with the following signals:
634.Pp
635.Bl -tag -width indent -compact
636.It SIGTERM
637Trigger ACPI poweroff for a VM
638.El
639.Sh EXIT STATUS
640Exit status indicates how the VM was terminated:
641.Pp
642.Bl -tag -width indent -compact
643.It 0
644rebooted
645.It 1
646powered off
647.It 2
648halted
649.It 3
650triple fault
651.It 4
652exited due to an error
653.El
654.Sh EXAMPLES
655If not using a boot ROM, the guest operating system must have been loaded with
656.Xr bhyveload 8
657or a similar boot loader before
658.Xr bhyve 4
659can be run.
660Otherwise, the boot loader is not needed.
661.Pp
662To run a virtual machine with 1GB of memory, two virtual CPUs, a virtio
663block device backed by the
664.Pa /my/image
665filesystem image, and a serial port for the console:
666.Bd -literal -offset indent
667bhyve -c 2 -s 0,hostbridge -s 1,lpc -s 2,virtio-blk,/my/image \\
668  -l com1,stdio -A -H -P -m 1G vm1
669.Ed
670.Pp
671Run a 24GB single-CPU virtual machine with three network ports, one of which
672has a MAC address specified:
673.Bd -literal -offset indent
674bhyve -s 0,hostbridge -s 1,lpc -s 2:0,virtio-net,tap0 \\
675  -s 2:1,virtio-net,tap1 \\
676  -s 2:2,virtio-net,tap2,mac=00:be:fa:76:45:00 \\
677  -s 3,virtio-blk,/my/image -l com1,stdio \\
678  -A -H -P -m 24G bigvm
679.Ed
680.Pp
681Run an 8GB quad-CPU virtual machine with 8 AHCI SATA disks, an AHCI ATAPI
682CD-ROM, a single virtio network port, an AMD hostbridge, and the console
683port connected to an
684.Xr nmdm 4
685null-modem device.
686.Bd -literal -offset indent
687bhyve -c 4 \\
688  -s 0,amd_hostbridge -s 1,lpc \\
689  -s 1:0,ahci,hd:/images/disk.1,hd:/images/disk.2,\\
690hd:/images/disk.3,hd:/images/disk.4,\\
691hd:/images/disk.5,hd:/images/disk.6,\\
692hd:/images/disk.7,hd:/images/disk.8,\\
693cd:/images/install.iso \\
694  -s 3,virtio-net,tap0 \\
695  -l com1,/dev/nmdm0A \\
696  -A -H -P -m 8G
697.Ed
698.Pp
699Run a UEFI virtual machine with a display resolution of 800 by 600 pixels
700that can be accessed via VNC at: 0.0.0.0:5900.
701.Bd -literal -offset indent
702bhyve -c 2 -m 4G -w -H \\
703  -s 0,hostbridge \\
704  -s 3,ahci-cd,/path/to/uefi-OS-install.iso \\
705  -s 4,ahci-hd,disk.img \\
706  -s 5,virtio-net,tap0 \\
707  -s 29,fbuf,tcp=0.0.0.0:5900,w=800,h=600,wait \\
708  -s 30,xhci,tablet \\
709  -s 31,lpc -l com1,stdio \\
710  -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \\
711   uefivm
712.Ed
713.Pp
714Run a UEFI virtual machine with a VNC display that is bound to all IPv6
715addresses on port 5900.
716.Bd -literal -offset indent
717bhyve -c 2 -m 4G -w -H \\
718  -s 0,hostbridge \\
719  -s 4,ahci-hd,disk.img \\
720  -s 5,virtio-net,tap0 \\
721  -s 29,fbuf,tcp=[::]:5900,w=800,h=600 \\
722  -s 30,xhci,tablet \\
723  -s 31,lpc -l com1,stdio \\
724  -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \\
725   uefivm
726.Ed
727.Sh SEE ALSO
728.Xr bhyve 4 ,
729.Xr netgraph 4 ,
730.Xr ng_socket 4 ,
731.Xr nmdm 4 ,
732.Xr vmm 4 ,
733.Xr ethers 5 ,
734.Xr bhyvectl 8 ,
735.Xr bhyveload 8
736.Pp
737.Rs
738.%A Intel
739.%B 64 and IA-32 Architectures Software Developer’s Manual
740.%V Volume 3
741.Re
742.Sh HISTORY
743.Nm
744first appeared in
745.Fx 10.0 .
746.Sh AUTHORS
747.An Neel Natu Aq Mt neel@freebsd.org
748.An Peter Grehan Aq Mt grehan@freebsd.org
749