Ø
Intel Virtualization Technology (VT). Formerly
known as Vanderpool, this technology enables a CPU to act as if it were several
CPUs working in parallel, in order to enable several operating systems to run
at the same time in the same machine.
Ø
You may confuse virtualization with multitasking
or even with Hyper-Threading. On multitasking, there is a single operating
system and several programs running in parallel. On virtualization, you can have several
operating systems running in parallel, each one with several programs running.
Each operating system runs on a “virtual CPU” or “virtual machine”. And
Hyper-Threading simulates two CPUs where there is just one physical CPU for
balancing performance using SMP (Symmetric Multi Processing), and these two CPUs
cannot be used separately.
Ø
Of course if a CPU has both Hyper-Threading and
Virtualization Technology each virtual CPU will appear to the operating system
as if two CPUs are available on the system for symmetric multiprocessing.
Ø
If you pay close attention, Virtualization
Technology uses the same idea of Virtual 8086 (V86) mode, which is available
since 386’s. With V86 mode you can create several virtual 8086 machines to run
DOS-based programs in parallel. With VT you can create several “complete”
virtual machines to run full operating systems in parallel.
Ø
CPUs with Virtualization Technology have some
new instructions to control virtualization. With them, controlling software
(called VMM, Virtual Machine Monitor) can be simpler, thus improving
performance compared to software-only solutions.
Ø
How It Works
Ø
Processors with Virtualization Technology have
an extra instruction set called Virtual Machine Extensions or VMX. VMX brings
10 new virtualization-specific instructions to the CPU: VMPTRLD, VMPTRST,
VMCLEAR, VMREAD, VMWRITE, VMCALL, VMLAUCH, VMRESUME, VMXOFF and VMXON.
Ø
There are two modes to run under virtualization:
root operation and non-root operation. Usually only the virtualization
controlling software, called Virtual Machine Monitor (VMM), runs under root
operation, while operating systems running on top of the virtual machines run
under non-root operation. Software running on top of virtual machines is also
called “guest software”.
Ø
To enter virtualization mode, the software
should execute the VMXON instruction and then call the VMM software. Then VMM
software can enter each virtual machine using the VMLAUNCH instruction, and
exit it by using the VMRESUME. If VMM wants to shutdown and exit virtualization
mode, it executes the VMXOFF instruction.
No comments:
Post a Comment