# Bhyve now supports Windows 2012 (Say goodbye to VirtualBox?)



## jrm@ (Oct 3, 2015)

https://svnweb.freebsd.org/base?view=revision&sortby=date&revision=288522

Added: Bhyve now supports Windows 2012r2 in CURRENT r288524.  It requires this UEFI firmware: https://people.freebsd.org/~grehan/bhyve_uefi/BHYVE_UEFI_20151002.fd.  Via Benjamin Perrault.


----------



## Cthulhux (Oct 3, 2015)

IMO, both software solutions solve a different problem.


----------



## jrm@ (Oct 3, 2015)

What am I missing?  Once Bhyve supports more OS choices with performance similar to what it has now for Linux VMs, I'll be ditching VirtualBox.  The only reason I can think of to keep VB around would be if you have older hardware that Bhyve doesn't support.  The biggest drawback with VB hosts on FreeBSD is the lack of official support, which means no extension pack and no USB 2.0/3.0.


----------



## Oko (Oct 3, 2015)

jrm said:


> What am I missing?  Once Bhyve supports more OS choices with performance similar to what it has now for Linux VMs, I'll be ditching VirtualBox.  The only reason I can think of to keep VB around would be if you have older hardware that Bhyve doesn't support.  The biggest drawback with VB hosts on FreeBSD is the lack of official support, which means no extension pack and no USB 2.0/3.0.


The biggest problem with bhyve for me personally is a lack of high-level system admin tool. I see some progress with iohyve:

https://github.com/pr1ntf/iohyve

But I don't see it in ports. Personally I will probably not playing with bhyve before iohyve hits the ports.


----------



## protocelt (Oct 3, 2015)

Oko said:


> The biggest problem with bhyve for me personally is a lack of high level system admin tool. I see some progress with iohyve
> 
> https://github.com/pr1ntf/iohyve
> 
> but I don't see it in ports. Personally I will probably not playing with bhyve before iohyve hits the ports.


Nothing wrong with that, but I'm curious why? It's not like your uncomfortable with the command line. I've always found it advantageous getting used to tools at a lower level before using higher level wrappers and such. It makes troubleshooting that much easier should something go wrong if you know how something is supposed to work at a lower level.


----------



## Crivens (Oct 3, 2015)

VirtualBox will not die, if only for this reason - build system distribution and archiving. Once you can say that all of the staff are using the _exact_ same compiler, libraries, ... this will take some burden away from the toolchain admin and tester team. Also, the ability to pull a disk image from the version control system which was used to build the delivery from some date makes debugging and reproducing things much easier. This is also possible with a hypervisor, but I think it is more trouble that way.


----------



## gkontos (Oct 3, 2015)

I know that it pulls a lot of dependencies but deskutils/virt-manager seems to be working with Bhyve.


----------



## acheron (Oct 3, 2015)

Oko said:


> The biggest problem with bhyve for me personally is a lack of high-level system admin tool. I see some progress with iohyve:
> 
> https://github.com/pr1ntf/iohyve
> 
> But I don't see it in ports. Personally I will probably not playing with bhyve before iohyve hits the ports.



I've made a port:
http://mikael.urankar.free.fr/FreeBSD/iohyve.shar


----------



## vermaden (Oct 3, 2015)

jrm said:


> The biggest drawback with VB hosts on FreeBSD is the lack of official support, which means no extension pack and no USB 2.0/3.0.


For me the biggest drawback is lack of stability of VirtualBox on FreeBSD, random guest machine freezes/crashes are very common.


----------



## Oko (Oct 3, 2015)

vermaden said:


> For me the biggest drawback is lack of stability of VirtualBox on FreeBSD, random guest machine freezes/crashes are very common.


That was exactly my experience from two years ago when I was trying to move away from RHEL to FreeBSD on our main virtualization hosts (I have 3 virtual hosts with over 30 guests). In the mean time I migrated all our production virtual hosts to KVM for stability ans simplicity reasons. We still use VirtualBox in the lab but mostly on the developer desktops running RHEL if we need quick and dirty tests of our applications on Windows or when they need to use Microsoft Office or Internet Explorer. I actually like VirtualBox in that role. 

