You are here.

Mega-ZBlog header image

Software Picks: VirtualBox

December 18th, 2008 · 17 Comments · Software Picks

I should try to write a post everyday, and today I was messing around with VirtualBox. I also should write some new software picks, and I want to try out Windows Live Writer for this post. So here we go!

Edit: Windows Live Writer totally broke all the HTML in my post. So yeah I think I’m done with that.

First a small change to Software Picks from now on… I will first explain the type of software this is and what it does, then pick out some good examples (all free software, and usually all for Windows), and then explain why I like my favorite choice over those. Feel free to scroll past parts you don’t care about.

I am talking about virtualization software here. This is the idea of speeding up emulation of one type of hardware running on the same type of hardware, but abstracted away, so you can have your main OS running, but then have another OS (a “guest”) running in a sandbox where it can’t affect the “host”. Virtualization is faster than emulation (where the emulated hardware could be different from the host hardware) since you can make assumptions and optimizations based on similarities between host and guest.

I would also group virtualization software with PC emulators since that’s mostly what’s being emulated/virtualized.

In layman’s terms, you can run Linux or Windows or DOS or any other PC OS without having to format your hard drive or reboot or in any way affect your computer other than being just another piece of software. Cool, right?

First example of virtualization software is Virtual PC, Microsoft’s offering. Like much Microsoft software (Internet Explorer, MS-DOS), they bought it off of another company and continue to improve it.

It was my choice for a while, but it lacks some of the flexibility of guest hardware choices that other programs offer. It also is optimized for Windows, meaning Linux will run horribly on it, and some distros like Ubuntu require special boot strings to boot correctly. However I still use it to run Windows 3.11 occasionally (last I checked VirtualBox had a bad freeze bug with it).

From VMware there are two free products of interest to the desktop user… Player and Server. Both are free. Server is the more full-featured of the two but it puts more hooks into Windows and installs more services which are always running… I don’t like that kind of thing. Player on the other hand is lighter but also limited as it cannot create new virtual machines, which would be an instant deal-breaker if not for the resourcefulness of the Internet. Unfortunately even with that you’ll still have to break out Notepad to tweak Virtual Machine configurations… not too fun. On the bright side we get USB device support and more hardware tools.

Next we have QEMU, the only emulator on my list. What this means is though QEMU is slower (you can download a kernel driver to help speed it up) it will run on a wider variety of computer architectures.

Only problem is, it’s a command line interface, and I usually have to consult the docs to figure out what I need to type. But it is chock full of features if you are comfortable with the command line.

The main problem is that there is no official Windows binaries, so when trying to use the KQEMU accelerator kernel driver, it can be difficult to find a version that matches up. It is also the slowest solution still, being an emulator. The built-in interface for changing virtual discs and so forth is ALSO a console interface, making it tough to use again. I also find myself constantly going back and forth between doc files trying to remember where I saw that command I was looking for.

Basically if you’re not comfortable with using the command line… don’t consider QEMU by itself. There are several GUI frontends available which probably make things a lot easier (Google around for them). I was actually making one once, but I lost interest and unfortunately for that project I have moved on to VirtualBox.

VirtualBox is my pick. It has a decent array of hardware options, it runs Linux about 5 times as fast as Virtual PC, it has Guest Additions (drivers for a guest OS which integrate it with the host OS) for Windows and Linux, multiple networking options, USB devices in guest OSs… and some cool stuff like “seamless modequot; (just try it!) It also runs on Windows, Mac OSX, and Linux (as Host OSs, now) which is great because now I can use the same VMs when I boot into Linux.

The virtual disk manager is a bit annoying at first and seems to be in the way, but once you add all your disks to it it becomes quite useful as it aggregates them all in one place so you don’t have to browse all over to find the CD ISO./p pAn update today replaces the TAP driver used for Host Interface networking (used to make the virtual machine appear on your network just like any physical machine) with a network filter… much “cleaner” which I like, and has the advantage of allowing multiple VMs to use the same network adapter.

More interesting is the new OpenGL 3D acceleration. I did some benchmarks on my Host OS as well as a Windows 2000 Guest OS using a 7-year old benchmarking program I found. The results are here. Don’t view the source of that page… I didn’t write it, and it’s quite ugly.

It’s not a perfect benchmark (I couldn’t turn VSync off in the VM) but it looks good enough to run Half-Life or even Quake 3-engine games at full speed.

Tags: ···················

17 responses so far ↓

You must log in to post a comment.