“Sit tight, Linux Users. User Mode Linux will soon have the same capabilities as Xen in the virtualization arena – like live migration, says Jeff Dike, author of User Mode Linux. Operating out of the Linux kernel port, UML enables the port to host multiple virtual operating systems. Speaking with SearchOpenSource.com, Dike described the pros and cons of virtual machines versus virtual operating systems and offers some advice on whether to opt for UML, Xen or VMware.”
While I’ve played with a lot of the virtualization solutions available for Linux, I haven’t ever used UML. I guess I got the impression that it’s crappy. I’m glad to hear it’s gaining ground.
I don’t really know how to classify UML. It seems like it’s somewhere between paravirtualization (Xen) and OS-level virtualization (OpenVZ, VServer, Zones). I think it’s closer to paravirtualization. If UML can achieve the low overhead of OS-level virtualization and offer live migrations across physical hosts, that would be very interesting. Other than that, how long will it take for Xen to hit the mainline kernel? Longer than it will take for UML to reach feature/performance parity with Xen? I don’t think so.
i take it that you could boot the machine with a scaled down linux install (console, drivers, UML) and then plug in a external hardrive containing a full linux distro stored as a UML “drive image”.
does xen work in a similar way? does it act as a basic os for the machine and then have every other os interact with the hardware thru it?
so i could in theory have a pda that allso contains a desktop distro setup, plug that into the xen machine and have a desktop os be booted on the xen machine?
should more or less eliminate the need for diffrent hardware profiles as the xen layer could present a generic set of hardware to the guest os then.
sounds like the perfect way to bring your work enviroment with you, where ever you go.
This sort of thing should work.
Xen works with a privileged virtual machine (domain 0) to provide services to the guests, access to virtualised hardware, etc. If the hosts you’re accessing are running Xen, then you should just be able to plug in the USB drive, run a few commands, and have the guest OS boot.
In principle you could automate this with hotplug, so that if there was a Xen virtual machine config on a USB drive then it will automatically boot, etc. What’s more you can do suspend-to-disk so that the virtual machine comes back in the same state where you left off.
The only problem is that Xen-native guests don’t have a framebuffer so you’d need to set up some sort of VNC connection (this is being fixed at the moment though – likely to see a framebuffer in the next release because the basic code is already written). Unmodified guests (e.g. Windows) can’t be suspended / resumed but this is also being worked on.
Suspending a guest to disk is quite a quick operation, so you could hit a button / hot key and have the guest suspend to your flash drive relatively quickly.
This sort of stuff should also be doable with UML with suitable implementation work – in fact, if live migration works it shouldn’t be too hard to get suspend-to-disk working.
Another cute thing is if you can do block device migration, you could run a daemon continually syncing your filesystem to your laptop (or UMPC, or whatever). Then when you want to leave, hit “transfer”, wait a few seconds for things to sync up and then your “desktop” has jumped to your laptop and you can just walk away. There’s some work related to this going on at the moment (and obviously similar techniques can be applied to migrate your work VM to / from home whilst you drive home in the car, if both systems are internet connected).
heh, i would say this gets more and more interesting by the moment.