Some features or parts have a limit to how many can be configured.
For details, see Plan for Hyper-V scalability in Windows Server 2016.
Not all operating systems that can be run are tested and supported by Microsoft, however.
For lists of what's supported, see: Hyper-V is a hypervisor-based virtualization technology.
I ran into a problem not too long ago where a Linux VM running in Hyper-V lost network connectivity when it was restarted, or when it was Live Migrated between hosts in a Hyper-V cluster.
At first I verified all of the normal things, I made sure it was connected to the right Virtual Network, I made sure the Microsoft Network Virtual Switch Protocol was the only protocol enabled on the NIC for that Virtual Network on both Hosts in the cluster.
Optimization - Each supported guest operating system has a customized set of services and drivers, called , that make it easier to use the operating system in a Hyper-V virtual machine.
Portability - Features such as live migration, storage migration, and import/export make it easier to move or distribute a virtual machine.
Hyper-V uses the Windows hypervisor, which requires a physical processor with specific features.
For hardware details, see System requirements for Hyper-V on Windows Server 2016.
On Windows, it's available as feature in some 64-bit versions of Windows.