Microsoft launched Generation 2 VMs with Windows Server 2012 R2 but they are still compatible with Generation 1 VMs which likely called as ‘legacy VMs’. Generation 1 VMs are the normal VMs running on Hyper –V which uses BIOS-based boot architecture, whereas Generation 2 VMs use UEFI-boot based architecture and available only on Windows Server 2012 R2.
Generation 2 VMs provide a simple hardware model, supports UEFI firmware & many of the legacy devices have also removed. In Generation 1 VMs same virtual hardware was assigned, whereas Generation 2 will be having new functionalities which are:
Generation 2 VMs provide a simple hardware model, supports UEFI firmware & many of the legacy devices have also removed. In Generation 1 VMs same virtual hardware was assigned, whereas Generation 2 will be having new functionalities which are:
- PXE boot via standard network adapter:
In generation 1 if there was a requirement to have remote installation for the guest operating system using PXE (Pre-boot execution Environment), the legacy network adapter was supposed to install. In generation 2 legacy network aren’t available so PXE boot can only be performed by the standard network adapter. - Boot from SCSI Virtual Hard Disk or DVD:
In Generation 2, VMs are enabled to boot from virtual SCSI (Small Computer System Interface) controller. Virtual IDE (Integrated Device Electronics) controllers aren’t available in Generation 2 VMs. So, attached OS VHDX can be benefited by having SCSI or VHDX features. - Secure Boot is enabled by default:
Generation 2 VMs have Secure Boot by default in nature which help in preventing unauthorised firmware, operating systems and UEFI (Unified Extensible Firmware Interface) drivers from running at the boot time. But Secure Boot can be disabled after creating the Virtual Machine.
The minimum requirements for the Generation 2 VMs are: Windows Server 2012 or R2 and 64 bit Windows 8 & 8.1.
On Microsoft Hyper-V an Admin can run both generations of VMs even though now Hyper-V will ask first which generation you want to create. Basically Hyper-V Generation 2 doesn’t support all Hyper-V supported guest Operating Systems. So, the Operating System, which isn’t compatible to Generation 2 those need to be installed on Generation 1 VMs.
When it comes to performance VMs boot will be 20% (approx.) faster & OS installation will be around 50% faster in comparison to Generation 1 VMs. But there will be not much difference in overall performance for VMs.
Benefits:
There are benefits that Generation 2 VMs provide such as these VMs performs faster OS installation because OS installation enables from PXE network. Another advantage is, these VMs boots faster and a subset of Integration components is available to the VM during power-on.
Limitations:
Limitations are also there with Generation 2 VMs as they only support VHDX virtual hard-drive format. Generation 1 VMs can convert to a VHDX format to use in the Generation 2 but then you cannot further convert it to some other format. All OSs aren’t supported by Generation 2 VMs, you can’t install old version of OSs in them. There are a lot more drawbacks and limitations associated with Generation 2 VMs
- Only new OSs are supported on Gen 2 VMs.
- No boot from an iSCSI LUN if you need to then use Gen 1 VMs only.
- The secure boot option is only with Gen 2 VMs.
- No support for the legacy network Adapters.
- No support for vFloppyDrives.
- No support for IDE Controllers
May be in the next release of Hyper-V we might not see these limitations or drawbacks in the Gen 2 VMs