It was foisted on me, but I created a group in our approved software policy with just me in it, added Virtualbox to the group and managed to get the change request signed off! I use Ubuntu now for everything but MS Office and the dreaded ERP client.
good lord. I would've gone the hyper-v route, that comes with Windows 10 pro, doesn't it? (another linux only user here, so idk). Should perform better than Virtualbox too
There's another gotcha here too: if your deployment uses Windows 10 Credential Guard and/or Device Guard, the Hyper-V hypervisor is installed even though Windows reports the Hyper-V role as not installed, and you will not be able to run other virtualization solutions.
My guess is virtualization software is mutually exclusive. On Linux, I can't run VirtualBox and KVM at the same time: if I want to run one, I have to unload the kernel modules belonging to the other.
Actually, it’s virtualization hardware that is exclusive.
Microsoft pulled an old trick out of their sleeve and implemented a feature, Device Guard, that requires virtualization. And of course it blocks other uses of the virtualization hardware, except, surprise surprise, their own virtualization solution.
D-, does not play well with others.
If your company requires Device Guard you can only use software based virtualization or Hyper-V.
Yes. Other virtualization solutions in Windows (virtualbox) run in it userland, hyper-v actually boots up below your windows system and makes your desktop os a virtual machine. Other VM run side by side your desktop os. The limitation being going turtles all the way down isn't supported by CPUs. Making the waters even more complicated is that some software moved from virtual box to hyper-v (docker for windows)
on init, the Hyper-V driver hijacks the running Windows instance, schedules it as the 'root partition', and runs it like just another VM.
unlike 'child partitions', the root partition still has non-virtualized drivers, which run unimpeded by privileged instruction traps.
when a child partition (guest VM) is started, it's scheduled as a peer to the root. its Virtual Processors (VPs) run alongside the root partition's VPs.
when the child partition traps into the hypervisor, or uses one of the enlightened drivers, the hypervisor dispatches a bus request to the root partition, which handles the IRQ using a Virtual Service Provider implemented by the host Windows kernel.
so the hypervisor is kind of a bridge between the host Windows and the child VMs, but the host Windows actually runs as a sort of privileged VM itself, just one with full hardware access and scheduling priority.
Hyper-V uses a type 1 hypervisor, which sits below the NT kernel. You might be thinking about the Windows Subsystem for Linux, which does sit on top of the NT kernel.
Disclosure: work at Microsoft on the Hyper-V team.
Hyper-V sucks on the Desktop. Too many features missing to allow good integration between Windows host and Linux. (Like Clipboard sharing, shared folders etc.)
In my experience it's tolerable if you know how to wrangle Cygwin/X and Samba and treat the Linux guest like a remote machine that just happens to be on a phenomenally fast network. But it definitely does suck by comparison to something like VMWare or Virtualbox with proper integration support.
You're absolutely right. Hyper-V has historically focused on server use cases and not on the desktop experience. This has led to all sorts of rough edges on Windows desktop. That said, this is starting to change [1], and I'm optimistic we'll make more progress in this space moving forward.
Disclosure: work for Microsoft on the Hyper-V team.
Still on windows 7 at work, so doesn't help. Ubuntu runs beautifully under Virtualbox, but this is not true of all Linux distro's. I have had problems with Mint for instance.
In fact Ubuntu is so good in Virtualbox that I even get away with running HN's hated Electron apps in the VM!