What is technically wrong with fast OS switching?

An application (fast switcher) stays resident before the OS starts, and will be activated using a key combination (for example: Ctrl + Alt + Shift + Esc). After detecting the key combination, the switcher runs and stores all system registers + RAM (maybe use a RAM offset to avoid saving RAM into file) into a file and switches to the other OS register + RAM.

So it would be a fast OS switch without requiring a PC restart.

I want to know what is technically wrong with fast OS switching (remember hibernate).


What you are describing are some of the (more minor) features of a Type 1 (or baremetal) Client Hypervisor - there are a few out there at the moment but most of those do not run on x86 or traditional PC platforms. The big players in the x86 Virtualization market (Citrix\Vmware\Microsoft) haven't released any yet but there are solid indications that both Citrix and VMware are actively developing them.

There isn't much demand in userland for these because (as others have said) you can pretty much achieve all of this with a Type 2 Client Hypervisor. There is a belief that these will be popular in business environments though for the same reasons that they have found a niche in some embedded\mobile platforms - they should provide for simplifying manageability and support. You can find a relatively old (late 2008) blog post about the prospects for Type 1 x86 Client Hypervisors by Brian Madden here.


Not terribly interesting to most people since you can just spin up a VM of almost any OS inside any other nowadays. RAM is very cheap too. If not for RAM and virtualization, this idea might be worthwhile. However, I don't see it gaining much traction in today's market.