Hyper-V Architecture -Part 1

Architecture 

Hyper-V Architecture

Poster

  • Type 2 hypervisor runs on a host operating system. The host operating system manages the underlying hardware; the type 2 hypervisor makes requests to the host operating sys- tem for resource and to perform actions. Because a type 2 hypervisor runs on top of a host OS, access to all the processor rings of operating systems running in the virtual machine is limited, which generally means slower performance and less capability.

  • Type 1 hypervisors run directly on the bare metal of the server and directly control and allocate resources to virtual machines. Many type 1 hypervisors take advantage of
    a Ring -1, which is present on processors that support hardware virtualisation to run the hypervisor itself. This then allows virtual machines to still be able to directly access
    Ring 0 (kernel mode) of the processor for their computations, giving the best performance while still allowing the hypervisor management of the resource. All modern datacenter hypervisors are type 1 hypervisors.

Monolithic hypervisor

  • A monolithic hypervisor design requires hypervisor-aware device drivers that are hosted in and managed by the hypervisor. The benefit of the monolithic hypervisor design is that a controlling, or parent, operating system is not needed since all virtual guest operating systems interact directly with the underlying hardware using the hypervisor-aware device drivers.
  • The drawback of a monolithic hypervisor is that hypervisor-aware drivers must be developed for a wide range of devices. This places a burden on device driver providers to create new drivers and limits the number of devices that can be used in a virtualized environment until hypervisor-aware drivers are available.
  • VMWare’s ESX server virtualization platform utilises a monolithic hypervisor.

Microkernel hypervisor

  • For a microkernel hypervisor design, hypervisor-aware device drivers are not needed.
  • This design requires an operating system to act as a root, or parent, partition to provide an execution environment for the drivers needed to access the physical hardware. The device drivers for the underlying hardware are installed only in the operating system instance in the parent partition.
  • Virtual guest operating systems, running in child partitions, communicate with the parent partition for device-specific operations. The benefit of the microkernel hypervisor design is that device drivers do not need to be hypervisor-aware so the wide range of existing drivers can immediately be used in a virtualized environment.
  • Since the device drivers are not a part of the hypervisor, the hypervisor has less overhead and can therefore be smaller and more reliable. Another benefit of a microkernel hypervisor is that the attack surface is minimized since foreign code is not loaded within the hypervisor. This prevents malicious code from taking control of the machine via the hypervisor.
  • The drawback of the microkernel hypervisor design is that a parent partition is required and there is additional, though minimal, overhead required for the parent/child communication.

When the Hyper-V role is enabled on Windows Server, changes are made to the boot configuration database to configure the hypervisor to load  first, and then the Windows Server operating systems runs on top of that hypervisor, effectively becoming a pseudo virtual machine itself. Run the command bcdedit /enum on a Hyper-V host and it shows that the hypervisor launchtype is set to automatically launch.

 

Screen Shot 2017-11-14 at 3.01.58 PM

The Windows Server operating system becomes the management partition {Root Partition}  for the Hyper-V solution. The hypervisor itself is quite compact and needs to be as light as possible, so it’s focused on interacting with compute and memory resources and controlling access for virtual machines to avoid introducing latencies in performance. The management partition works for the hypervisor and is tasked with a number of items, such as hosting worker processes to communicate with virtual machines, hosting drivers for storage and network adapter interactions, and more. However, all the virtual machines are running directly on the hypervisor and not on the host operating system that was installed.

   Virtualization with Hyper-V – Know the basics

Screen Shot 2017-11-14 at 3.03.42 PM

 

Advertisements