Bhyve

BSD Hypervisor

Bhyve
Developer(s)The FreeBSD Project
Initial release2014; 10 years ago (2014)
Repositorygithub.com/freebsd/freebsd-src/tree/main/usr.sbin/bhyve
Written inC
Operating systemFreeBSD, illumos
TypeHypervisor
LicenseFreeBSD License
Websitebhyve.org Edit this on Wikidata
  • Free and open-source software portal

bhyve (pronounced "bee hive", formerly written as BHyVe for "BSD hypervisor") is a type-2 (hosted) hypervisor initially written for FreeBSD.[1][2][3] It can also be used on a number of illumos based distributions including SmartOS,[4] OpenIndiana, and OmniOS.[5] A port of bhyve to macOS called xhyve is also available.[6]

Features

bhyve supports the virtualization of several guest operating systems, including FreeBSD 9+, OpenBSD, NetBSD, Linux, illumos, DragonFly and Windows NT[7] (Windows Vista and later, Windows Server 2008 and later). bhyve also supports UEFI installations and VirtIO emulated interfaces. Windows virtual machines require VirtIO drivers for a stable operation. Current development efforts aim at widening support for other operating systems for the x86-64 architecture.

Support for peripherals relies on basic and VirtIO drivers and supports: eXtensible Host Controller Interface (xHCI) USB controllers, NVM Express (NVMe) controllers, High Definition Audio Controllers, raw framebuffer device attached to VNC server (Video Output), and AHCI/PCI Passthrough.[8]

Since the support for peripherals is incomplete, hardware-accelerated graphics is only available using PCI passthrough. But, Intel GVT (and other vGPUs with driver support) should allow sharing the device with the host.[9]

bhyve performs about the same as its competitors with lack of memory ballooning and accelerated graphics interface, but bhyve has a more modern codebase and uses fewer resources. In the case of FreeBSD the resource management is more efficient. FreeBSD is also known for its exemplary I/O speeds; running bhyve from FreeBSD has a lot of advantages for time-critical virtual appliances by reducing I/O time, especially on disk and network related loads.

Applications

Docker on macOS uses a bhyve derivative called HyperKit. It is derived from xhyve, a port of bhyve to macOS's Hypervisor framework.[10]

iohyve on FreeBSD is a command-line utility to create, store, manage, and launch bhyve guests using built in FreeBSD features.[11]

vm-bhyve on FreeBSD is a shell-based, bhyve manager with minimal dependencies.[12]

BVCP on FreeBSD is a lightweight, native, full featured web interface for managing virtual machines.[13]

FreeNAS, based on FreeBSD, uses bhyve alongside its file sharing services to provide hosting for VMs.[14]

Other distributions

ClonOS, a FreeBSD-based distribution for virtual hosting platform and appliance, primarily uses bhyve and has a web-based management interface.[15]

MyBee, a FreeBSD-based distribution for managing cloud VMs (bhyve) through a simplified API.[16]

SmartOS, an Illumos-based distribution for managing cloud VMs (bhyve, Solaris zones) through a simplified API.

MidnightBSD, a desktop operating system, includes bhyve.[17]

References

  1. ^ Carabas, Mihai; Grehan, Peter (10 June 2016). "Porting bhyve on ARM" (PDF). Retrieved 8 February 2017.
  2. ^ Dexter, Michael (20 October 2012). "BHyVe: The BSD HyperVisor In Depth" (PDF). Archived from the original (PDF) on 18 February 2018. Retrieved 8 February 2017.
  3. ^ Kerner, Sean Michael (22 January 2014). "Open Source FreeBSD 10 Takes on Virtualization". ServerWatch. QuinStreet Enterprise. Retrieved 28 July 2014.
  4. ^ Gerdts, Mike (March 2018). "bhyve zones in SmartOS" (PDF).
  5. ^ "bhyve Hypervisor". omniosce.org. Retrieved 27 September 2018.
  6. ^ "machyve/xhyve: a lightweight OS X virtualization solution". GitHub. 9 July 2020.
  7. ^ "bhyve Windows Virtual Machines". FreeBSD Wiki.
  8. ^ Peter Grehan; Neel Natu. "FreeBSD Manual Pages". The FreeBSD Project.
  9. ^ "Bhyve guests with hardware accelerated graphics". FreeBSD Presentations and Papers.
  10. ^ "moby/hyperkit: A toolkit for embedding hypervisor capabilities in your application". GitHub. Moby. 10 July 2020.
  11. ^ "FreeBSD bhyve manager utilizing ZFS and other FreeBSD tools". GitHub. Pr1ntf. Retrieved 7 August 2021.
  12. ^ "Shell based, minimal dependency bhyve manager". GitHub. Churchers. Retrieved 7 August 2021.
  13. ^ "BVCP: FreeBSD Bhyve Project". bhyve.npulse.net. Retrieved 7 August 2021.
  14. ^ "18. Virtual Machines — FreeNAS®11.3-U5 User Guide Table of Contents". www.ixsystems.com. Retrieved 2 January 2023.
  15. ^ "Free Open-Source Hosting Platform". clonos.convectix.com. Retrieved 7 August 2021.
  16. ^ "The most simplified API for creating and destroying K8S and cloud VMs". myb.convectix.com. Retrieved 17 May 2022.
  17. ^ "Virtualization". github.com. Retrieved 23 September 2023.

Further reading

  • Larabel, Michael (10 February 2013). "BHyVe: A New Hypervisor Coming To FreeBSD 10.0". Phoronix. Phoronix Media. Retrieved 28 July 2014.
  • Schenkeveld, Paul (3 February 2013). "bhyve – The BSD Hypervisor". fosdem.org. Brussels: FOSDEM. Retrieved 28 July 2014.
  • Larabel, Michael (9 November 2013). "The State Of FreeBSD's Bhyve Virtualization". Phoronix. Phoronix Media. Retrieved 28 July 2014.
  • "Bhyve Mind". BSD Now. 16 January 2014. Retrieved 12 August 2014.[permanent dead link]

External links

  • bhyve(8) – FreeBSD System Manager's Manual
  • bhyve on FreeBSD wiki
  • v
  • t
  • e
The FreeBSD Project
FreeBSDSubsystems
Scheduling
Virtualisation
Storage
Networking
Other
PeopleDerivatives
open-source
proprietary
  • v
  • t
  • e
Hardware
(hypervisors)
Native
Hosted
Specialized
Independent
Tools
Operating
system
OS containers
Application containers
Virtual kernel architectures
Related kernel features
Orchestration
Desktop
Application
Network
See also
Stub icon

This free and open-source software article is a stub. You can help Wikipedia by expanding it.

  • v
  • t
  • e