VirtualBox 6.0 and Hyper-V

Discussions related to using VirtualBox on Windows hosts.
Locked
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: VirtualBox 6.0 and Hyper-V

Post by socratis »

Andrew Brehm wrote:After fighting with Hyper-V's inability to ...
I purposely left the "inability to ... (do things)" blank. Hyper-V is a "new concept" in Windows (mind you, they just exposed the API with 1809, that's 1 year ago), and it's not mature enough, you'll find a lot of areas where it struggles to get it right. And when I'm talking "new", I mean compared to VirtualBox/VMware/others, even their own VirtualPC running on my PPC Mac was better!

Or they're just fine tuning it to be a very-specific-type-hypervisor, and not a generic one like the ones mentioned, maybe their goal isn't to have a DOS/Solaris/Other VM after all, but simply to isolate their own processes from each other, just like having siblings in their own bedrooms... ;)
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
scottgus1
Site Moderator
Posts: 20965
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows, Linux

Re: VirtualBox 6.0 and Hyper-V

Post by scottgus1 »

socratis wrote:just like having siblings in their own bedrooms
Never stopped me and my brothers. 8)
BillG
Volunteer
Posts: 5102
Joined: 19. Sep 2009, 04:44
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows 10,7 and earlier
Location: Sydney, Australia

Re: VirtualBox 6.0 and Hyper-V

Post by BillG »

Hyper-V isn't really a new concept. I was on the pre-release testing (code name Viridian) back in 2007. But it was for Windows Server only. It was the decision to give up on Virtual PC and "modify" Hyper-V to run on the client OS (for which it was not designed) which caused major problems.
Bill
loyukfai
Posts: 14
Joined: 27. Jun 2019, 17:47

Re: VirtualBox 6.0 and Hyper-V

Post by loyukfai »

So... does it mean that VB 6.1 will automatically works with Hyper-V (i.e. also SandBox) out of the box? No need any further configuration file tinkering?

Cheers.
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: VirtualBox 6.0 and Hyper-V

Post by mpack »

The safest answer to that is probably: no.
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: VirtualBox 6.0 and Hyper-V

Post by socratis »

Actually, it's a definite no. Microsoft introduced the Hyper-V API with 1803 (not really), and made it more solid with 1809. That's when VirtualBox and VMware came out and said "OK, fine, we'll use the Hyper-V API".

Until Microsoft broke it in the very next release, 1903. That's why the success stories have been zero to none. It doesn't really work, the foundation is broken. So broken, that VMware for example can't even start with a 1903 Host. VirtualBox starts but it won't get you that far.

So, it's not VirtualBox, it's Windows that prevents this from happening. Do let Microsoft know about it...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
loyukfai
Posts: 14
Joined: 27. Jun 2019, 17:47

Re: VirtualBox 6.0 and Hyper-V

Post by loyukfai »

Thanks.

So...

Code: Select all

<ExtraDataItem name="VBoxInternal/NEM/UseRing0Runloop" value="0"/>
Is still needed, right?

Would it be a bit faster under 6.1? Turning it on now would make the VM claw...

Cheers.
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: VirtualBox 6.0 and Hyper-V

Post by socratis »

loyukfai wrote:
<ExtraDataItem name="VBoxInternal/NEM/UseRing0Runloop" value="0"/>
Is still needed, right?
I have to (re)raise the warning flag once again!

This is a really experimental feature!

This is a "feature" discovered by a user, and none of the developers hasn't yet commented on this. And that (personally) "scares" me...
loyukfai wrote:Would it be a bit faster under 6.1?
Actually this is the wrong premise; the question should be "Would it be a bit faster in 1903/1909/etc.?", because that's where the bottleneck is.
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
savormix
Posts: 2
Joined: 12. Dec 2019, 22:57

Re: VirtualBox 6.0 and Hyper-V

Post by savormix »

Am I correct that in 1909 (18363.535), this feature is completely broken again?
Doesn't seem like HyperV will ever be ready, considering there are only a few Win versions (!= version families) that aren't in preview yet.

Optional features:
"Containers" enabled
"Hyper-V" (all sub elements) enabled
"Windows Hypervisor Platform" enabled

<ExtraDataItem> has no effect whatsoever.

Code: Select all

