Hardware Virtualization Support in Modern CPUs


To steer clear of the troubles surrounding the non-trappable privileged directions, CPU producers have added virtualization capabilities to modern day CPUs. These CPUs still want to behave exactly like their older counterparts, to make certain backward-compatibility with current applications, so the behavior of the non-trappable privileged guidelines is identical on these newer units. Even so, a new set of directions, which have been not previously accessible, gives for a special virtual machine mode of operation. This mode gives further levels of I/O and memory protection, and permits the unique guidelines to be detected and handled externally by the CPU in conjunction with a suitably written hyper visor VMM.

The first revision of this instruction set provided standard assistance for virtualizing the non-trappable privileged instructions, and the supporting guidelines required to interface the hardware support to VMMs written to make use of it.

CPUs with first generation hardware virtualization help are not capable of nesting VMMs in a way that makes it possible for the nested VMM to also take benefit of the hardware virtualization capabilities. This indicates that when utilizing CPUs with 1st generation hardware virtualization, only the “outermost” VMM can benefit from the hardware acceleration. Even though this may possibly not initially appear to be a difficulty, some modes of operation are not possible with out hardware virtualization help, meaning these modes will not be accessible in a nested-VMM configuration.

Furthermore, some personal computer makers intentionally disable hardware virtualization help in their PCs, even if the hardware is capable of supporting it.6 The second revision of this hardware support, present in only the newest CPUs at the time of this writing, does allow virtualization of the hardware virtualization instructions, enabling for some degree of nested VMM capabilities.

Limitations and Challenges

Efficiency – There will often be some level of efficiency overhead related with hyper visor VMMs. As CPUs evolve to include a lot more hardware support for virtualization, the areas of overall performance impact will shift from the VMM to the emulated hardware alternatively, which can nonetheless result in a non-trivial effect.

VM inside one more VM – As talked about prior to, unless 1 utilizes incredibly new hardware it is not attainable to run a hardware-accelerated VM inside another hardware-accelerated VM.

No hardware assist – Particularly important in a virtual desktopsolution, one particular should consider the millions of PCs in the field that could be utilized as host PCs that do not have even the first generation of virtualization assistance.7