What is virtualization, and describe its overhead?
Overview
The hypervisor and virtual machines share the host computer's physical central processing unit (CPU) in a virtualized environment. Because multiple processes want to use the physical CPU simultaneously, virtual machines may have to be scheduled on the CPU. This is one of the other overheads of virtualization.
In this Answer, we'll learn about virtualization, its significant categories, and its overhead of virtualization.
Virtualization
Virtualization uses different software-based solutions to create an abstract layer on our computer hardware. This allows us to divide the hardware elements of a single computer (processors, memory, storage, and so on) into virtual machines (VMs). Each VM runs its operating system, which runs only on some of the underlying computer hardware but behaves like a stand-alone computer.
Virtualization can be categorized into two categories:
Hardware-based
In this implementation, the hypervisors provide the virtual machine's implementation through firmware, allowing it to run on the core hardware (CPU). Its also known as a type-
OS based
In this implementation, the hypervisors provide for the virtual machine's on top of the existing operating system. The new virtual machine(VM) also runs the conventional operating system. Its also known as a type-
The practical use cases of virtualization are:
- Cloud virtualization
- Storage virtualization
- CPU virtualization
- Network virtualization
And many more!
Overheads
Virtualization is associated with some overhead:
Additional access time
After virtualization, the virtual machines require additional time to access the memory due to the layer on top of the OS or core hardware. The processor's paging hardware uses the
Require extra space
The hypervisor requires extra space to implement its data structure and code, excluding the memory allocated to the virtual machine (VM) separately.
CPU utilization
Some percentage of the CPU is unavailable to the virtual machine (after virtualization) because the CPU is consumed by other virtual machines, VMware itself, or other processes. We can use the
Free Resources