Moving away from KVM will not be easy sell even in the place like mine where with exception of virtual hosts entire infrastructure runs 100% BSDs (computing nodes and desktops run RHEL). There are several reasons for that. We already use Jails, KVM, VirtualBox and I have even a legacy Xen host having a single guest. Xen guest will be rebuilt in FreeBSD but that leaves me with 3 different virtualization technologies Jails, KVM, and VirtualBox.  I see the diversity as the main enemy of the productivity. Somebody will probably suggest I just migrate all KVM instances to Bhyve but that is not so easy. Namely sometimes we have to run KVM on a computing node. I am also not eager to repeat the exercise less than 2 years after I moved most of the stuff from VirtualBox to KVM. I would really have to have a good reason (running Bhyve guest on the top of ZFS pool with periodic snapshots and remote replication for example) to do such project.


----------



## ANOKNUSA (Oct 3, 2015)

jrm said:


> What am I missing?



VirtualBox isn't strictly aimed at enterprise data farms. I'll say goodbye to VirtualBox when bhyve allows me to run Windows 10 from my second bare-metal disk to access the Adobe Creative Suite. So, never.

Incidentally, I need those tools for university courses/work, so your thread title scared the living hell out of me.


----------



## jrm@ (Oct 3, 2015)

ANOKNUSA said:


> Incidentally, I need those tools for university courses/work, so your thread title scared the living hell out of me.


Yeah, I blame my excitement for the over-the-top title.  If I could have a mulligan, maybe something like "Can we ditch VirtualBox soon?".   My worst habit is to use superlatives when I get excited, e.g., "...biggest drawback with VB hosts..." (Yes, the irony was intended.)


----------



## kpa (Oct 3, 2015)

I honestly thought that the FreeBSD VB port was going to be ditched when I first saw the thread title.


----------



## jrm@ (Oct 3, 2015)

D'oh, sorry.  OK, I'll change the title.


----------



## fxlv (Oct 4, 2015)

Are there any docs on booting Windows under bhyve?
For Linux and BSD there are instructions on the wiki and the handbook but could someone provide any pointers how to get Windows running?


----------



## jrm@ (Oct 4, 2015)

Benjamin Perrault on twitter (from EuroBSDCon) said:
			
		

> In addition to #bhyve / win2k12r2 - #smartOS latest also works with this http://people.freebsd.org/~grehan/bhyve_uefi/BHYVE_UEFI_CSM_20151002.fd … firmware. I actually have an install Video done - will post when back in US. So Windows AND SmartOS in time for @eurobsdcon - insanely solid work @nahannisys #epic #bhyve



Maybe this will be helpful until there is _official_ documentation.


----------



## jrm@ (Oct 4, 2015)

Note the changes to the Bhyve wiki specifically under _What VM operating systems does bhyve support?_ and _Windows unattended build templates_.


----------



## asteriskRoss (Oct 4, 2015)

ANOKNUSA said:


> your thread title scared the living hell out of me.





kpa said:


> I honestly thought that the FreeBSD VB port was going to be ditched when I first saw the thread title.



Similarly with the original thread title I wondered whether Oracle might have been taking development forward as closed-source (like ZFS)!  I'm pleased it's just news about Bhyve progressing


----------



## jrm@ (Oct 4, 2015)

More information and instructions: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=0+0+current/freebsd-virtualization


----------



## pr1ntf (Oct 5, 2015)

acheron said:


> I've made a port:
> http://mikael.urankar.free.fr/FreeBSD/iohyve.shar



pr1ntf here....
Dude, you rock.
I have been getting iohyve ready for ports. Next major version, v0.7 should be added to official ports.
Nailing down some ZFS stuff along with some newb-like bugs that can break things if not kept in check.
Been keeping busy with the Windows stuff this weekend instead though.

Any help, testing, and feedback is much appreciated!


----------



