I've decided to switch over to Linux as my primary OS. However, some stuff just doesn't run on Linux or Wine, so I've been playing around with virtualization.

I don't have that amazing of a system, and it's a laptop, but I've found that modern operating systems like XP and OSX (don't tell Apple!) run very well under virtualization, while doing other tasks in my host OS (Linux).

So, I had this idea. What if all OSes were virtualized? This way, you could just install as many OSes as you wanted, without messing around with partitioning or anything. What's more, you could run any of them concurrently, and switch between main OSes easily.

I've been thinking about ways to implement this. The virtualization software should take place at as low a level as possible, to cause the least drop in performance. My first thought was BIOS, but that's probably too low, since no device drivers are implemented. An OS would be too high level, and wouldn't really change anything.

But what if Linux were stripped down to the least necessary components to run a VM? It could be installed on one small partition, with another large partition for all the virtual machines, and with a quick startup, it could effectively act as a super bootloader, and you could boot up two or more OSes at once.

Advantages to this approach include:

--Viruses can't escape the virtual machine, meaning the other OSes are safe and the computer will never be rendered unbootable.
--As many OSes as your computer can handle, running concurrently.
--Complete backups of an OS are as easy as copying one file.
--Incremental backups are easy to track. They are already implemented in VMs such as VMware.
--It's much easier to install new operating systems without any risk of messing up other OSes.

Any ideas? Suggestions? Criticisms?
They already have that. In fact, that is quite common for servers. Its called a Hypervisor. Indeed, its the way pretty much all virtualization works.

Some hypervisors work like this:
Host->hypervisor->n guests

Others like this
Hypervisor->host + n guests
Where the only thing special about the host is that it has the drivers for the hardware.

The specifics of how the hypervisor works varies, and that is where it can get rather complicated, so I won't go into it.

There are already modified versions of Linux just for being a virtual host.

As for why this doesn't work outside of servers, because quite simply, it sucks for general desktop work. Most users have zero need to use another OS. Most users want responsiveness and pretty colors (the video card's GPU can't be truly shared across multiple virtual machines - just isn't possible). Such systems are also a nightmare to setup, and can cost a fortune (more than a crappy Dell, anyway).

And the major sticking point for why it isn't wide spread is because virtualization incurs a performance hit, and that can't be fixed. There is already hardware support for virtualization (pretty much all Intel and AMD CPUs support it now), but it doesn't help much (in some cases its actually slower than the old way). Virtualization also requires a lot more RAM, and there is the problem of sharing hard drive partitions and all sorts of crap.
Oh...all my cool ideas get stolen by time travelers and implemented in the past! They get me every time! Evil or Very Mad
magicdanw wrote:
Oh...all my cool ideas get stolen by time travelers and implemented in the past! They get me every time! Evil or Very Mad


its like you're Rodney McKay or something Wink
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement