What is Microsoft Hyper-V?
Virtualization can be used for different purposes. Cloud computing and container technology work with it, for example. Fortunately, as a user of Windows you won’t be dependent on external - and sometimes very complex - software. With Hyper-V, Windows has installed its own hypervisor. So what does the tool do?
What is Hyper-V?
To virtualize hardware, i.e. create a hardware environment that does not have a physical form, you need an intermediary between the physical computer and the virtual machine. This interface is called a hypervisor. The physical host system can be mapped to multiple virtual guest systems (child partitions) that share the host hardware (parent partition). Microsoft has created its own hypervisor, Hyper-V, which is included in the professional versions of Windows 10 or Windows 8. The software is also installed in Windows Server.
Hyper-V gives Windows users the ability to start their own virtual machine. In this virtual machine, a complete hardware infrastructure with RAM, hard disk space, processor power, and other components can be virtualized. A separate operating system runs on this basis, which does not necessarily have to be Windows. It is very popular, for example, to run an open-source distribution of Linux in a virtual machine.
What do you need Hyper-V for?
Virtualization technology can be used in different situations for different needs. Hyper-V is usually used in test environments. In this context, virtualization has two advantages:
- Computer environments which are otherwise not accessible can be accessed. For example, instead of setting up your own PC with Linux, you can easily display the Linux operating system in a virtual machine.
- The virtual machine is self-contained. This means that if you run software that causes a system crash, the physical device is not at risk. Only the virtual machine would need to be reset.
Private users can use Hyper-V, for example, if they want to use software that would not run under their current version of Windows - either because the program requires an older version of the operating system or because only Linux is supported.
Virtualization via Hyper-V is a great advantage for software developers in particular. Any program they create can be tested under a huge variety of software and hardware conditions. In addition, due to the self-contained nature of the virtual machines, there is no need to worry about faulty code causing damage to their own systems.
Microsoft Hyper-V’s Architecture
Hyper-V allows x64 versions of Windows to host one or more virtual machines, which in turn contain a fully configured operating system. These “child” systems are treated as partitions. The term is otherwise known from hard disk partitioning - and Hyper-V virtualization works in a similar way. Each virtual machine is an isolated unit next to the “parent” partition, the actual operating system.
The individual partitions are orchestrated by the hypervisor. The subordinate partitions can be created and managed via an interface (Hypercall API) in the parent system. However, the isolation is always maintained. Child systems are assigned virtual hardware resources but can never access the physical hardware of the parent.
To request hardware resources, child partitions use VMBus. This is a channel that enables communication between partitions. Child systems can request resources from the parent, but theoretically they can also communicate with each other.
The partitions run services that handle the requests and responses that run over the VMBus. The host system runs the Virtualization Service Provider (VSP), the subordinate partitions run the Virtualization Service Clients (VSC).
Differences between Hyper-V and other virtualization techniques
Unlike any other virtualization techniques, Hyper-V has the advantage of being integrated with Windows. Anyone using the Microsoft operating system for PCs or servers can benefit from this close integration. Hyper-V is a type 1 hypervisor, which is also something only few other techniques offer. This means that Hyper-V is based directly on the system hardware. Type 2 hypervisors, on the other hand, must always go through the parent operating system to provide resources.
For Windows users, a very clear advantage is the close connection to the operating system. This can also mean a more cost-effective solution because Hyper-V is often included for free with Windows. Hyper-V can keep up with the competition in terms of its functionality. Users of Hyper-V can expect high performance, as long as they only work with Windows as a guest system. Since admin work is relatively simple, even beginners can benefit from virtualization via Hyper-V.
Although Hyper-V works very well with Windows, the software reaches its limits with other operating systems. Hyper-V is not designed to run on other systems, and the possible guest systems are very limited. Apart from Windows, only a few selected Linux distributions can run in a virtual machine. For example, if you want to use macOS as a guest system, you have to use an additional product. Unfortunately, a high loss of performance occurs when you run multiple Linux systems at once.
If you solely use Windows, Hyper-V is a good alternative to other virtualization solutions. Since the software is often already installed on Windows, Hyper-V is also very well suited for smaller projects. However, the software has its weaknesses when dealing with other operating systems. In this case, you’d need to use other software solutions, such as VMware. Despite its wide range of functions and good performance Hyper-V is ideal for smaller projects, but struggles with larger ones.