I had a really nice mail over new year from an influential IT Pros with more than a passing interest in Virtualization. It would be unfair to identify him, but I was very pleased to read
"Yours is always one of the blogs I point our staff toward to get up to date information and idea of how the various technologies come together. Please keep it up next year."
Well, the year is into its second week, so I'd better get on with it. There is, shall we say, some confusion about how the Integration Components work and what they do in Hyper-V. I thought this conversational way was the best way to explain it.
What's the big architectural change in Hyper-v ? We no longer have Virtualization as a process which sits on top of an OS, with VMs as Tasks on that OS. We have a Hypervisor which divides the phyisical machine into Partitions
So all these partitions are equal ? No. One partition is the parent, which must run Server 2008. It tells the Hypervisor what child partitions to create, which VHDs to use, etc
Ah VHDs, so we can move VMs from Virtual Server ? Yes. And Virtual PC, and Xen. Removing the old VM extensions before you move will help the process.
So Hyper-V emulates the same hardware ? Yes and No.
Go on then, enlighten me. I'm glad you said "enlighten", because there is a new Virtual Machine bus. Hyper-V's integration components they enable access to virtual devices this bus. We call an OS which can see them "enlightened" . Unenlightened operating systems use emulation.
So it's like a "stub" in the enlightened OS, but what does the VM bus connect it to ? Something in the hypervisor ? In Windows Hyper-V the drivers live in the parent partition, calls reach them through VM bus. In the parent partition each VM has a Worker Process which provides emulation.
OK. Are there restrictions on using these VM bus devices ? Two main ones. They look like new devices, so they need new drivers, in the Beta the list of supported OSes is quite short, and others must use emulation....
The list is short in the beta ? Server 2008 and Server 2003 SP2.
But it will be longer in at release ... won't it ? [Cough] You might think that... I couldn't possibly comment
OK and the second restriction There's no BIOS support for them, so your boot device MUST be an emulated one.
So you have to boot from an emulated IDE hard disk, not a SCSI one. Yes.
But, in Virtual Server SCSI was much better than IDE .... It was. But in Hyper-V there's support for an extra component to speed up IDE so once an enlightened OS is booted it is to all intents and purposes IDE is as fast as SCSI. (John Howard has more details).
The speed of the SCSI and IDE is identical then ? It's too soon to be benchmarking Hyper-V and trying to judge. When it's all done, SCSI might be a fraction faster but not enough to notice (this article over-states the difference)
I've posted the second of my four server 2008 screencasts, which looks at How Networks and Disks behave in Hyper-V, with the enlightenments. You can replicate everything in the video if you have your own trial copy
Watch in a new window using Silverlight (19 Minutes 45)
Right click here and choose "Save target as" to download video (~33MB WMV)
Tomorrow, I'll post part 3. Getting wireless access from a Hyper-V VM