Sunday, June 21, 2009

Virtualbox


What if you want to evaluate or work with multiple operating systems, or different versions or configurations of the same operating system without each affecting the other? One simple way is to set up multiple partitions on a hard disk, and install the different operating systems or versions on different partitions, then select which operating system you want to use at boot time.

While that’s the time honored way to do it, it’s become more common to run different “guest” operating systems under different “virtual machines”, running under a “host” operating system. The virtualization application intercepts the guest OS accesses to and from its “hardware”, translating them on the fly to use services of the host OS. Each guest thinks it has exclusive rights to hardware, when it fact, the hardware of the guest is a creation of the virtualization application.

There are several advantages to doing this. You can save snapshots of the guest before you make a major change or test unstable software. If it doesn’t work out, the entire virtual machine can be rewound to a previous state. You can back up the entire virtual machine, and delete it from the host’s hard disk at will. Another advantage is that you can have the best of both worlds. Run a beta version of Windows, without risking your stable version. Run different Linux applications without having to reboot to Windows, or vice versa.

Virtualbox (virtualbox.org) is a free (Open source, or with more features for personal use or evaluation only) program from Sun Microsystems which does a great job. Simply have it create a “virtual disk” of the desired type and size, give access to your CDROM or ISO image to the guest, and install. You can map or share the host’s peripherals, including its network with the guest, and, with the personal use version, you can even share the host’s USB peripherals with the guest. Hardware video acceleration and remote desktop to the quest is also provided.

You can run the virtual machine in a host window, but it’s usually easiest to give it its own desktop. You can then simply switch between host and guest desktops. You can even merge the two operating systems on the same desktop (which can be a bit confusing). The guest application windows then can run alongside host application windows, each retaining the look and feel of the parent OS.

Applications running on the guest often run as fast as they would natively. But you do have to divvy up and allocate the hosts RAM between the host and guest(s), so it works best if the host has a lot of RAM. You’ll also need enough real disk space to hold all the guest’s virtual disks.

I use it to continue to use some Windows applications in a stripped down virtualized version of XP home. Those are the Windows applications I can’t do without (flight planning, Quicken, RSS readers), but running from with Ubuntu (Linux) host. Having a stable host OS is also a good idea, because if the host goes down, the guests crash. I have yet to find a Windows app which doesn’t work well into the virtualized XP environment.

Highly recommended.

No comments:

Post a Comment