Page 1 of 1
Guest O/S configuration when using Hyper-V
Posted: 3. Dec 2015, 19:29
by Keisi
In Virtualbox 5, it sounds like the best option for a Windows 10 guest is to set the Paravirtualization Interface to Hyper-V. I did that (previously it was Legacy as I upgraded from Virtualbox 4) and don't notice any difference...not sure I should.
However I notice that Windows 10 has a bunch of Hyper-V services, none of which are running. Do I need to do anything special in the guest O/S to take advantage of the new paravirtualization option, such as enabling some services?
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 08:30
by BillG
I don't imagine that they do anything on a machine which is not running Hyper-V.
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 10:57
by mpack
In fact VirtualBox v5 can present a Hyper-v compatible paravirtualization API to the guest, which the guest can take advantage of if it has Hyper-v compatible guest side drivers installed. However since that doesn't apply to any of my guests I can't advise further on that. The OP needs to look in the guest Device Manager to see what devices are enabled and what drivers they're using.
Though I have to say - I missed the advice which said that the brand new and unproven Hyper-v API feature was preferable to the normal GAs.
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 11:51
by michaln
mpack wrote:Though I have to say - I missed the advice which said that the brand new and unproven Hyper-v API feature was preferable to the normal GAs.
It's not. The relationship between the paravirtualization support and Guest Additions is much like the relationship between the GAs and Extenstion Pack. That is, they're totally different things.
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 12:53
by mpack
Unless I've badly misunderstood what the Hyper-v support is all about, they are not totally different things. Both the GAs and the Hyper-v API are in effect both paravirtualization APIs (or drivers, depending on what side of the fence you're describing). The only difference is in who designed the API, and how widely supported it is.
The user manual itself contrasts the Hyper-v (and other para-v APIs) with the GAs. (section 10.4).
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 13:45
by michaln
The only thing the manual says is that GAs are not required to make use of paravirtualization in guests that take advantage of it. Conversely if the guest doesn't support the paravirtualization interface, installing GAs won't make any difference.
The Hyper-V and KVM paravirtualization is a low-level interface for things like clock management, locking assists, or crash reporting. GAs do things like mouse integration, display drivers, or shared folders. You tell me how much similarity you see there.
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 14:00
by mpack
Where does VirtIO fit into this? Is that not also a part of the KVM API? Are you defining the API by how much of it your team has implemented?
I confess that I haven't looked at the Hyper-v API, but I'd be surprised if it's feature domain was wildly different from KVM.
And the similarity: the GAs API, the Hyper-v API and the KVM API allow drivers in the guest to talk explicitly to the hypervisor. They are aware that they are talking to a hypervisor, the drivers don't think they're talking to legacy hardware. That is the similarity I see, and frankly it seems perverse to me to see it any other way.
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 14:58
by michaln
mpack wrote:Where does VirtIO fit into this? Is that not also a part of the KVM API?
It's not. VirtIO is pretty independent of the hypervisor and I believe it was originally implemented in Xen. From the guest's perspective, VirtIO devices are just PCI devices with specific drivers.
I confess that I haven't looked at the Hyper-v API, but I'd be surprised if it's feature domain was wildly different from KVM.
It's not. But there are two almost entirely separate domains. One is the "enlightenments" that are described in Microsoft's "High-Level Hypervisor Functional Specification", a public document. That's the kind of things VirtualBox's Hyper-V paravirtualization does. The other part is VMBus and synthetic devices, and that's entirely undocumented.
And the similarity: the GAs API, the Hyper-v API and the KVM API allow drivers in the guest to talk explicitly to the hypervisor. They are aware that they are talking to a hypervisor, the drivers don't think they're talking to legacy hardware. That is the similarity I see, and frankly it seems perverse to me to see it any other way.
If you zoom out far enough, it's all software. But that may not be a very useful way of categorizing things.
Re: Guest O/S configuration when using Hyper-V
Posted: 4. Dec 2015, 15:46
by mpack
michaln wrote:If you zoom out far enough, it's all software. But that may not be a very useful way of categorizing things.
And construing the definition narrowly, for the purpose of nitpicking, is not entirely helpful either IMHO.