Version 5.0 of the open-source virtualization software VirtualBox was released on July 9, 2015. This is the first major release of VirtualBox since 2012, and it contains substantial improvements that quell concerns raised earlier this year about Oracle's commitment to the software, which was acquired as part the purchase of Sun Microsystems in 2010.
New features in VirtualBox 5.0
Paravirtualization and improved host support
The biggest change in VirtualBox 5.0 is the introduction of paravirtualization support, bringing higher performance and time-keeping accuracy to supported guest operating systems (Hyper-V on Windows and KVM on Linux). Support is now included for NDIS6 driver API, which is used by default on Windows starting with Vista. Also, VirtualBox has a new audio backend for better support.
Additional instruction set support
Newer instruction set extensions are now available to guest operating systems when using hardware-assisted virtualization (Intel VT-x, AMD-V, or VIA VT) and nested paging. The additional instruction sets include SSE4.1, SSE4.2, and AES-NI, as well as POPCNT, RDRAND, and RDSEED.
Support depends on the host processor implementing the necessary instructions on the silicon. Generally speaking, most processors introduced in the last five years support SSE4.2. AES-NI support was added to Intel processors starting with Westmere, and starting with Bulldozer on AMD.
Disk image encryption
With the installation of the VirtualBox Extension Pack, it is now possible to encrypt the virtual disk images using AES256 on the physical drive in which they are contained. The disks remain encrypted even while running.
USB 3.0 device support
VirtualBox 5.0 adds full support for USB 3.0 devices via the Extension Pack. Previously, support for even USB 2.0 devices had been a pain point, as devices would operate far slower than expected.
In addition, VirtualBox has improved support for USB hard disks.
Bidirectional drag and drop
Although previous versions contained some level of support for drag and drop support, bidirectional drag and drop support has been improved for Windows, Linux, and Solaris guest operating systems.
Version 5.0 adds a HiDPI program icon, and an improved interface for HiDPI displays.
Installing VirtualBox 5.0 on Fedora 22 using the official Oracle repositories was a trivially simple task. Compared to installing VirtualBox on Windows, no restart was required after installation. The kernel mods required to use the program compiled without complaint; when compared to the task of installing closed-source graphics adapter drivers, this was completely painless.
The GUI for creating a new VM is similar to previous versions, though it provides odd default values. When creating a new Windows 7 64-bit VM, the wizard recommended allocating 512 MB of RAM to the VM; the minimum requirement for Windows 7 64-bit is 2 GB of RAM, making the recommended value inadequate. The host system has 8 GB RAM, over half of which was free at the time the wizard was started. The audience for VirtualBox is IT professionals who would likely know better than to attempt to use Windows 7 with that default value, so it is not a particularly substantive issue.
Using VirtualBox on a self-built AMD desktop with a relatively standard 1080p monitor caused no issues, as standard 96 DPI displays are well-supported in practically any desktop environment. There is a pain point in the GUI when used on a HiDPI display, as found in the ThinkPad W550s. Presently, proper HiDPI support is limited to programs designed for the GTK3 framework. As VirtualBox is designed using Qt5, icons render improperly, but text scales correctly, giving an altogether less than optimum view of the program. Other Qt5-based programs, such as Skype on Linux, suffer identical issues.
Scaling support, which is new to VirtualBox 5.0, works particularly well for operating systems such as Windows 2000 that have no awareness of HiDPI displays. Although this comes down to personal preference, there is no anti-aliasing filter enabled when scaling to 200%, but it is enabled when scaling is set to 110%, 125%, 150%, and 175%.
What's your view?
Do you use VirtualBox for your virtualized systems? Do you prefer the proprietary VMware Workstation product, or do you use a libvert-based system such as Boxes in GNOME-based Linux distributions, or VMM? Share your thoughts in the comments.
James Sanders is a Java programmer specializing in software as a service and thin client design, and virtualizing legacy programs for modern hardware.