A hypervisor is a form of virtualization software used in Cloud hosting to divide and allocate the resources on various pieces of hardware. The program which provides partitioning, isolation, or abstraction is called a virtualization hypervisor. The hypervisor is a hardware virtualization technique that allows multiple guest operating systems (OS) to run on a single host system at the same time. A hypervisor is sometimes also called a virtual machine manager(VMM).
Types of Hypervisor –
TYPE-1 Hypervisor:
The hypervisor runs directly on the underlying host system. It is also known as a “Native Hypervisor” or “Bare metal hypervisor”. It does not require any base server operating system. It has direct access to hardware resources. Examples of Type 1 hypervisors include VMware ESXi, Citrix XenServer, and Microsoft Hyper-V hypervisor.
Pros & Cons of Type-1 Hypervisor:
Pros: Such kinds of hypervisors are very efficient because they have direct access to the physical hardware resources(like Cpu, Memory, Network, and Physical storage). This causes the empowerment of the security because there is nothing any kind of the third party resource so that attacker couldn’t compromise with anything.
Cons: One problem with Type-1 hypervisors is that they usually need a dedicated separate machine to perform their operation and to instruct different VMs and control the host hardware resources.
TYPE-2 Hypervisor:
A Host operating system runs on the underlying host system. It is also known as ‘Hosted Hypervisor”. Such kind of hypervisors doesn’t run directly over the underlying hardware rather they run as an application in a Host system(physical machine). Basically, the software is installed on an operating system. Hypervisor asks the operating system to make hardware calls. An example of a Type 2 hypervisor includes VMware Player or Parallels Desktop. Hosted hypervisors are often found on endpoints like PCs. The type-2 hypervisor is very useful for engineers, and security analysts (for checking malware, or malicious source code and newly developed applications).
Pros & Cons of Type-2 Hypervisor:
Pros: Such kind of hypervisors allows quick and easy access to a guest Operating System alongside the host machine running. These hypervisors usually come with additional useful features for guest machines. Such tools enhance the coordination between the host machine and the guest machine.
Cons: Here there is no direct access to the physical hardware resources so the efficiency of these hypervisors lags in performance as compared to the type-1 hypervisors, and potential security risks are also there an attacker can compromise the security weakness if there is access to the host operating system so he can also access the guest operating system.
Choosing the right hypervisor :
Type 1 hypervisors offer much better performance than Type 2 ones because there’s no middle layer, making them the logical choice for mission-critical applications and workloads. But that’s not to say that hosted hypervisors don’t have their place – they’re much simpler to set up, so they’re a good bet if, say, you need to deploy a test environment quickly. One of the best ways to determine which hypervisor meets your needs is to compare their performance metrics. These include CPU overhead, the amount of maximum host and guest memory, and support for virtual processors. The following factors should be examined before choosing a suitable hypervisor:
1. Understand your needs: The company and its applications are the reason for the data center (and your job). Besides your company’s needs, you (and your co-workers in IT) also have your own needs. Needs for a virtualization hypervisor are:
a. Flexibility
b. Scalability
c. Usability
d. Availability
e. Reliability
f. Efficiency
g. Reliable support
2. The cost of a hypervisor: For many buyers, the toughest part of choosing a hypervisor is striking the right balance between cost and functionality. While a number of entry-level solutions are free, or practically free, the prices at the opposite end of the market can be staggering. Licensing frameworks also vary, so it’s important to be aware of exactly what you’re getting for your money.
3. Virtual machine performance: Virtual systems should meet or exceed the performance of their physical counterparts, at least in relation to the applications within each server. Everything beyond meeting this benchmark is profit.
4. Ecosystem: It’s tempting to overlook the role of a hypervisor’s ecosystem – that is, the availability of documentation, support, training, third-party developers and consultancies, and so on – in determining whether or not a solution is cost-effective in the long term.
5. Test for yourself: You can gain basic experience from your existing desktop or laptop. You can run both VMware vSphere and Microsoft Hyper-V in either VMware Workstation or VMware Fusion to create a nice virtual learning and testing environment.
HYPERVISOR REFERENCE MODEL :
There are 3 main modules coordinates in order to emulate the underlying hardware:
- DISPATCHER:
The dispatcher behaves like the entry point of the monitor and reroutes the instructions of the virtual machine instance to one of the other two modules.
- ALLOCATOR:
The allocator is responsible for deciding the system resources to be provided to the virtual machine instance. It means whenever a virtual machine tries to execute an instruction that results in changing the machine resources associated with the virtual machine, the allocator is invoked by the dispatcher.
- INTERPRETER:
The interpreter module consists of interpreter routines. These are executed, whenever a virtual machine executes a privileged instruction.
Similar Reads
Virtualization | Xen: Paravirtualization
Prerequisites - Introduction to Virtualization, Machine Reference Model of Virtualization Xen is an open source hypervisor based on paravirtualization. It is the most popular application of paravirtualization. Xen has been extended to compatible with full virtualization using hardware-assisted virtu
5 min read
Hardware Based Virtualization
Prerequisite - Virtualization In Cloud Computing and Types, Types of Server Virtualization, Hypervisor A platform virtualization approach that allows efficient full virtualization with the help of hardware capabilities, primarily from the host processor is referred to as Hardware based virtualizatio
5 min read
Mediator Design Pattern
The Mediator Design Pattern simplifies communication between multiple objects in a system by centralizing their interactions through a mediator. Instead of objects interacting directly, they communicate via a mediator, reducing dependencies and making the system easier to manage. Table of Content Wh
7 min read
Best Books for Learning UML
Learning UML (Unified Modeling Language) is essential for anyone involved in system design, as it helps in visualizing and planning complex software systems. Whether you're a beginner or looking to refine your skills, the right books can make all the difference. In this article, we have a list of th
5 min read
Mediator Design Pattern in C++
The Mediator Design Pattern in C++ is a behavioral pattern that defines an object, the mediator, to centralize communication between various components or objects in a system. This promotes loose coupling by preventing direct interactions between components, instead of having them communicate throug
8 min read
Virtualization | A Machine Reference Model
Prerequisite: Introduction to Virtualization When an execution environment is virtualized at unlike levels of the stack of computation then it requires a reference model which defines the interfaces within the level of abstractions, and this level of abstraction hides the details of implementations.
3 min read
How to Prepare for Low-Level Design Interviews?
Low-Level Design (LLD) interviews are crucial for many tech roles, especially for software developers and engineers. These interviews test your ability to design detailed components and interactions within a system, ensuring that you can translate high-level requirements into concrete implementation
4 min read
Network Virtualization in Cloud Computing
Prerequisite - Virtualization and its Types in Cloud Computing Network Virtualization is a process of logically grouping physical networks and making them operate as single or multiple independent networks called Virtual Networks. Tools for Network Virtualization : Physical switch OS - It is where t
4 min read
Object Oriented Programming | HCI
In computer programming, Object-Oriented Programming (OOP) stands out as a paradigm that has converted the manner software program is conceptualized and built. OOP is based on foremost and concepts and plays a crucial role in the introduction of efficient and adaptable software solutions. This artic
8 min read
Top OOAD Interview Questions and Answers
In todayâs rapidly changing software development world, Object-Oriented Analysis and Design (OOAD) has become a key component of programming approaches. Currently, businesses are in search of more efficient and scalable solutions thus, mastering OOAD principles is an invaluable skill for any develop
15+ min read