VirtualBox
Mandriva and Virtual Box
I just installed a Mandriva 2010 VM under VirtualBox, and to my big surprise, when it booted up, it was already "ware" of my Virtual Box environment. Things like grabbing (and releasing) the mouse and resizing the X11 window just worked right out of the box, no need to install the Virtual Box guest additions. Pretty impressive.
Haiku on VirtualBox and networking
I was playing around with Haiku (BeOS revival) under VirtualBox, and was trying to get networking going. To make a short story long, the "trick" is to pick a device to emulate other than the default in the VirtualBox setting. For me, the Intel Pro/1000T server works great, in the "bridged" mode at least. Cool!
FreeBSD on VirtualBox
I wanted to install a FreeBSD 7.0 system under VirtualBox, so I downloaded the ISO images (via Bittorrent). However, I couldn't find a bootable DVD ISO image, just the CDROM ISO images, which splits the distribution up into 4 different ISOs. This was awkward to handle with VirtualBox, so I decided to try to merge these into a DVD ISO. This turned out to be fairly straight forward, by simply copying all the content into a directory on my Linux box, and then create a bootable ISO image.
For details, see the script available at ftp://ftp.ogre.com/pub/leif/bsd/make_fbsd_iso.sh
Update
FreeBSD (at least v7.0) is incredibly unstable under VirtualBox. This seems to be a long time outstanding bug with Virtual Box (see VB ticket), which still seems to exist in v2.10. I've tried a few of the suggestions, but nothing seems to really help (although, I haven't tried the FBSD kernel "patch" to work around this bug). Quite annoying...
Comparing different Unix distributions performance
Introduction
This is an ongoing set of benchmarks against various Unix (Linux, Solaris, MacoSX etc.) distributions, trying to get a feel for how they compare on CPU performance. This is by no means a complete test, I'm only running a few benchmarks on each distribution, and I'm primarily only looking at raw CPU performance. Also, in order to make this reasonably easy for me to handle, all tests are done inside a VirtualBox virtual machine, and only one CPU is ever used (meaning, the tests don't show how well the Unix flavor manages SMP.
Setup
The test system is a Linux FC9 box, with a Core2 6600 CPU running at 2.40GHz, with 4MB of cache. Each Unix distribution is installed in a VirtualBox (v2.10) virtual host, with 512MB of RAM (plenty for all tests). All Linux distributions were updated with all the latest patches available at the time of the test, running whatever kernel, compilers and libraries available at the time.
Benchmarks
Each benchmark is run three times on each distribution, and the best result is picked from each test. Currently the only benchmark I run is the ByteMark, called nbench. The source for this is available at http://www.tux.org/~mayer/linux/bmark.html . As mentioned before, this not only benchmarks the kernel, it also exercises the compiler suite, and supporting libraries (e.g. glibc). But then again, someone picking a distribution probably wants to see the "whole picture", right?
Next steps (and caveats)
I'm planning on running lmbench on these machines as soon as possible, to see if those numbers shows any more significant differences. I'm also planning on adding benchmark results for SUSE, which is a popular Linux distribution. Unfortunately I can't test MacOSX on this hardware, since I can't install it under VirtualBox. In particular, lmbench would probably be more useful without Virtualization, for testing how well the system behaves on things like disk I/O, network and SMP scalability.
With time permitting, and if/when I can free up the hardware, I think it'd be useful to do these benchmarks without virtualization involved. It's unclear today what impact VirtualBox has on these benchmarks (but, I'm hoping it's relatively fair across all the distributions). When Michelle lets me upgrade my desktop, I'll use the old system for rerunning these tests.OpenSolaris and ZFS
I use VirtualBox to run various Unix distributions on my home desktop. I had an OpenSolaris installation that somehow got unbootable during a regular package upgrade, and unfortunately I had some files (package info files) on my home directory, that I really wanted back. Since I couldn't figure out how to make this installation bootable again, I started with a fresh OpenSolaris installation (under VirtualBox), hoping that I could somehow mount the old VDI. And yes, it did work, after some experimentation with the zfs and zpool command line utilities.
The first thing I had to do was to configure VirtualBox to make the old VDI (disk partition) available to the new OpenSolaris installation. This is really easy to do, so I'm not going to go into details here. Once that is done, the new disk showed up as "c0d1", so now I had to figure out how to activate the ZFS pool. Since this pool has the same name (and mount point) as my new OpenSolaris installation, it turned out to be a bit trickier than I thought. First of all, I had to find the pool ID of the pool, which you get by simply running zpool import. This is the easy part, and in my case, the ID was "9894566475259874708". Now, to import this pool, we have to rename it as well:
# zpool import -f 9894566475259874708 lpool
The -f was necessary to force it to do the import, since it still seemed to think that I wanted to import over the existing rpool name. And, I also got warnings about this with the -f option, but it seemed to be harmless. Once this was done, I had to change the mountpoint of the home directory to something else (e.g. "/OLD"), and finally I could mount it:
# zfs set mountpoint=/OLD lpool/export/home
# mount /OLD
Voila!
KVM/qemu vs VirtualBox
I've been fiddling around with various virtualization systems, including VMWare, Fusion, Xen, Qemu, KVM and now lately, VirtualBox. To my surprise, there's virtually no (pun intended) difference running it natively on FC9, or under either VM (Ubuntu). It's possible Ubuntu is just "faster" than FC9 since some VM tests were actually faster, so maybe I really ought to run this test with an FC9 VM instead. Also, there's very little, if any, difference between VirtualBox and KVM performance (which is good, because I like VirtualBox a heck of a lot more). I ran the VirtualBox benchmarks both with, and without, VT-x support, VT-x seemed marginally faster, although it's probably not statistically "safe".
Here are the numbers:
Native FC9 |
VirtualBox Ubuntu8 |
VirtualBox w. VT-x enabled |
KVM/qemu Ubuntu8 |
|
| Integer | 54.273 |
54.730 |
55.337 |
54.312 |
| Floating point | 43.196 |
42.843 |
42.495 |
43.063 |
The Bonnie++ I/O benchmarks are equally impressive for VirtualBox, most tests are as fast as the host OS (or faster ...).
On top of being very fast, VirtualBox is also the easiest to use free virtualization software I've tried, so far. It even supports PulseAudio as an audio driver! This feature alone makes it very attractive, since my FC9 host system is completely migrated to PulseAudio, and now my virtual machines now seamlessly supports sound as well.
I'll blog more about PulseAudio as I learn more, but it's a really neat little package. I really hope it'll clear up the Audio mess that is currently in Linux/Gnome/KDE. This could be the sound server to control it all.