00:00:04.738398 NEM: Warning! Unknown CPU features: 0x178ffe7f7859f
00:00:04.738406 NEM: WHvCapabilityCodeProcessorClFlushSize = 2^8
00:00:04.738779 NEM: Warning! Unknown capability 0x1003 returning: 3f 38 00 00 00 00 00 00
00:00:04.739518 NEM: VidGetHvPartitionId            -> fun:0x2210a7 in:0x0 out:0x8
00:00:04.739526 NEM: VidStartVirtualProcessor       -> fun:0x221174 in:0x4 out:0x0
00:00:04.739530 NEM: VidStopVirtualProcessor        -> fun:0x221180 in:0x4 out:0x0
00:00:04.739535 NEM: VidMessageSlotHandleAndGetNext -> fun:0x2210df in:0x8 out:0x0
00:00:04.739623 VMSetError: F:\tinderbox\win-rel\src\VBox\VMM\VMMR3\NEMR3Native-win.cpp(1301) int __cdecl nemR3NativeInit(struct VM *,bool,bool); rc=VERR_NEM_MISSING_KERNEL_API             <---- From my PoV, this is a lie
00:00:04.739626 VMSetError: VMMR0_DO_NEM_INIT_VM failed: VERR_NEM_MISSING_KERNEL_API
00:00:04.739646 NEM: NEMR3Init: Native init failed: VERR_NEM_MISSING_KERNEL_API.
00:00:04.739655 VMSetError: F:\tinderbox\win-rel\src\VBox\VMM\VMMR3\HM.cpp(565) int __cdecl HMR3Init(struct VM *); rc=VERR_VMX_NO_VMX
00:00:04.739661 VMSetError: VT-x is not available
00:00:04.917662 ERROR [COM]: aRC=E_FAIL (0x80004005) aIID={872da645-4a9b-1727-bee2-5585105b9eed} aComponent={ConsoleWrap} aText={VMMR0_DO_NEM_INIT_VM failed: VERR_NEM_MISSING_KERNEL_API (VERR_NEM_MISSING_KERNEL_API).
00:00:04.917796 VT-x is not available (VERR_VMX_NO_VMX)}, preserve=false aResultDetail=-4009
00:00:04.918356 Console: Machine state changed to 'PoweredOff'
00:00:04.942695 Power up failed (vrc=VERR_VMX_NO_VMX, rc=E_FAIL (0X80004005))
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: VirtualBox 6.0 and Hyper-V

Post by socratis »

savormix wrote:Am I correct that in 1909 (18363.535), this feature is completely broken again?
Yes. You could call your Host's software developer and let them know...
savormix wrote:Doesn't seem like HyperV will ever be ready, considering there are only a few Win versions (!= version families) that aren't in preview yet.
The Hyper-V API became a viable reality with 1803, practically with 1809. And it went fine with 1903. And it broke with 1909. Please use your favorite search engine for "Immature API"... :P
savormix wrote:Optional features:
If you enable any of these, you're entering into the Hyper-V universe. See above...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
klaus
Oracle Corporation
Posts: 1115
Joined: 10. May 2007, 14:57

Re: VirtualBox 6.0 and Hyper-V

Post by klaus »

Need to correct the facts (yes, I know, I mixed them up myself in the past)... Hyper-V usage by VirtualBox started working with 1809, and some change in 1903 broke it. Not sure who is to blame, the code in VirtualBox pushes the limits of the WHv spec to squeeze a tiny bit of performance out of it. The "do everything in userland" approach intended by the designers of the API would be pretty much unbearable in workloads even with moderate I/O. Our devs are overloaded, and this fallback didn't have high enough priority to get fixed again.

The 6.1.0_BETA1 seemingly fixed it (but in fact it just accidentally disabled the optimization, so it was REALLY slow), and 6.1.0_RC1 restored the optimization which means that it doesn't work again with 1903 and 1909.
savormix
Posts: 2
Joined: 12. Dec 2019, 22:57

Re: VirtualBox 6.0 and Hyper-V

Post by savormix »

@klaus:
Thanks for the update. Much appreciated.

@socratis:
I was not talking about the Hypervisor Platform API, rather about the HyperV itself. The Azure (MS) IoT solutions all rely on containers, where on Windows (including that IoT Core variant) OS the virtualization is done via HyperV. All of the UNIX OSes and most of the Windows OSes are NOT production ready as Guests - this is the current HyperV state. And here we are talking about simple, headless scenarios.
With this in mind, it's no wonder other HyperV related features, like this Platform API, NEM and whatnot are also experimentally usable at best.
Gerhart
Posts: 6
Joined: 2. Nov 2019, 13:44

Re: VirtualBox 6.0 and Hyper-V

Post by Gerhart »

socratis wrote:Yes. You could call your Host's software developer and let them know...
Microsoft recently stated:
https://techcommunity.microsoft.com/t5/ ... -p/1063685
"As the scope of Windows virtualization has expanded to become an integral part of the operating system, many new OS capabilities have taken a dependency on Hyper-V. Consequently, this created compatibility issues with many popular third-party products that provide their own virtualization solutions, forcing users to choose between applications or losing OS functionality. Therefore, Microsoft has partnered extensively with key software vendors such as VMware, VirtualBox, and BlueStacks to provide updated solutions that directly leverage Microsoft virtualization technologies, eliminating the need for customers to make this trade-off."
socratis
Site Moderator
Posts: 27330
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: VirtualBox 6.0 and Hyper-V

Post by socratis »

Gerhart,

I call it marketing BS. Take a look at the terminology used in that article, take a look at who the author is. "Partnered" my ... Because one of their "partners" can't use their API, the other just won't make it to the start line. They briefly worked when MS published their API with 1809, but they broke it with 1903 and they really nuked the place with 1909.

The author must have had that article in their desk for a year, because it applies to Dec/2018, not 2019. There seems to be a real disconnect with reality, seriously...
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
odbayar
Posts: 1
Joined: 11. Dec 2019, 06:18

Re: VirtualBox 6.0 and Hyper-V

Post by odbayar »

Tell it to Microsoft then. You are Oracle. You must have some communication channel with them.
Locked