Review: InnoTek’s VirtualBox [Update]

Tux
Almost a month ago InnoTek, the co-developer of VirtualPC, released their Virtual Machine as Open Source. The software was formerly not targetted at desktop users, but that changed when it was released under the GPL. This review tries to shed some light on the question if VirtualBox can get some market share between Vmware and Qemu.

Versions and installation

VirtualBox is released as GPL, therefore you can expect that becomes part of every distribution eventually. However, Fedora does not provide any precompiled packages. The source code can be downloaded as a usual tar.gz, but since some of the build tools are very odd and are also not provided for Fedora I took a precompiled runs-on-all-linux package. On Ubuntu/Debian you might be more lucky, looks like there everything you need is provided.
However, the precompiled packages provided by virtualbox.org are not the same as the OSS version: they have additional features like an RDP server or USB support, but you have to pay to get a non-private licence for these.

The installation of the binary was no problem. I just had to execute it, accept a licence, and afterwards add my user to a new group called “vboxusers”.

Running VirtualBox

The interface is slick, clean and just plain easy to understand:

VirtualBox Main Interface

But you also get useful information about the virtual machine. And that’s not only true for the frontend, but for every dialog you’re faced with.
If you now add a virtual machine you are faced with a wizard asking typical questions (OS type, memory allocated, name, etc.). After that you can modify the settings for the virual machine. Again, you get a well thought dialog:

VirtualBox Settings Main

As you can see in the screenshot you get a tooltip in the bottom of the dialog. It informas you about every option you point at with your mouse as well as about any error currently existing within your configuration.
Other small but well made features make the whole GUI almost perfect. If you want to add a DVD iso image as a DVD in the drive of the guest system, you can open a DVD dialog which lists all DVD iso images you enter. After that you can pick the one you like. The same is true for block devices or disks.

VirtualBox DVD Settings

If you start a virtual machine the interface is a typical one. The menues at the top are to manage your virtual machine and the devices connected to it.

VirtualBox Menu VMVirtualBox Menu Devices

A window bar informs you about everything what happens at the moment (network traffic, mounted DVDs, etc.) but also shows the current key to free your mouse from the virtual machine.

VirtualBox Window Bar

Performance

From my subjective experience VirtualBox does not need to hide behind Vmware in any way. The guest system is pretty fast and works without any problem. Also, if you want to have a better performance or a higher screen resolution you can add guest system tools to improve the situation, similar to the Vmware tools you get with the non-free Vmware version.

Besides my subjective feelings the performance of both Vmware and VirtualBox seems to be equal. German heise.de run a performance test compiling the kernel and grepping a 100 MB file. The kernel compile gives information about the hard disk I/O and of course about the CPU performance, while the grep was done to give an impression of the pure read performance of the hard disk.

Performance Comparison
native VirtualBox Vmware
make 64:03 min 107:29 min 101:40 min
grep 6,7 s 20,2 s 18,1 s

Source: article VirtualBox at heise.de, 2007-01-15

Also, my host system seems to work much better with VirtualBox than with Vmware. The system responds all the time while I sometimes with Vmware have some hickups where the system does not respond at all.

Conclusion

Overall, I must say that I’m deeply impressed. VirtualBox is an awesome product, well designed, stable, fast – and Free Software. It offers everything you want from a Virtual Machine, and you get it wrapped in a perfect GUI – everything else I’ve seen so far is miles behind.
Additionally, there are features I haven’t even tested yet: you can control VirtualBox on a non-GUI base to run it as a server. Also, you can take snapshots and they are shown right in the main tab of your virtual machine settings.
Again – all Free Software! Sure, there are some functions you gain only when you purchase a specific licence, but I don’t think that this will stay too long…

I can only hope that the needed kernel modules find their way into the mainline kernel and the rest into the usual repositories pretty soon so that VirtualBox can be installed on every Linux machine in a second. It would mean an even stronger boost to virtualization, and it would mean a strong boost to virtualized desktops. It could become quite normal to have avirtualized desktop as well.

Update
AnRa pointed to the FAQ of VirtualBox – VirtualBox uses some code from the Qemu project. That’s Free Software.

