OS switch without reboot?


AquaAnalogue

Member
Joined
Jan 19, 2010
Messages
355
I'm considering posting this in a Linux forum, but I know there are a lot of knowledgeable people here and I noticed we have an off-topic forum so....


I've heard all about virtual machines and such, and I'm not interested in them. My only interests in Windows are getting my computer to use my webcam and printer properly and playing proprietarily-licenced games, two of which suffer under virtualisation. I am perfectly fine with the need to cross over for the games (not really for the webcam, and especially not for the printer, but that's an entirely different matter), but the problem is that every time I need to switch, I've got to power off, power on, and wait for the POST then for the bootloader, etc., etc. Yes, i know this is a comparatively small inconvenience when viewed against the whole of the world's troubles. You may call me impatient, lazy, and/or unfit to be the future of America, but c'est la vie, que será será and shou ga nai, ne?


In my earliest Linux days, I remember booting a really small version of linux called LOAF from within DOS-- you would type a command and it would literally forget about DOS and load the Linux kernel to your machine. Interestingly I never sought a way "back," perhaps because it was so easy to just turn it off and restart.


I know I have a tendency to be rather verbose, so without further ado, here is my question:


Is it even technically possible to do something like this today, now that our operating systems have grown so large?


and if so,


Is there a utility/script/program(s) I would use in both Ubuntu and Windows to switch between the two of them?


My instinctive answer to the first question is yes, but I have no clue as to the second. I'd guess that if the first question's answer is affirmative, the answer to the second is "Probably, somewhere."
 
Not that I've seen. I think there was something called coLinux that was said to run the Linux kernel and Windows kernel side-by-side. I have no idea what that was supposed to attempt, and I doubt they succeeded at all.


LOAF must have been one of those weird DOS-era hacks. Modern OSes expect to either be virtualized and have a whole VM to themselves, or have the whole physical machine to themselves. You can't just switch it out that I've seen, unless there's some odd hibernation trick, which would technically require a reboot anyway.
 
coLinux looks intriguing indeed. Yes, according to their (suprisingly recent) website, they have gotten it to work. It seems to run alongside the Windows kernel as a low-level "driver" (?) which seems cumbersome (i'd rather not have any dependence on Windows at all), but what is indeed intriguing about their approach (other than that it actually works) is that it appears to have nothing to do with virtualisation. It appears that the code actually runs at the basic machine level alongside Windows code, thus the "low-level driver" permissions that are needed. This is only what I get from the website at a glance, as I forgot about classes in the morning and I really should sleep.... heh.


You may be right, it may have been a DOS-era "hack"... in which case I may be up for an NT-era "hack" :p


What got me thinking about this was that I saw a screenshot of Canonical's Ubuntu-related project, Unity, basically Ubuntu for netbooks, and it had a menu option to "Start Windows". This got me thinking... a bootloader is nothing more than a little tiny OS that lasts for a few seconds whilst you decide. What possibly could a little bootloader have that a fully-featured OS like Linux couldn't? It appears that Linux will soon be capable of this sort of thing, which means that there's a way to hack Windows to do it, most certainly.


Also, to clarify: I am not after instantly switching between the two (though the hibernation idea presents a way that could work, with a lot of lag... you'd just need a dedicated "swap" file/partition that was double the size of your RAM). I simply want a way to boot into one from the other, or even a way to fall back to something like GRUB, without falling back all the way to the POST.


*yawns and retires for the... morning :p *
 
It's a shame you want to run Windows. I could easily see jumping between two linuces with kexec. It might even be possible to kexec a bootloader to load windows, but I dont know of an easy way out of windows.
 
Back in the days during the transition from DOS to Windows(at least in 3.11 and earlier, probably 95 and 98 as well), you could just exit Windows and you'd be back in DOS.


Basically, what you would need is a software reset on both platforms(Windows and Linux), probably something that loads during the low level stages in the kernel boot ups, that has the ability to whipe/reset the machine to "pre kernal boot conditions" and then load the bootloader(and have an option of turning off or hardware reboot the machine from the boot loader).


Maybe it has to be implemented on a hardware level, thus we need to contact some Mother Board manufacturer, and make it so that the OS's calls this MB reset function after all the critical processes shut downs of the OS.


And on that note, I wonder what usually is critical during shut down... aside from scandisk in Windows, the OS usualy doesn't seem to have any hickups after a power failure + boot. Same with Linux. Sure, save all your open documents to disc before shutdown is a great idea if you intend to keep the changes you've made.
 
mm perhaps with some para-virtualisation you can achieve this, like xen or kvm, but i really dont know if it is capable of running windows..


kisses


Mac
 
Back in the days during the transition from DOS to Windows(at least in 3.11 and earlier, probably 95 and 98 as well), you could just exit Windows and you'd be back in DOS.

Wasn't that because Windows was just a shell on top of DOS?


I have the exact same setup in Linux, I boot to a terminal and then run "startx" to open X11 / KDE.

Basically, what you would need is a software reset on both platforms(Windows and Linux), probably something that loads during the low level stages in the kernel boot ups, that has the ability to whipe/reset the machine to "pre kernal boot conditions" and then load the bootloader(and have an option of turning off or hardware reboot the machine from the boot loader).

I think hypervisors are something like that, but then we'd be getting into virtualization, and I think there is some performance cost.
 
Back
Top