## Beastie7 (Oct 5, 2015)

pr1ntf said:


> pr1ntf here....
> Dude, you rock.
> I have been getting iohyve ready for ports. Next major version, v0.7 should be added to official ports.
> Nailing down some ZFS stuff along with some newb-like bugs that can break things if not kept in check.
> ...



Can you implement some type of virtual switch where one can easily setup v(x)lans and NAT? I'm sure you can wrap your script around bridge(4), ifconfig(8), tap(4) or something. Hopefully as FreeBSD supports more switching protocols, this feature can grow.

Great work btw. Definitely helping spearheading the adoption and readiness of bhyve.


----------



## vermaden (Oct 5, 2015)

Oko said:


> I would really have to have a good reason (running Bhyve guest on the top of ZFS pool with periodic snapshots and remote replication for example) to do such project.


I assume that you know IOHYVE?
https://github.com/pr1ntf/iohyve


----------



## pr1ntf (Oct 5, 2015)

Beastie7 said:


> Can you implement some type of virtual switch where one can easily setup v(x)lans and NAT? I'm sure you can wrap your script around bridge(4), ifconfig(8), tap(4) or something. Hopefully as FreeBSD supports more switching protocols, this feature can grow.
> 
> Great work btw. Definitely helping spearheading the adoption and readiness of bhyve.



Thanks for the kind words! 

Yes, having guests behind some sort of NAT or switch is planned for the future. Wanting to build things where either the iohyve host can act as a firewall, or you can implement your own guest firewall. 
I've got my nose in some pf man pages as well as having The Book of PF on my amazon wishlist. 
Nailing down ZFS tweaks to speed things up, as well as snapshotting and independent cloning before I tackle networking and multiple NICs. 

The goal is by 1.0 to have many of the same features as VirtualBox. I know the goal of bhyve right now is to compare to KVM, but I want iohyve to be as simple and useful as VirtualBox, but with ZFS. 
(Thus me coming out of the woodwork to post in this thread  )


----------



## Beastie7 (Oct 5, 2015)

pr1ntf said:


> Thanks for the kind words!
> 
> Yes, having guests behind some sort of NAT or switch is planned for the future. Wanting to build things where either the iohyve host can act as a firewall, or you can implement your own guest firewall.
> I've got my nose in some pf man pages as well as having The Book of PF on my amazon wishlist.
> ...



Sweet! I'm looking forward to it!


----------



## abishai (Oct 5, 2015)

I prefer https://github.com/churchers/vm-bhyve It has wonderful virtual switch management.
I hope it hits port collection https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202225


----------



## Oko (Oct 6, 2015)

vermaden said:


> I assume that you know IOHYVE?
> https://github.com/pr1ntf/iohyve


Of course I do. Check out my first post in this thread.


----------



## fxlv (Oct 6, 2015)

Hey guys, has anyone here actually had success on booting Windows in bhyve(8)?

I updated the system and then
followed the instructions on http://docs.freebsd.org/cgi/getmsg.cgi?fetch=0+0+current/freebsd-virtualization

Prepared the ISO, no problems there but then, when booting the VM I get nothing.


```
bhyve \
>       -c 2 \
>       -s 0,hostbridge \
>       -s 3,ahci-hd,win.img \
>       -s 4,ahci-cd,win_repack.iso \
>       -s 10,virtio-net,tap0 \
>       -s 31,lpc \
>       -l com1,/dev/nmdm0A \
>       -l com2,/dev/nmdm1A \
>       -l bootrom,BHYVE_UEFI_20151002.fd \
>       -m 2G -H -w \
>       windows
```

Afterwards I try to connect to serial console using:

```
cu -l /dev/nmdm1A -s 9600
```

It says: Connected

And then that's it.
Any tips would be greatly appreciated


----------



## acheron (Oct 6, 2015)

You need to run `cu -l /dev/nmdm0B -s 9600` just after you run `bhyve`


----------



## fxlv (Oct 6, 2015)

acheron said:


