Hyper-V allows you to create a virtual machine and install whichever operating system you like on it. These VMs can be Generation 1 or 2 that you need to set when creating the machine, however, there can be instances where you have created the machine but are not sure what they are. In this post, we will discuss how to tell if Hyper-V VM is Generation 1 or Generation 2 and what’s the difference between the two.
What’s the difference between Hyper-V VM Generation or Generation 2?
When creating a virtual machine, you are asked to pick either Generation 1 or Generation 2, and it can not be changed after the creation of the machine. So, the question arises- what’s the difference between these two?
As the name would suggest, Generation 1 is older than Generation 2, but there are some significant differences between the two that we need to find out. We are going to compare the two on a few parameters to find out what’s best for you.
- Compatibility with operating systems and software: First of all, we should make sure the operating system we are supposed to install is compatible with our VM. Gen 1 is better suited for running older software applications or 32-bit guest operating systems, while Gen 2 works well with newer 64-bit operating systems.
- Boot time and support: Gen 1 VMs have slower boot times as they use the older legacy BIOS firmware, however, Gen 2 VMs boot faster due to the use of Unified Extensible Firmware Interface (UEFI) firmware. Generation 2 also gets a lot of perks including Secure Boot by virtue of UEFI.
- Hardware support: Gen 1 supports a range of older network devices and other outdated hardware as it was tailor-made for them, but since some of these devices are deprecated, Gen 2 might not support them.
- Performance: The maximum amount of virtual RAM and the maximum number of virtual CPUs that can be assigned to a VM depends on its generation. If you are using Gen 1 VM, you can go up to 1 TB of RAM and 64 virtual processors. This number takes an astronomical jump in Gen 2, with 12 TB of RAM and 240 virtual processors.
The generation you need to pick depends solely on your needs. If your workspace requires you to use older hardware and software, you might want to use Generation 1, but we recommend Generation 2 for everyone else.
Check if Hyper-V VM is Generation 1 or Generation 2
You can check if your Hyper-V is Generation 1 or Generation 2 using one of the following methods.
- Check the summary of your Hyper-V to find its Generation
- Check your Hyper-V VM Generation using a PowerShell command
Let us talk about these methods in detail.
1] Check the summary of your Hyper-V VM to find its Generation
First of all, let us use the easiest method of them we are going to find out if the Hyper-V VM is Generation 1 or 2 from its summary. You can follow the steps mentioned below to do the same.
- Open the Hyper-V Manager from the Start Menu.
- Now, select the virtual machine you want to see the version of.
- Look at the bottom of the window, make sure you are on the Summary tab, and you will be able to see the Generation.
In my case, the Generation is 2 which you can check in the attached screenshot.
The VM portrayed in the image is of Generation 2 as macOS can’t work in a Generation 1 virtual machine. If you want to try out macOS, check our guide to install macOS on a Hyper-V VM.
2] Check your Hyper-V VM Generation using a PowerShell command
Microsoft PowerShell is one of the best command-line utilities for Windows users. It facilitates the automation of system management, testing, and solution deployment and provides the capability to monitor the creation of virtual machines running in Hyper-V.
So, in order to check your Hyper-V VM Generation open PowerShell as an administrator and then run the following command.
get-vm | format-list Name,Generation
This command will go through the list of virtual machines installed in Hyper-V and then list their Generations as well. Since both Hyper-V and PowerShell are Microsoft products and are integrated, PowerShell has the privilege to access Hyper-V VMs.
Hopefully, you are able to understand the difference between Generation 1 and Generation 2 VMs in Hyper-V and how to figure out what’s yours.
Also Read: How to install Linux Ubuntu on Hyper-V in Windows
How to check the VM generation in Hyper-V?
To check the generation of the version machine you are using in Hyper-V, open PowerShell as an admin and then run get-vm | format-list Name,Generation
. The command will go through the list of installed VMs and tell you what’s their generation.
Read: How to install Kali Linux on Hyper-V in Windows 11
How do I know what version of Hyper-V I have?
You can check the version of Hyper-V you have from the Hyper-V Manager. Just open the Hyper-V Manager app and go to Help > About Hyper-V Manager. You can now check the version of the Hyper-V Manager.
Also Read: Install and enable Hyper-V on Windows Home.