Virtual-machine schemes come in two varieties, but each variety comes with its own variants
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
In what may be a first for the technology industry, RSA Conference 2015 next month apparently will be...
Website password strength meters, like a spouse asked to assess your haircut or outfit, often tell you...
With all the public cloud storage offerings on the market today, many vendors just want customers to...
Sponsored by AT&T
Sponsored by Brocade
Investors made a crowd around the cloud this week, investing $175 million in companies focused on...
The SDN project now has a security response team to quickly handle new vulnerability reports
Here's how many cybersecurity entry-level job seekers fail to make a great first impression.
As CIOs become overwhelmed by IT demands, chief data officers (CDOs) are stepping in to serve as a...