Virtual Machines Coming To A Mobile Near You?

Sun's announcement earlier this week about adding teleportation—the abilty to move virtual machines (VMs) between platforms—in VirtualBox 3.1 could well have implications for mobile users. Developers positively hate having to deal with the massive number of mobile platforms. A cross-platform hypervisor that ran on mobile phones would shield them from those intricacies and allow users some pretty interesting capabilities.

December 7, 2009

3 Min Read
NetworkComputing logo in a gray background | NetworkComputing

Developers positively hate having to deal with the massive number of mobile platforms. A cross-platform hypervisor that ran on mobile phones would shield them from those intricacies and allow users some pretty interesting capabilities.

Imagine, you're working on a document on your desktop at work, but you're not going to finish in time to make the train at home. So instead of having to transfer files and synch the laptop, you just move the VM from the desktop to your netbook. You could be typing a document or e-mail on your Smartphone and instead of having to finish typing on the cramped keyboard of your Smartphone you could just move the application to your office desktop. Or suppose you were listening to music on your mobile and wanted to continue listening to the song on your desktop. Just drag over the VM from your mobile to desktop and never miss a beat.

Sun doesn't offer a version of VirtualBox for mobile platforms nor is there a mobile version of Xen, and there's good reason to believe that such a move may be impractical. But VMware introduced its Mobile Virtual Platform (MVP) last year. Open Kernel Labs provides a mobile-specific virtualization platform, the OKL4.

Of course, moving VMs between platforms is more challenging because of the difference in chipsets.  The mobile space is mostly ARM and x86s on netbooks. There are alternative approaches though, says Gernot Heiser, CTO of Open Kernel Labs. "One would be to do on-the-fly translation of code/data during migration. That would be technically hairy and probably require the app to move to a defined state before migrating, something that breaks transparency for the application programmer."

A much neater solution, he says, would be to leave the VM where it is, but make use of virtualization in a different way: mapping from virtual to physical devices. "When a VM does I/O, the [guest] OS doesn't normally access devices directly. Instead, it talks to some virtual device, and the hypervisor maps these requests somehow to actual I/O operations on the real device, which may be shared by many VMs.Instead of the hypervisor mapping a VM's I/O requests to actual operations on the real devices, he says, the hypervisor could "send the requests to a proxy virtual device on a different platform (say from the phone to the desktop) where they then get converted to actual I/O." This would certainly work with the email example and wouldn't be too hard to implement with OK's present mobile virtualization technology. High-bandwidth latency/jitter-critical I/O streams (such as audio in the music example) are a bit of a challenge in this scenario, but in that case it would actually be easy to just save the (very small) relevant state of the player and restart it on the other platform.

Heiser wouldn't say whether such an implementation was in the works. Yet, given the market for applications and the trend towards mobile-desktop integration, we wouldn't be surprised. A number of hurdles will be crossed, but those will be addressed a lot sooner than you being able to say "Beam me up, Scotty."
 

SUBSCRIBE TO OUR NEWSLETTER
Stay informed! Sign up to get expert advice and insight delivered direct to your inbox

You May Also Like


More Insights