# Virtualisation in Operating Systems
Table of Contents
Virtualisation is the process of creating a virtual version of a physical object.
Virtualisation is of three types primarily:
-
Hardware Virtualisation - Based on simulating real hardware. This can be used to run a complete operating system. This can be further subdivided into full and paravirtualisation.
-
Desktop Virtualisation - It is the concept of separating the logical desktop from the physical machine.
-
Operating system level virtualisation (also called as containerisation) - It is the operating system feature in which the kernel allows the existence of multiple isolated user-space instances. Such instances are called containers. Containerisation was introduced as a Linux Kernel feature in 2010. It started gaining momentum with the introduction of Docker.
Hardware VirtualisationLink to heading
Some terminologies associated with Virtualisation:
-
Virtual Machine: It is a virtual representation of a physical machine.
-
Hypervisor: It is a software that manages and monitors running virtual machines.
-
Host machine: The physical machine that a virtual machine is running on.
-
Guest machine: The virtual machine running on the host machine.
The following block diagram shows the position of each component mentioned above:

HypervisorsLink to heading
There are two main types of hypervisors:
-
Native: They run directly on the host machine and share out resources between guest machines.
-
Hosted: They run as an application inside the operating system and support virtual machines running as individual processes. Eg. VirutalBox,Parallel Desktop
