5 ms·
All of the answers here are missing something. In the old days, the OS was often on a ROM that was simply mapped into some unified memory location. Thus the sys
by bane 7y ago
All of the answers here are missing something. In the old days, the OS was often on a ROM that was simply mapped into some unified memory location. Thus the system went from a state of "off" to "ready to go" pretty much immediately. There wasn't a need to copy the data from the ROM to RAM and then execute some stuff to get into an initialized mode.
If you hunt around a bit for things like "atari 800 memory map" you can find diagrams showing how this all worked. In fact on some systems, you could selectively map certain things from ROM into the memory map to get more RAM if you wanted.
Today, the move to put the OS onto disk, the memory hierarchy, and virtual memory eliminate this approach. You basically have to let the virtual memory system map things from disk into some page space, and often things need to be copied into RAM, work their way up the cache hierarchy and be executed somewhere in order to set the system into an initialized state. I've honestly forgotten nearly all of the details so maybe somebody else can provide a better explanation.
So the reason computer can't boot instantly:
1) We have a complex memory system these days that prevent mapping the OS into the memory address space.
2) OS's aren't in ROM anymore. They sit on disk in a state different than when under operation.
3) Simple engineering willpower. Nobody wants to bother to figure it out because once the system is booted it doesn't really matter (with modern sleep modes and whatnot).
- Baeocystin 7y agoI am still waiting for the computing world to catch up to the instant-boot, straight-to-REPL joy that was my Commodore 128. I say that only partly tongue-in-cheek. The home machines in that era were right on the cusp; they were complex enough that you could do Genuinely Interesting Stuff with them, and simple enough that you could still hold the whole machine in your head. The instant feedback of REPL being the primary interface, and the almost zero-time cost of rebooting when an experiment didn't work out, made for a spectacular tool for self-learning.
- Dylan16807 7y agoGrabbing the kernel and login screen off of an SSD, then mapping the rest of what you need into virtual memory, is something that's easily accomplished in 100ms. If you design for 3-5 seconds of password typing that's enough time to grab gigabytes in the background. The complex memory system isn't the culprit here. It's one of the easiest parts to set up.
- animal531 7y agoI just built a new desktop PC (albeit with great parts) and it boots to a usable state in Win10 in just a few seconds. To be honest it's good enough to no longer worry about it. Of course mileage on a laptop with non-quality parts will vary.
- MrMember 7y agoWindows on an SSD is pretty amazing when it comes to boot time. My computer spends more time on the BIOS splash screen than it does booting Windows.