4 ms·
> No matter what, loading up 2+ GB of ram will always take noticeable time. Barely so. NVMe sequential throughput is measured in gigabytes per second. So you c
by the8472 3y ago
> No matter what, loading up 2+ GB of ram will always take noticeable time.
Barely so. NVMe sequential throughput is measured in gigabytes per second. So you can get this under 300ms. And you can optimize the order in which things are loaded so that the important ones arrive first, not all in-memory data is hot.
What makes booting take time are serial dependencies between boot stages, timers (boot prompts for humans, but also for hardware to power up), careful device enumeration and initialization and stuff like that.
- hwillis 3y agoYep. Keep it all hot. North/southbridge, controllers, everything. Skip POST. If something has changed we can just restart once it's warmed up. Anything that still needs a traditional boot (eg a disk drive) we just be assumed to have not changed until proven otherwise. Fuck the MBR. Fuck ROM and BIOS and CMOS. If you don't need to do it between RAM frames, you don't need to do it until you're told to reboot. If you've been unpowered all day, or if your hardware has changed, or you're worried about security, then you can choose boot from scratch. The only other reason, IMO, is because the computer has just been put together. If all those parts can restore their previous configuration, all they have to do is signal "yep, I'm still in the same configuration" and we should be able to pick up where we left off (again, except for disk drives/ram/networking etc).
- the8472 3y agoI like the clean slate we get from boot-from-scratch. Some pieces of hardware have subtle state corruption issues that can accumulate over uptime (kinda like Windows) that get flushed out by a reinitialization. Instead as much as possible of the boot process should be taken off the critical path and be treated more like hotplug/optional peripherals. Those HDDs? They can spin up while I'm already logged in (assuming they're not the boot drive).