> You need to run `cu -l /dev/nmdm0B -s 9600` just after you run `bhyve`


Thank you, this was it. My bad for not reading nmdm(4) man page.


----------



## usdmatt (Oct 9, 2015)

I've tried 2012r2 in the latest version of vm-bhyve.
Anyone is welcome to test it out themselves or even try a different windows version. (Apparently pretty much everything Vista and later has been run by bhyve devs)
There's some instructions on the github page.

Biggest issue is of course needing to run CURRENT and create your own ISO. After that it runs like any other supported guest:

```
# vm create -s 30G -t windows winguest
# vm install winguest win_repack.iso
(wait 20-25 minutes while the guest installs and reboots twice - reboots visible in the guest log file /path/to/vm/dir/winguest/vm-bhyve.log)
# vm console winguest
(then type 'i' to get the IP address assigned by DHCP)
```


----------



## lme@ (Oct 9, 2015)

pr1ntf I'll happily commit the port when 0.7 is out


----------



## pr1ntf (Oct 11, 2015)

lme@ said:


> pr1ntf I'll happily commit the port when 0.7 is out



Thank you! I would love to learn about the process during if you don't mind. Best practices and all. I'll ping you when things are baked.


----------



## lme@ (Oct 11, 2015)

pr1ntf said:


> Thank you! I would love to learn about the process during if you don't mind. Best practices and all. I'll ping you when things are baked.


Sure!


----------



## aragats (Dec 15, 2015)

I'd like to report that Windows 2012 in bhyve(8) works fine, and I was able to pass through USB3 controller to it. My Thinkpad T430 has two USB controllers, so I kept one with FreeBSD, and use another with Windows.
That's definitely a great thing which makes me getting rid of VirtualBox.


----------



## vermaden (Dec 16, 2015)

aragats said:


> I'd like to report that Windows 2012 in bhyve(8) works fine, and I was able to pass through USB3 controller to it. My Thinkpad T430 has two USB controllers, so I kept one with FreeBSD, and use another with Windows.
> That's definitely a great think which makes me getting rid of VirtualBox.


Is it possible with BHYVE to pass just a single USB port or just a single plugged device like with Virtualbox?


----------



## aragats (Dec 16, 2015)

As far as I know it's not possible at the moment. There was such a project in Google Summer of Code, not sure whether it got valuable results:
https://www.google-melange.com/gsoc/project/details/google/gsoc2013/syuu1228/5771972189356032


----------



## free-and-bsd (Jun 9, 2016)

So does that mean I can, simply put, access a bhyve-run copy of Windows 10 in a separate window (or something) on my FreeBSD-CURRENT desktop?
Currently I have to use Linux & VMPlayer to that effect (runs Fullscreen, supports my webcam and microphone --  which VBox under FreeBSD does not). 

Then, of course, using a native tool that's part of base would be just wonderful and I'll get rid of my Linux altogether in that case. Is it the time now?
Can an already installed Windows-10 HD (or vmdk for that matter) be used, I wonder?


----------



## usdmatt (Jun 9, 2016)

If you build the latest bhyve code from the projects/bhyve_graphics svn you can get VNC access to the guest. The graphics performance is nothing spectacular though, it's mainly useful for installation or tasks you can't do via RDP/ssh/whatever.

As mentioned by aragats, you can't pass through individual USB devices at the moment (there was supposed to be a GSOC project for this a few years ago but I have no idea what happened to it). However, most motherboards have more than one USB controller, so it is possible to pass through one of them to the guest. It might just take a bit of trial-and-error to find out which physical ports are on which controller. In aragats case he passed through a USB3 controller, which will have made it simpler if he only had one USB3 controller, as the ports are fairly easy to tell apart.

It is possible to convert a vmdk file into a raw file using the qemu-image tool. I don't know whether this would work with Windows though unless the old hypervisor happened to use the exact same disk emulation as bhyve (AHCI). Windows is funny about moving between different hardware.


----------



## free-and-bsd (Jun 9, 2016)

usdmatt said:


