One of the small disadvantages of using Ubuntu on the notebook that I carry when traveling is that some software, e.g. for network testing so far required a reboot to Windows. On my new notebook, I don't even have Windows installed natively even more so even that option, which I rarely used due to the hassle involved, is no longer available. But now there's a remedy!
When I tried to run Windows in a virtual machine (Virtualbox) on an Ubuntu host a few years ago it would work quite well but I had difficulties mapping USB hardware such as for example 3G dongles directly into the virtual machine to make them accessible to the software there. But it seems USB pass through has been significantly advanced since then. When trying again a couple of days ago I noticed that USB pass through for a number of USB 3G dongles and other USB devices from the Ubuntu host to Windows in the virtual machine now works like a charm.
USB 3G dongles recognized by Ubuntu and included in the network manager as a WAN network adapter are automatically detached when a Virtual Machine is started in which it's USB ID is configured for pass-through and the native Windows drivers immediately pick up the hardware. When the virtual Ethernet network interface in the Windows guest is deactivated its even possible to establish an Internet connection over the 3G stick and the guest machine becomes completely independent of the host's Internet connectivity. That in itself offers some interesting options for network testing.
Another cool feature of using a virtual machine for testing is the ability to take a snapshot of the OS in the machine before installing new software. Once done with the testing one click removes all changes. This prevents bloating and unwanted side effects drivers and software of different products can have on each other.
And for final comfort, the 'full screen mode' lets you forget quickly that you are working in a virtual machine while the 'seamless mode' runs program windows of the host and guest OS together on the host's desktop.
How nice!
Just for curiosity –
Will there be some performance problem if operated via virtual machine,
say, a longer latency or shorter queue in the VM?
As far as I can recall, if tested with a machine like 8960 (beyond R8), the performance need for PC/laptop is quite demanding; Otherwise, the peak performance will not sustain.
Hi Alfred, good point! VM performance depends on the machine. On mine, which is not very high end, I saw it level off at around 20 Mbit/s over the passthrough USB, i.e. not good enough for performance testing beyond Release 6. Perhaps it can still be tweaked, it needs to be checked. No delay difference of packets though. Martin