Software

VirtualBox 2.1 changes review **UPDATED**

One of the finest pieces of software I've been using lately is VirtualBox. It has a few quirks, steadily being fixed, but it's probably the best virtualization software for PCs. On top of that, it's free for personal use.

Among the said quirks, Virtualbox's NAT network interface for the guest had a few problems: the most annoying ones are the lack of "ping" support(ICMP) and the inability to use VPNs. Some crashes when using NAT were fixed, the VPN problems with NAT persist, but there's a twist: the ability to use host interface networking(HIN) has been greatly improved - you don't need to use bridges in windows or TUN/TAP on Linux hosts anymore.

As for the greatly improved HIN, it is indeed easier to work with and it even worked well when using a wireless interface as source, something I wasn't expecting. Typically, wireless drivers for Linux(the host test system) don't work well with bridges, causing all sorts of strange behavior. Whatever Virtualbox is using for the host interface networking, it worked like a charm.
My Windows XP guest even acquired it's own IP, given by my wireless router and not an "unknown" IP network; just remember to update the "Guest additions" also to the 2.1 version or you won't have networking fully functional.
Below, a list from which you can choose from, in this case a TUN/TAP interface, vbox0, and wlan0, the wireless interface.


For reference, and older versions, I leave the more complex work that had to be done to have proper networking on a guest OS, via TUN/TAP and Iptables:

mypc ~ # modprobe tun
mypc ~ # tunctl -u **USERNAME** -t vbox0
Set 'vbox0' persistent and owned by uid 1000
mypc ~ # ifconfig vbox0 192.168.10.1 (network for which dnsmasq is configured to work with)

mypc ~ # /etc/init.d/dnsmasq start
mypc ~ # /etc/init.d/nat start

This way I have the "tap" interface, to which I can access and NAT to, an iptables/linux NAT, which allows me to have ping and VPNs fully working.
But enough with this, it's useless now.

The other great feature touted for the 2.1 release is OpenGL acceleration for Windows guests. This didn't quite work out, but it's still deemed experimental. Here's a quick Quake 3 console screenshot, showing the lack of success this time:


OpenGL acceleration worked remarkably well, after enabling the proper "tickbox", previously missed:


Using the Quake3 demo, with "Normal" graphics settings, the performance was good, especially for an experimental feature:


That's 56.5 FPS, on a GMA950 laptop with a Core Solo T1300, using only 32MB for shared graphics memory. Running the benchmark on Linux return a result of 97.5FPS. This last result was of a newer version of the Linux client, since I couldn't get the demo to work due to updates to "tail": the installer would simply fail. For this, the performance of the native run could have been lower if I used the same, older, version.
Still, the virtualized performance is of about 60% of the native performance, a very good result for a feature that's still work in progress.

DirectX acceleration isn't available for now but it's in the plans for a future version.


Virtualbox is the best virtualization software available for PCs, it really is. Especially when you need it to run on laptops or desktops which have C-States support and/or clock frequency scaling: while VMWare will have serious clock and usability issues, Virtualbox is as fast and smooth as you can possibly ask from virtualization software.

The full changelog is available here.

2 comments:

Erik-Jan Vens said...

I didn't know about the Guest Additions-update and have been struggling to get my network-printer to work. I only got very strange error-messages from my printer on an Illustrator document that normally prints fine.
I spent two days trying to find Windows-, Illustrator- or Epson-related solutions until I read your comments. I installed the new Guest Additions and everything works like a charm again. I have much faster network now. Virtualbox is great.

Anonymous said...

VirtualBox still has "fast clock drift" issues for some guest OS'es. Notably those that do not have guest additions.

Post a Comment