> If you build the latest bhyve code from the projects/bhyve_graphics svn you can get VNC access to the guest. The graphics performance is nothing spectacular though, it's mainly useful for installation or tasks you can't do via RDP/ssh/whatever.
> 
> As mentioned by aragats, you can't pass through individual USB devices at the moment (there was supposed to be a GSOC project for this a few years ago but I have no idea what happened to it). However, most motherboards have more than one USB controller, so it is possible to pass through one of them to the guest. It might just take a bit of trial-and-error to find out which physical ports are on which controller. In aragats case he passed through a USB3 controller, which will have made it simpler if he only had one USB3 controller, as the ports are fairly easy to tell apart.
> 
> It is possible to convert a vmdk file into a raw file using the qemu-image tool. I don't know whether this would work with Windows though unless the old hypervisor happened to use the exact same disk emulation as bhyve (AHCI). Windows is funny about moving between different hardware.


OK thank you! I'll give it a try... VNC is rather slow as per my experience.


----------



## pwr2srv (Jun 10, 2016)

I cannot see myself saying goodbye to VirtualBox on my FreeBSD host.  My last purchase of a Microsoft product was XP which runs my Bible-related apps, and I have many, which I never plan to retire.  So, I give my XP virtual machine (VM) one of my two monitors in full screen and it runs better on my Xeon E3-1225 v3 than it ever did natively on older 32 bit platforms.  I set the resolution of the monitor to match my laptop's, which also runs FreeBSD, and I log in to XP via rdesktop.  Crashes to XP are extremely rare and never has the file system become corrupted.  Beautiful.

Further, It's too easy to try out some Linux distro or a FreeBSD setup in a VM.  Just this morning I setup a DHCP/TFTP server and client using the VirtualBox Internal Networking.  I'm taking baby steps in my learning.  Next will come a router.  At other times I have built packages in a VirtualBox VM.

My primary print server is a 32 bit box running CUPS.  My backup print server is a 32 bit box using LPD.  Since the latter is greatly simplified using only LPD, I wondered if I could run it from a Live CD--something I had never made.  I successfully built the CD in a VirtualBox VM.

I have played around a little with other hypervisors, and bhyve, and though it all fascinates me, I just can't find a practical application on our little LAN.

If bhyve ever supported XP that would be a game changer, but that's not going to happen.


----------



## free-and-bsd (Jun 12, 2016)

pwr2srv cannot say the same about _my_ Win XP installation in qemu FreeBSD. It worked for some time, then started slowing down... all the way to becoming almost unusable. Just the way it happens to the real MS Win installation...

Oh yea, and I really admire you guys who manage to make it work for such LOOONG time  You must have a secret agreement with that corporation LOL. It was, in fact, my failure to be happy with Win 95 which pushed me to explore UNIX OS's. Then Linux degraded and FreeBSD evolved to be the smoothest OS... etc.

But now I'm running Win 10 in VMPlayer 12 under Ubuntu 16 installed on ZFS in the same pool with my FreeBSD and am VERY glad.

So yes, whatever be it with bhyve, to VirtualBox I _had_ to say goodbye. Though the reason is more or less laughable: it's because it doesn't support my web-camera and my microphone doesn't work in it! I personally could never care less, but the project I need Win 10 for just happens to require at least the mike for interaction. So... will have to wait until the VirtualBox extension pack gets supported in FreeBSD -- which doesn't seem to depend on FreeBSD developers, does it?


----------



## pwr2srv (Jun 13, 2016)

free-and-bsd said:


> ...It worked for some time, then started slowing down... all the way to becoming almost unusable. Just the way it happens to the real MS Win installation...



My experiences were the same on the real hardware, but my XP VM really is frozen in time, I hope, so there is no slowing.  I don't add any apps or make changes and browsing the web is a near no-no.  Also, I don't have any need for anything USB, just bi-directional cut-and-paste and Guest Additions.  The attached virtual drives add up to about 50GB.  The office suite is Office 97 with many Word macros to make things play nicely together.  I keep Firefox up to date and my writings and the virtual drives backed up to a separate FreeBSD box.  My XP setup and most of the apps really began life on real hardware with NT4, then moved to 2000, to XP, then virtualized.

