Microscopic virtual machines becoming a reality


WIRED:Like a picture in a picture, a virtual machine is an image of a computer running inside your computer, writes DANNY O'BRIEN

THE MARCH of technology seems to me, sometimes, like the descending march of everything into tinier objects.

That’s how I feel about USB flash drives. I bought a Pico USB flash drive the size of my little fingernail the other week. It stores 16 gigabytes, which, apart from my music and e-mail archives, is pretty much all the precious data I own. There’s something disturbing about squeezing my entire life (and most of my laptop drive) into a device the size of half a stick of chewing gum.

It gets worse. My hobby these days is toying with virtual machines.

Virtual machines are the entire state of a computer, frozen into a memory file, and saved. You can run them in the corner of the memory of your PC. Like a picture in a picture or a baby in a womb, a virtual machine is an entire, self-contained image of a computer, running inside your own computer. You can have as many virtual machines running as you want and that your computer can bear. I’ve seen Mac laptops running Windows 7 in one virtual machine, Linux in another. And that Linux image is, itself, running a simulation of the veteran Commodore 64 microcomputer, just to be perverse.

The virtual machine image I have stored on my hard drive, though, is a replica of my laptop; or, at least, I’m trying to make it so. I keep tweaking it, improving its similarity, trying to make it a little independent version of the environment I use every day.

When that virtual machine is a perfect clone of my laptop, my plan is to copy it on to that tiny fingernail of a flash drive. Then, whenever I need to have the same desktop environment as my laptop on another computer, I can just run that virtual machine. My virtual machine won’t touch the contents of the computer I run it on, and that computer won’t be able to invade the replica of my desktop. I’ll be able to carry around everything that makes my computer mine and use it to recreate that environment wherever I go.

Of course, the virtual machine won’t be a perfect copy. If I work on documents using my virtual machine, my home laptop won’t register the changes. But if there’s something that excites the companies that make virtualisation software, its migrating data between images.

Already, I can take a virtual machine image and migrate it to another computer on my network. In other words, I can start working on a document on the machine in front of me, and then magically move everything about all the programs I’m running to a machine on the other side of the house. Then, when I’m done, I can freeze that image, and drop it back on to my fingernail drive again.

I don’t even need to have a local computer to run this virtual machine. While what I’m doing with my laptop is somewhat fiddly, companies such as Amazon have turned their virtualisation services into a simple, user-friendly art. Amazon runs a service called EC2, the elastic compute cloud.

With a few buttons I can create one, two or 200 virtual machine images, and run them all at the same time. They don’t exist on my home computers; they exist on Amazon’s vast servers, somewhere on the US west coast (or Ireland, if I move my images there). I pay for minutes of used computer time, but I can economise: choose smaller virtual computers, or only run them at cheaper, off-peak times.

If this is one of these Wired columns that gives you a headache, I sympathise. I’ve been playing with this technology for years, and it still gives me a sense of vertigo. I don’t really imagine computers will get much smaller (the phone screen is about as tiny as a general- purpose computer can get, I think). But these images, which represent everything I do on a PC, are effectively microscopic. They can flit around from Amazon server to Amazon server. I’m currently trying to work out whether I can move the images that I have running on my laptop out on to the Amazon cloud. If I can, perhaps one day I’ll be able to just work on a virtual machine on my laptop, constantly synchronising with a clone out there in Amazonia. If my laptop dies, I’ll just be able to switch to the remote copy, with minimal data loss.

Or perhaps I’ll want to upgrade to a new computer, but will be too old to comfortably switch to an entirely new operating system. Instead, I’ll just move my current image on to that powerful new platform. So rather than learning new tricks, I’ll be able to preserve all my old ones – desktop settings, e-mail clients, browsers and all. I’ll just stay with my virtual past, getting smaller and slower with it.

Maybe that’s the future: being able, at last, to stop the march of technology and stick with the past.