Virtualization and Hypervisors

Megha Bansal
Analytics Vidhya
Published in
3 min readOct 10, 2020
Don’t worry if you can’t figure it out right now!

WHAT EXACTLY IS VIRTUALIZATION?

Let’s look at the scene before Virtualization came into the picture.

  • Individual applications running on individual systems. There would be many servers. Talking about the challenges:

🌟 Only a limited capacity is used ( In case of minor workloads). Rest of the resources would go waste.

🌟 Applications perform in a different way in different Operating Systems. Suppose I want to run my application in Windows as well as Linux. Then I would have to buy another server and on top of that another OS.

  • On the other hand, Virtualization enables us to have a single server and on top of that multiple OS. There are various other kinds of Virtualization as well.

So, Virtualization is nothing but a means to create a virtual version of a device or resource, such as — Server, Storage, Network or OS where the framework divides the resources into one or more execution environments. Devices, Applications and Human Beings are able to interact with the virtual resource as if it were a single logical resource.

ROLE OF HYPERVISORS

  • In simple terms- It brings about Virtualization. It is computer software, firmware or hardware that creates and runs virtual machines.
  • It can be classified into two kinds:

→Type-1, native or bare-metal hypervisors

→Type-2 or hosted hypervisors

Types of hypervisors
  • Type-1 hypervisors run directly on the hardware ( bare metal ). They don't require an underlying OS. They have direct access to the host hardware and resources and distribute it accordingly. Examples of Type 1 hypervisors are VMware ESXi, Microsoft Hyper-V, Xen etc.
  • Type-2 hypervisors require an underlying OS. They run on top of an OS and gives us an environment to run other OS and applications. They don't have direct access to the host hardware and resources. Examples of Type 2 hypervisors are Oracle Virtualbox, VMware Workstation etc.

USE CASES OF BOTH THE TYPES

Type-1 is used in companies and for all the heavy workloads. We don’t need to worry about any OS, we just need hardware. Scaling becomes easier. Essential data is more secure because there’s no scope of an OS getting crashed. On the other hand, Type-2 is mostly used for basic/personal needs such as learning and testing as is it not good from a longer-run perspective

Thank you! Hope you had a wonderful read.

In case of any query, reach out to me on Linkedln.

--

--

Megha Bansal
Analytics Vidhya

DevOps Engineer at JFrog | Linux | Python | Git | Docker | Kubernetes | AWS | Terraform | CI-CD