Confession: I have never used QEMU.

Has it been that "LOOONG"? My, how time flies.


----------



## free-and-bsd (Jun 13, 2016)

pwr2srv said:


> ...Confession: I have never used QEMU.
> ...


My fault, picked up the first google reply, it happened to be qemu.


----------



## SemFLY (Sep 12, 2016)

Hi 

Load bhyve under *VMWare Workstation 10.0.1*
Guest OS *FreeBSD 11.0-RC2 r305704*
Followed the instructions on https://wiki.freebsd.org/bhyve/Windows
Prepared the ISO (Windows 7 Ultimate x64), no problems.

list catalog

```
# ll -h
total 3173988
-rwxr-xr-x  1 root  wheel  2.0M Sep 12 01:15 BHYVE_UEFI.fd*
-rw-r--r--  1 root  wheel  3.0G Sep 12 01:27 install.iso
drwxr-xr-x  8 root  wheel  512B Sep 12 01:16 iso-win/
-rw-r--r--  1 root  wheel  20G Sep 12 01:28 windows7.img
```

*My steps*
1. Start bhyve

```
# bhyve -c 1 -s 0,hostbridge -s 3,ahci-hd,windows7.img -s 4,ahci-cd,install.iso -s 10,virtio-net,tap0 -s 31,lpc -l com1,/dev/nmdm0A -l bootrom,BHYVE_UEFI.fd -m 2G -H -w windows7
```
2. Connect

```
# cu -l /dev/nmdm0B -s 9600
```

and after few minutes, on screen only this


```
Computer is booting, SAC started and initialized.                            
                                                                            
Use the "ch -?" command for information about using channels.
Use the "?" command for general help.
SAC>
EVENT: The CMD command is now available.
SAC>
```

In instruction about this moment
_...
... If you only see the CMD channel with another version of Windows, your installation has probably had an error with regard to license keys. To exit the CMD channel back to SAC, type exit...
..._

I try add ProductKey  in file AutoUnattend.xml
But no result...

Help me, please


----------



## usdmatt (Sep 12, 2016)

To be honest, if you're running 11-RC2 it will probably be easier to just use a standard windows CD and install via VNC. At least then you can run through the graphical install like normal and see any errors if they come up. With the unattended install you have to get everything just right, then you're flying pretty blind when it actually installs.

To do that you'll want to make sure you have the most recent firmware (I don't know where yours came from). The easiest way these days is to install sysutils/bhyve-firmware which will put it in /usr/local/share/uefi-firmware/.

Then just add a graphics device to bhyve

```
-s 7,fbuf,tcp=0.0.0.0:5900,wait -s 8,xhci,tablet
```

Once started you can connect to the FreeBSD's IP address with a VNC client and install the guest.


----------



## SemFLY (Sep 12, 2016)

usdmatt said:


> To be honest, if you're running 11-RC2 it will probably be easier to just use a standard windows CD and install via VNC. At least then you can run through the graphical install like normal and see any errors if they come up. With the unattended install you have to get everything just right, then you're flying pretty blind when it actually installs.
> 
> To do that you'll want to make sure you have the most recent firmware (I don't know where yours came from). The easiest way these days is to install sysutils/bhyve-firmware which will put it in /usr/local/share/uefi-firmware/.
> 
> ...



Thanks!!! Great!!! )))
All start immediately and i connect from VNC (use UltraVNC Viewer)
use this command in shell

```
# bhyve -c 1 -s 7,fbuf,tcp=0.0.0.0:5900,wait -s 8,xhci,tablet -s 0,hostbridge -s 3,ahci-hd,windows7.img -s 4,ahci-cd,MSDN_CD_Win7x64_Ultimate.iso -s 10,virtio-net,tap0 -s 31,lpc -l bootrom,BHYVE_UEFI.fd -m 2G -H -w windows7
```

