Virtual Machines: What Are They?
Let me start off by saying that in 2006, your humble writer (the biggest computer geek in south Bluefield) had no real familiarity with what a “virtual machine” was. I had heard the term and assumed (somewhat correctly) that it had to do with running more than one operating system on a single machine.
Three years later I’m rather well acquainted with the concept of virtualization and the deployment of virtual machines, so it’s time for you non-geeks to learn what a VM is all about, and why they’re so useful.
In technobabble, a virtual machine is a computer application which presents simulated hardware to an operating system running as a process on a host system. To put it more simply, a special computer program that you run on your desktop or laptop “impersonates” a separate physical computer. In other words, a computer inside a computer!
So, what’s the purpose in this? In the IT world, there are purposes aplenty. Since different types of operating systems can be run at the same time, including legacy and bleeding-edge systems, compatibility issues can be easily investigated and data migration can be performed in a simple copy operation. Operating systems running in virtual machines are also very simple to back up and restore to any given state. Malware (viruses and spyware) that affects a guest operating system running in a VM cannot affect the host system, and a process that crashes a guest OS will not crash the host.
Additionally, an operating system stored as a virtual machine can be copied and run on completely different hardware within seconds, reducing system downtime in critical applications where hardware failure could be catastrophic. Although it is common to run the same type of operating system in a virtual machine as that of the host machine, often VMs are used to test or deploy different types of systems in parallel.
So, what does all this mumbo-jumbo mean to you, the home user? Scenario: you own a computer that runs Windows Vista. You have some applications you need that worked fine under Windows XP but absolutely refuse to run under Vista (even using Vista’s “compatibility” mode). Or perhaps you have some older computer games that ran under MS-DOS but do not play nice with any versions of Windows, period.
A virtual machine is the answer to both these not-really-hypothetical situations. You create a new VM, then install XP or MS-DOS into it, and voila! You’re able to install and use those older appplications and games as if you were using a separate physical computer.
Virtualization is not the only solution available to the home user in these types of cases – you could elect to perform a “real” installation of the operating system you need onto a second hard drive or new partition on your existing drive and set up a dual boot. But you would then need to reboot your computer every time you needed access to one operating system or the other. With a virtual machine, setup is fast and easy with no need to buy another drive, partition your existing drive, modifying your master boot record to allow a dual boot – the other OS is always just a few mouse clicks away.
Virtual machines are expecially useful to home users who choose to run something other than Microsoft Windows on their computer. (Yes, Virginia, there *is* choice other than Microsoft) For an example, I have been running Linux as my main operating system for some years now. Once in a while, I need to run Windows for a few legacy applications that have no equivalents in Linux world. Instead of dual-booting or keeping a Windows desktop around, I simply launch my Windows XP virtual machine, which has those applications installed, do my work, then exit back to my Linux environment.
As should be obvious, the possibilities are many for home use: the XP user can keep virtual machines on hand with earlier (or even later) versions of Windows installed. The person devoted to Macintosh machines can now run a Windows operating system in addition to their Mac OS. Linux users are able to run Windows for those applications that as yet have no counterparts written for them under Linux.
And for us techno-geeks, virtual machines are also a great tool when it comes to learning about, and troubleshooting, various operating systems. Nothing beats hands-on experience, and now you can get it without having to have 3-4 computers laying around.

XP Virtual Machine
The computer I’m typing this on has four operating systems installed: Linux as my main or primary OS, then three virtual machines running Windows Vista, Windows XP and FreeBSD. Attached is a shot of XP running inside a window on my Linux desktop. At any time I can hit a special hot key and switch the XP VM to full-screen mode, and it’s like running Windows directly – Linux “disappears” until I hit the hot key again.
Now, where do you get the software to create and run virtual machines? There are several choices, but the two most popular are VMWare and Virtualbox. The former is a commercial product, the latter is “open source” or free for most use. Check the links for more information and downloads.
And of course, you should be the registered owner of a copy of the operating system you wish to run in a virtual machine!
Categories: Tech
No Comments »
« Thoughts on Michael Jackson | Home | Palin: No Need To Cry Over Her Decision »

