A primer on the varieties of virtualization.
The first variety -- sometimes referred to as native virtualization -- occurs when a hypervisor (also called a microkernel) directly virtualizes all host resources to multiple guest operating systems. That translates instructions that need systems resources on the fly via direct hardware-virtualization/system-instruction translation.
Direct translation presents a discrete virtual-machine appearance to each guest operating system and the applications riding on top of it.
Guest operating systems in this scheme don't need to be modified or be aware of the virtualized representation state of the hardware platform, because their resource needs are managed by the microkernel. VMware's ESX platform is a prime example of a direct hardware-virtualization system.
1a. Client direct-processor emulation
A variant of native virtualization is a process called client direct-processor emulation, where applications of another operating system are given operating-system resource-emulation capability. This scheme lets applications native to Windows XP work on Apple's Macintosh OS 10.4 using products from Parallels or Microsoft.
This is a scheme typically associated with desktop virtualization.
The second variety, called paravirtualization, also uses a hypervisor host operating system, but it presents hardware resources to "aware" kernel versions of guest operating systems. Virtual Iron Software uses a branch of the Xen open source project in its virtual-machine platform and management products that approach virtualization in this manner.
Hypervisors of the first variety translate instructions on the fly, remapping resources directly or to arbitration code (instruction-translation routines) for all guest operating-system requests. Paravirtualized systems don't need to go that far, because the instructions needed for guest operating systems have been made "aware" that resources are to be directed to a paravirtualized kernel instance underneath. In turn, the paravirtualized services are offered in a way that links to guest operating systems efficiently. Or so the argument goes. There is much contention about which virtualization method is more efficient, and for what server roles.
A variant of paravirtualization is a container, also known as a sandbox or application partition. Generally, containers provide additional application isolation from the misbehavior of other applications (and perhaps system events) to provide isolation, application behavior control, instance monitoring, higher availability or other administration needs.
To one degree or another, containers make a logical element of an application and often represent system resources to the application as though the application were the only one living on the host. Championed by Sun, containers can be found in Solaris, but other forms of containers are offered by Microsoft in SoftGrid, Red Hat Linux in SELinux and by Symantec/Altiris in SVE -- a sandbox for applications used in Windows 2000/XP/Vista/2003 platforms.
Learn more about this topic
“Wake up!” the good folks a Merriam-Webster just tweeted. “Sheeple is in the dictionary now.”
Wireless LAN users can’t just stay comfortable in the 5GHz realm – the older 2.4GHz frequency bands are...
A review of 18 companies that offer free cloud storage
The legal fight between Apple and Qualcomm on licensing modem technology is turning uglier every day.
F5’s new President and CEO, Francois Locoh-Donou talks about his vision for the app delivery...
Companies of all sizes and types are rethinking not only how their employees work, but also where that...
Use cases in industries such as aeronautics and chemicals are a proving ground, and a roadmap to...