Virtualised Everything

A recent technology that I keep thinking about is virtual computing, which in my opinion could open up all sorts of really moxious opportunities.

With the advent of multiprocessor (multi-core) consumer processors, I’m wondering how far could virtual system performance be pushed. Currently there are a few solutions that are pretty fast already. A comparison page on Wikipedia states that “[…] coLinux, Xen, z/VM (in real mode) do not suffer the cost of cpu level slow downs as the cpu level instructions are not proxied or executing against an emulated architecture since the guest OS or hardware is providing the environment for the applications to run under.”

With something like the Cell Broadband Engine Architecture, what sort of software could be written in terms of virtual computing? With about four processor cores (which are further divided into eight “APUs” per core), I’m sure it would be more than capable of running a virtual machine without a noticeable performance bottleneck.

Let’s imagine going beyond a server running within a server. How realistic would an operating system that would specialize in running everything in a virtualised layer be? I heard from a site (to which I no longer have a link to), that the XO computer launches new programs in a virtual sandbox in order to protect the rest of the system. This is very interesting, and I wonder how a system that loads other systems, purely to support a running application, work. Instead of running an application in a sandbox, how about running it a Solaris application in a Solaris sandbox?

I’ll illustrate what I mean. You have an application that requires a Solaris system to function. A Solaris sandbox would start, in order to load any software that requires Solaris. Perhaps even start just the essential pieces of Solaris required for the running programs to function properly.

Lower level system calls would have to be forwarded to the parent system, which in turn would send that to the real hardware. How could this be achieved without rewriting existing software?

That’s where technologies like Intel VT and AMD-V come into play, allowing software to delegate some of the virtualisation efforts to the machine, which Xen takes advantage of.

Now we see hardware making the leap forward here, what about software?

Added on May 5th, 2008 at PDT 21:31:34!
  1. <mr. magoo>

    Of course everyone knows that VI is the best text editor in the world. Anyone
    who tells you differently is either wrong, lying, or criminally insane. (Or an
    Emacs user, in which case they are wrong, lying and criminally insane).

  2. <DJ>

    EMACS is for the k-rimi-nelly insane. That’s why I use ED.

You need Flash Player 8 or above to comment here.