Where virtualization is concerned, “free” certainly doesn’t equate with “cheap”. Sun’s VirtualBox is a perfect example of that. For non-commercial use, it’s a cost-free hypervisor that’s feature-robust, offers great performance and stability, and supports a wide-variety of guest operating systems. Read on as we take an in-depth look at all that it offers.
This past summer, I posted a primer to consumer virtualization with the promise of following-up with in-depth looks at the various hypervisors available on the consumer side. It’s taken me a while, I admit, but we’re kicking things off with a look at Sun’s VirtualBox, one of the few absolutely free solutions out there. While there’s an open source edition available (lacks mostly enterprise features), we’re taking a look at the primary edition which most people will be interested in downloading.
For those not familiar with virtualization, I recommend you check out our primer linked to above. I’ll explain the basics here, but that article has a much more intricate look at things, and can better inform you about what a virtual machine is, and how it works. Simply put though, virtualization is the art of running an operating system inside of another operating system. As an example, you could be running Windows 7 as your primary operating system (host), and then Ubuntu 9.10 as the secondary (guest), running right inside your native OS.
In the primer, I tackled a lot of the reasons why someone would want to do this, but one of the more common is that your native OS may not run a piece of software you want it to. Or, you may simply want to test out a new Linux distribution before committing to a true install. Then there are development reasons. Imagine being able to test out your software or Web app in a variety of operating systems without ever rebooting your computer. That’s the power of virtualization.
The software used to power these virtual machines are called hypervisors, and where free (as in beer) solutions are concerned, the two most popular options are Sun’s VirtualBox and also VMware’s Player. Each has its own pros and cons, but for the most part, both offer easy installs of VMs and even easier-to-understand operation. I’ll be using VMware’s Player to a greater degree over the next few weeks, and will be publishing an article on it as well.
VirtualBox has been a common option for virtualization for quite a while, but it wasn’t owned by Sun until early last year. It acquired the original company, Innotek, and soon split the one version in two, with the second being the OSE (Open Source Edition), which lacks in some functionality, but includes the full source code. For all intents and purposes, the most common option for VirtualBox will be the main edition, but if you are keen on using only open source software, then the OSE is for you.
On the about page for VirtualBox, some of the highlighted features include a modular design, XML-based VM descriptions, Guest Additions, Shared Folders, Virtual USB Controllers, Remote Desktop Protocol and USB over RDP. There are of course far, far more features than just this, but all of these are good to focus on, and we will touch on most of them throughout this article.
What makes a hypervisor truly useful it its operating system support, and VirtualBox is certainly not lacking anywhere there. Unlike some solutions, like Microsoft’s Virtual PC, which supports only its own operating systems, VirtualBox supports Windows, Mac OS X, Linux and Solaris as the host (native, primary OS), and many, many versions of Windows, Linux, Solaris and others as guests. To see whether or not your preferred guest OS will work, you can check out the Guest OSes page which will tell you all you need to know.
Because I use Linux as my primary OS, most of my testing and many screenshots here reflect that. Because all versions of VirtualBox offer the same functionality and locations of options from OS to OS, you’ll be able to easily find anything from my screenshots in your own install of the program. Some features that VirtualBox offers is only available to select guest OSes, but that will also be the same from version to version.
If you’ve never had the benefit of using a hypervisor in the past, then VirtualBox is going to surprise you at the ease-of-use and operation. To download the program, just head on over to the official downloads page and choose the appropriate version. Note that if you are using a Linux host, then chances are good that VirtualBox will be available in your distro’s respository. Not all repositories will have the brand-new 3.1 version, however, so you may want to manually download the program if that’s the case.
As a whole, VirtualBox is a simple-looking application. On the main screen, as seen above, there’s a VM list to the left, and detailed information on the respective VM you’ve clicked on to the right. There’s nothing much complicated here, and if you were judging the application simply by this screen, you’d likely imagine it’s not too powerful, but what an understatement that would be. In this screenshot, I already have a couple of guest OSes installed, but let’s go through the process together of installing Windows 7 as a guest inside of Windows 7 as a host.