26 thoughts on “Review: InnoTek’s VirtualBox [Update]”

  1. I too am quiet impressed and agree with your assessment 100%. I would also point out that the various Linux distros I have tested run much faster than they do on Virtual PC. I look forward to a promised feature that will translate virtual drives from Virtual PC and VMware to VirtualBox.

  2. well it would be interesting to see how this competes with VMWare and Qemu both used widely now for virtualization.
    with XEN,Vmware,Qemu and now virtualbox we have a lot of options now.
    Ambuj varshney

  3. I’ve been using VirtualBox now for about 4 weeks.

    I must say, the install is definitely easier that VMWare ever was. It’s also lighter on your system loading only 1 daemon instead of VMWare’s 3.

    My one caveat though, VirtualBox doesn’t make it very easy for you to use your virtual machine as a server. To get network traffic flowing INTO the virtual machine requires playing with TUN/TAP interfaces or something similar.

    I like this actually, because it makes for incredibly flexible network configurations. But it makes the learning curve a bit steeper.

    $0.02

  4. Thanks. I’ve seen this bug has been reported to virtualbox team. I’ve also another (very limited) workaround : use runlevel 3 to boot the machine then, use the “chvt” command to switch between virtual terminals. When you want to run graphical apps, always end your command by “&& chvt 1” or “&& sleep 600 && chvt 1” to come back to your text console… Yes I know it’s crap but it works 🙂

  5. I have this need during installation : sometimes, I need to mount/unmount my guests’s drive manually because virtualbox can “force/eject” your guest’s drive and linux doesn’t really like this. I also need it when I do a minimum (without X) install : then I only have text interface and I need to do several things at once.

  6. Hm, ok, that makes sense… :/
    One suggestion though: when you need more than one terminal interface you can also use screen. It is a terminal daemon which let you run several terminal session inside one terminal. You can even close the connection to the computer (for example if you login in via ssh) and reconnect later, the terminals inside the screen session will continue running.

  7. Thanks a lot for the tip ! I knew screen but I always forget about it. I think I’m gonna use it in my virtualbox images. A third problem I’ve not mentioned : when you have problems at the desktop manager (dm) level, you also need your virtual text terminals.

  8. Being a beginner to Linux and Ubuntu. I would say that I found it easy to install and run VirtualBox. I set up WinXP as a Virtual OS and it runs fast.

  9. I found VirtualBox as included in Mandriva 2007.1. Tried it, and was VERY impressed. As far as I could tell, it is just as fast as VMWare, and just as easy to load new machines.

    Not being able to print or fileshare with the host Linux system makes it rather useless for anything serious. I spent many hours trying to get the “host networking” mode working with TUN/etc. Never got it working 😦 But the NAT mode works very well for just plain internet access inside the guest system.

  10. I’m running this now on my F7 box – thanks for the help earlier liquidat.

    Windows2003 Server running in a window with shared files, etc runs like a charm. Only wish I could do what Parallels can do now, in terms of getting 3D-enabled drivers working. The one app which I’ve fallen in love with is Sketchup, and I can’t run that in any shape or form on my F7 box.

  11. I was disappointed when I tried installing and running on a winxp x64 machine. The installer just fails.

  12. The VMware hickups are due your kernel. It works extremely smooth and nice on the meant kernel version that doesn’t require patching. You can but blame the state that there are not stable kernel ABIs to develop the closed source modules for.

  13. troll: The fact that VirtualBox is open doesn’t mean a difference because VirtualBox isn’t part of the kernel yet and therefore has the exact same situation as VirtualBox.
    In both cases the module is compiled on the fly – and with VirtualBox there are no hickups, with VMWare there have been last time I tested it.

  14. Renditioner

    There are a few extras that IMSI have produced of late that either help out specific TurboCAD users, such as furniture makers, or greatly improve other products with IMSI technology.

    One of these is the IDX Renditioner. It is a plug-in for Google SketchUp that provides high-quality photorealistic rendering – fast and easily. Renditioner works directly within SketchUp and lets you control the materials, advanced lighting components, environments, background images. Renditioner is “one button” easy with 3 render options of Preview, Standard and Presentation. It is simple enough for novices and yet powerful enough for professionals. Powerful features are optimized in a jargon free interface. Simplicity paired with speed and working directly in SketchUp, means you can achieve design visualization objectives more quickly. Renditioner offers 16 megapixel renderings for large-scale printing and powerful presentation of your designs.

    It is available for Windows XP or Vista on the PC, and OS/X 10.4 or 10.5 on the Mac and runs on either PowerPC or Intel-based Mac computers. As an extra it obviously requires you to already have SketchUp, but will be fine on the free version as well as the Pro version 6.4x or later. Like all photorealistic rendering, IDX Renditioner uses a system’s RAM and CPU power extensively, and is not recommended on systems with less than 1 GB RAM, with 2 GB recommended. Being fully multithreading, dual core, quad core, or dual quad core machines will each improve system performance dramatically.

    SketchUp is a nice piece of kit, but with the edition of Renditioner it jumps from good to professional, and then you import the SketchUp drawings into TurboCAD to add another dimension.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.