Q: I'm trying to deploy an existing virtual machine to Hyper-V 2012 R2, but the operating system won't boot when I start the virtual machine. Why not?

A: Windows Server 2012 R2 Hyper-V supports both Generation 1 and Generation 2 virtual machines. Generation 2 virtual machines are UEFI based and won't work with 32-bit operating systems or pre-Windows 8/Windows Server 2012 operating systems. Make sure the virtual machine is a Generation 1 instead of Generation 2 virtual machine; existing virtual machines from previous versions should then work.

There is no way to make a pre-Windows 8/Windows Server 2012 operating system work in a Generation 2 virtual machine because of the lack of certain emulated hardware that the legacy operating systems require, such as the Programmable Interrupt Controller (PIC).