VirtualBox, built by a German company called Innotek, is the underdog of the virtualization market. They are receiving very little press and very little market share, yet it’s a fairly robust, if young, platform.
Like VMware Server and Parallels Desktop, VirtualBox isn’t a type-1 hypervisor, but rather a type-2 that sits on an existing operating system (OS). I’ve been running it on my Mac and my PC for a bit and have tried out a few virtual machines, some migrations, etc. It shows excellent performance, stability, and usability, but does have a few caveats. Like most open source projects aimed at business users, VirtualBox has two sides — a purely open source side that’s beloved by the community and some proprietary additions geared towards enterprise customers that puts bread on the table for Innotek’s staff.
Like most virtualization platforms, VirtualBox supports USB devices, audio, and most of the other features typically expected of a virtualized computer. There’s no OpenGL / DirectX support as of yet, but I imagine that’s not a long stretch to implement now that Parallels has released the modified source code that they used to accomplish the task, and VMware has put 3D acceleration into Fusion. Snapshotting is there, which of course is key in any virtualization platform. I don’t see much on the management side, making it similar to where Xen and it’s ilk were not too long ago – the hypervisors were in place but the management apps were still in development and came to market later in the game, once the initial splash of “hey, there’s a new hypervisor in town” flattened out a bit. This isn’t a big deal for me, since I’m using it in a very raw test environment and don’t need much in the way of managing my own personal playground, but a real lab might want better management tools. Still, the basics are there, and the product compares favorably to VMware server and Workstation. I’d even go so far to say that it’s a got a slight edge in out-of-the-box usability, since the guest machine can act as RDP servers, meaning that you can use an RDP client to remotely view the desktop, regardless of what’s installed on the guest (no need for rdesktop packages or other client-side tools) and without having VBox installed on your local machine.
One neat item I liked on the Mac version: They mapped the Apple key to release the keyboard and mouse from input capture. OK, that’s about as important as what color they made the icon, but it was a neat touch and shows that they really are playing well in the Mac space. Personally, I hated Fusion so much that I wiped it off my system after about a week, going back with each subsequent beta until I get fed up with it for the last time after general release. I love Parallels, but it’s nice to have a hand in all of the pies, even if it’s only half-a-finger deep or so (mmm… pumpkin). Most of my testing was done on a Vista host, so there may be caveats in the Mac beta I don’t know about yet.
Documentation is first-rate. The user manual is very clearly organized, very clearly stated, with excellent screen captures and a walkthrough approach that is meant to get the job done. Technical documentation is likewise well-organized and stated, with an eye towards how the system is meant to work. I didn’t read the whole of the user manual; my familiarity with other products was enough to get me through everything until it came time to install the VirtualBox Additions software (like VMware Tools and Parallels Tool, these are for timesync, keyboard, mouse, and video performance improvements). I read through, did the installs, and moved on to using my guests.
Using the software was easy. If you can navigate in Parallels Destkop or in VMware’s Fusion or Workstation or Server, then you’ll have little problem with using the product. One caveat I noted right away when I tried to open a VMware VMDK machine containing XP Pro with VMware tools made under Server 1 (not the beta) was well-documented in their wiki. It repeatedly bombed out trying to boot because of hardware changes. On attempting the same thing with a Linux install (DSL), it booted and was fully functional. I made a few native guests, and found that the compatibility page for Vbox is quite accurate – as expected, my Ubuntu 7.10 failed miserably because Vbox doesn’t support PAE and Ubuntu uses it without checking for support. All my CentOS Linux installs (4 and 5) worked nicely, as did Fedora Core 7 and Windows XP. I didn’t try Vista or FC8, but that’s more a matter of time than any concern about them working.
Overall, it’s gets a solid 8 pokers out of ten as a competitor to VMware Workstation / Fusion and Parallels Desktop.