but work only keyboard, mouse don't capture in VNC windows, need install driver ?

and one moment, but i think this problem with my VMWare Workstation and resources for a virtual machine, between step install Windows 7, wait 2-3 minutes(create disk, copy files and etc) will try more RAM memory for VM


----------



## usdmatt (Sep 12, 2016)

Ahh sorry, the xhci mouse might not be supported in Windows 7 by default.
Try removing `-s 8,xhci,tablet`. The mouse tracking isn't brilliant without the xhci mouse but it should be good enough to get it up and running.


----------



## ronaldlees (Sep 12, 2016)

This may seem like a question coming from ignorance of VB.  That's because I rarely use or configure VB. Most of my VB time was shortly after Sun acquisition.  I wasn't that enthralled with it. Plus - I'm skeptical of software with proprietary bits. Is any of it still proprietary? The same ignorance (mine) goes along with BHyve, but I'm not a system admin - maybe that's a factor.   I use QEMU with near native speed for my purposes, although not for Windows.  So, is QEMU considered un-applicable in this realm for some reason? I guess it's because QEMU is not (by original intent, especially without KVM) a virtualization farm system, and all you sys-admins use VB and BHyve for that aspect mainly?

Of course you are.

So, back to KVM/Qemu for your specific purposes:  Is it entirely unsuited?


----------



## usdmatt (Sep 12, 2016)

I don't know much about QEMU but it seems far more Linux-orientated. I also believe it mainly relies on KVM to provide near-native performance.
Bhyve is effectively KVM for FreeBSD. It's a very lightweight hypervisor, 100% designed on/for FreeBSD, making full use of hardware virtualisation features (VT-x,VT-d,etc) - In fact it won't work without VT-x.

Maybe VirtualBox is better than the credit I give it, but I tend to see it as more of a hobby/workstation hypervisor. Bhyve & KVM are more like ESXi/Hyper-V.


----------



## usdmatt (Sep 12, 2016)

One other thing, if you install Windows in bhyve using a standard install CD, you'll probably find there's no network as it won't have drivers for the virtio-net network device. Easiest thing to do is get the ISO image of the drivers, then boot the guest up with that ISO file attached.


----------



## ronaldlees (Sep 12, 2016)

usdmatt said:


> I don't know much about QEMU but it seems far more Linux-orientated. I also believe it mainly relies on KVM to provide near-native performance.
> Bhyve is effectively KVM for FreeBSD. It's a very lightweight hypervisor, 100% designed on/for FreeBSD, making full use of hardware virtualisation features (VT-x,VT-d,etc) - In fact it won't work without VT-x.
> 
> Maybe VirtualBox is better than the credit I give it, but I tend to see it as more of a hobby/workstation hypervisor. Bhyve & KVM are more like ESXi/Hyper-V.



Thanks for the information.  I usually have no need for virtualization, and run QEMU to debug kernels or to run an OS that needs hardware I don't have.  BHyve sounds interesting, but I seem not to find any direct comparisons of these players on the internet.  Perhaps I should set up all three, and check it for myself, as an academic exercise 

Maybe there's a big difference between them, relative to running later versions of Windows.  I see oblique references to that in the thread ...


----------



## SemFLY (Oct 4, 2016)

Hi 

Search this quiestion in FAQ
https://wiki.freebsd.org/bhyve
But no answer... ))))

bhyve is a great project that opens new opportunities in FreeBSD.
What about the future bhyve ? )
Will be supported actively? )
Program code bhyve in this moment is good(most of the code) and does't have big bugs ?


----------



## EsTaF (Nov 1, 2017)

windows 7 without a "tablet" option is trash one.
I so and can't found xhci driver for that "bhyve"' xhci device. intel's drivers not compatible.


----------



## EsTaF (Nov 1, 2017)

SemFLY said:


> Hi
> 
> Load bhyve under *VMWare Workstation 10.0.1*
> Guest OS *FreeBSD 11.0-RC2 r305704*
> ...



Without a mouse syncronisation one.
There's no xhci driver support. virtio... drivers only.


