The different types of virtualisation
Yesterday I wrote about new Type-0 hypervisorsÂ and how they're set to make a bit impact, not just for businesses with huge server farms, but also how that is going to filter down onto the desktop of home computers, perhaps as early as next year.Â But what it a Type-0 hypervisor, indeed whatÂ are the Type-1 and Type-2 virtualisation I was talking about.Â I thought I'd follow that article up with a quick guide for you.
Virtualisation, first of all, is the process of running an operating system on a computer that isn't natively installed there.Â The whole OS is instead installed inside a file called a Virtual Machine (VM).Â This file is comparable to a ZIP file on your compter in some ways, in fact this is probably the most useful analogy.
The contents of a VM aren't compressed as those in a ZIP file are, but what you have is a single file, say one called Win7Ult.VM for the sake of argument, that contains within it an entire copy of Windows 7 and additional installed software, with all the file and folder structures intact.
The idea is that you can do one of three things with a VM.Â In its simplest terms, best epitomised by Microsoft's Virtual PC software or Parallels for the Mac, you can run a second operating system on your computer that resides in a window on your standard desktop.Â In the second scenario you can boot from one of these virtual machines.Â In this case it will appear that you're running a full operating system that's installed on your computer in the normal way.Â Instead what you're really doing though is running the VM from within it's single data file.
Finally, and this is the most common usage now in servers, you can run virtualisation management packages, such as Microsoft's new Hyper-V in Windows Server 2008, that allows several virtual machines to be run concurrently, each one as if it had been booted from, and each one with it's own unique processor core and reserved memory.
This is the most common usage for virtualisation at the moment and it permits one server to perform multiple tasks.Â It can be, to cite an example,Â a file server, an email server, a printer server and a web server simultaneously.Â There's more than enough power in modern computers and processors to do all of this without breaking a sweat, so why just have a server run one of these tasks, when it can perform multiple ones simultaneously.
This brings me on to the different types of virtualisation.Â For very first, Type-2 is best associated with Microsoft's Virtual PC.Â This type essentially runs in an emulator.Â This emulator pretends to be a computer, with its own processor, memory and such.Â Instead, none of that hardware actually exists.Â It's all virtual and the emulator interprets commands and sends the traffic back and forth with your real hardware.
This isn't very useful for many tasks as it is quite limited and won't easily give a virtualised OS access to hardware such as graphics cards, USB devices and printers.
This is where Type-1 virtualisation comes into play.Â This type has full access to much of your computers hardware, including peripheral devices.Â With Type-1 virtualisation though there is a driver which loads the virtual hard disk (VHD) but the virtual machine has full access to other hardware including the memory and processor.Â Examples of Type-1 virtualisation are XP Mode in Windows 7 and Boot Camp on the Mac.Â In the case of the latter, Type-1 virtualisation is required because the Mac uses a very different BIOS system to Windows.Â Thus a driver is required to interpret traditional PC BIOS calls and translate them for the platform they're actually using.
Type-0 virtualisation is not available in many products but Windows Server 2008's Hyper-V (which is rumoured to also be making an appearance in some editions of Windows 8) is perhaps the best known example.Â This type of virtualisation does away with the need for any interpretation layer between the hardware and the VM.Â It won't work on every piece of hardware, for instance the Mac will always need a Type-1 interface for the reasons I explained earlier.Â On Server systems though, and other computer systems where each VM is tailored for that specific hardware it the option that will provide the best performance and the lowest power consumption.
The world is now moving towards Type-0 virtualisation because the lack of any additional layers between the OS and the hardware will mean there's less for the computer to do.Â This makes everything more efficient.Â Type-2 VMs are now hardly seen and, with Type-1 VMs having made it to our desktops some years ago now, the future for virtualisation is looking very good indeed.Advertisement