VMM stands for Virtual Machine Monitor. It is a software program which allows management, governance, and creation of VM (Virtual Machines) and also manages the virtualized environment’s operation.
It is also called as Hypervisor and Virtual Machine Manager. Though, provided services and architectural implementation differs by product of seller.
Behind implementations and virtualization environments, it is the major software. When VMM is installed on host machine, it facilitates VMs creation and each with different apps and Operating Systems. In addition, it manages backend operations via allocating required storage, memory, input/output resources, and computing.
It also offers centralized interface to manage the status, availability, and operation of VMs installed on a host or spread across interconnected hosts.
Since a visitor OS isn't in hardware control, the VMM works as go-between. It blocks calls to memory tables and peripheral devices from every visitor and intervenes on the behalf of them. At the point of time when peripheral device makes interfere, for instance, when a disk is completed, VMM infuses that disturbance in the suitable visitor OS.
VMM programming and as per the stage, a visitor OS might run in integral in VM environment with no modification or the source code of VMM might need to be adjusted.
Types of VMM
There are three VMM architectures that shows the relationship in between device drivers, VMM, and guest OS. In paravirtualized, in all three architectures, guest OS changes could be made or not a single change can be made in guest OS in the case of fully virtualized. ‘Hypervisor’ term refers to the component of VMM near the hardware.
Here are Three Types of VMM –
1. Host OS – This method helps in enabling VMM in order to get installed on guest OS and running computer with no modification.
2. Hypervisor – It offers best performance, flexibility, and most control in VM (Virtual Machine) environment.
3. Service OS – It combines hypervisor’s robustness with hosted model’s flexibility that uses existing OS.