----------



## aragats (Nov 1, 2017)

SemFLY said:


> Program code bhyve in this moment is good(most of the code) and does't have big bugs ?


I use it for long time in "production" environment, works very stable, don't see any problems at all.


EsTaF said:


> can't found xhci driver for that "bhyve"' xhci device. intel's drivers not compatible.


That's true, however, you really don't need the framebuffer frequently.
net/freerdp does everything for you, including sound, directory mappings etc.


----------



## free-and-bsd (Nov 2, 2017)

EsTaF said:


> windows 7 without a "tablet" option is trash one.
> I so and can't found xhci driver for that "bhyve"' xhci device. intel's drivers not compatible.


Have you tried this post recommendations? I'm going to try, but with Win 10. But people report it working with Win 7 as well...


----------



## free-and-bsd (Nov 4, 2017)

free-and-bsd said:


> Have you tried this post recommendations? I'm going to try, but with Win 10. But people report it working with Win 7 as well...


Ok, I have tried this with win 10, it works like charm. No ISO manipulation needed, no nothing, It installs, boots and gets accessed via, for example, net/tigervnc. It would be better, of course, to use net/freerdp, but RDP is not (officially) available in Windows 10 HOME installation. There is rdpwrap workaround, but I wasn't very successful in bringing that up.

I also found this page about sound in bhyve, but that requires patching and rebuilding bhyve. I wonder if it is possible to rebuild only bhyve: of course it is, but whether or not other parts need be rebuilt as well — this I don't know.


----------



## vermaden (Nov 4, 2017)

free-and-bsd said:


> Ok, I have tried this with win 10, it works like charm. No ISO manipulation needed, no nothing, It installs, boots and gets accessed via, for example, net/tigervnc. It would be better, of course, to use net/freerdp, but RDP is not (officially) available in Windows 10 HOME installation. There is rdpwrap workaround, but I wasn't very successful in bringing that up.



Thanks for *rdpwrap*, haven't heard about it.



free-and-bsd said:


> I also found this page about sound in bhyve, but that requires patching and rebuilding bhyve. I wonder if it is possible to rebuild only bhyve: of course it is, but whether or not other parts need be rebuilt as well — this I don't know.



If Windows is the guest os then its a lot easier to get sound then to rebuild bhyve with patches, just use sound over RDP, to use it add */sound *switch to *xfreerdp*.

Consider also all these options for more convenient work:

`% xfreerdp /u:USER /w:WIDTH-OF-WINDOW /h:HEIGHT-OF-WINDOW /v:IP-ADDRESS +clipboard +fonts +home-drive /sound /bpp:32 /kbd:0x415`

Other switches are *+clipboard* for copy-paste clipboard, *+fonts* for _Clear Type_ smoothed fonts, *+home-drive* for having *$HOME* mounted as CIFS share under that guest machine, */sound *for audio over RDP (no bhyve patches needed), */bpp:32 *for full 32bit colors and */kbd:0x415 *for keyboard You need, 415 probably will not be useful for You.


----------



## abishai (Nov 4, 2017)

free-and-bsd said:


> But people report it working with Win 7 as well...


I'm running Windows 7 in my production. However, I never bothered with tablet mode. Framebuffer VNC is needed only once, until I get network/RDP. I used `sysprep` to create minimal Windows 7 installation and just cloning it when needed.


----------



## free-and-bsd (Nov 5, 2017)

vermaden said:


> Thanks for *rdpwrap*, haven't heard about it.


And I was finally able to make it work. A dll fix was needed to make it work. And I had to enable GUI-only authentication method on Windows host, otherwise there start some unclear certificate problems with freerdp. So thank you for your xfreerdp command line hints, I was really lost among the multiple options there...


----------



## free-and-bsd (Mar 6, 2020)

OK, it works fine now   ! I finally said goodbye to VMplayer, not only to virtualbox. With USB3.0 whole controller and a NIC passthrough along with correct CPUs option to bhyve it beats VMplayer.


----------

