I remember visiting a computer exhibition (CeBIT) in the very early 90s. In one booth they had some of the big Amiga systems (2000, I think) and at some point on of the booth's staff did the 3 finger salute (press 3 specific keys on the keyboard to force a reboot) on one of the machines. The machine was back up in what felt like an instant. I was amazed by that. They probably had setup the whole boot process via RAM (see "RAD" disk on the Amiga), but I hadn't any idea about that back in the days.
Still to this day I think this is how it should be. You want to switch ON your computer and it should be ready for use.
But what do we get? What feels like minutes of random waiting time. My Raspberry PI with Linux which probably eats 10 of those Amiga 2Ks for breakfast shifts through through a few 1000 lines of initialising output… my Mac which probably eats like 50 of those Amiga 2Ks for lunch… showing a slowly growing bar doing whatever… Why didn't this improve at all in the last 30 years?
It's the OS. About 10 years ago, I had an Asus EeePC, which was an underpowered piece of trash with a 32 bit Intel Atom CPU, but it cold-booted in less than 3 seconds. And by "booted", I mean completely booted, i.e. not like Android, where you have to wait a few more minutes until all the background services settle and the UI stops lagging.
Mine broke after a decade, or I would use it too I think. Just so neat to bring everywhere, I even got used to code on that thing. Albeit it was the later model with more normal keys, the original 701 was not great to type on, not because of the size (I got used to it) but it was something about the layout which was weird.
> They probably had setup the whole boot process via RAM (see "RAD" disk on the Amiga), but I hadn't any idea about that back in the days.
> Still to this day I think this is how it should be. You want to switch ON your computer and it should be ready for use.
Don't we already kind of have this? It's setup to be dynamic, and we'd ended up calling it "sleep", but it basically does what you're talking about, but dynamically and optionally, basically chucking the entire state into RAM (or disk for "hibernate") then resumes from that when you wanna continue.
Personally I've avoided it for the longest of times because something always breaks or ends up wonky when you resumes, at least on my desktop. The PS5 and the Steam Deck handles this seemingly even with games running, so seems possible, and I know others who are using it, maybe Linux desktop is just lagging behind there a bit so I continue to properly shut down my computer every night.
Macs on the other hand are extremely stable. In my 4 years of using my MacBook Pro M1 Max, I’ve only restarted during OS updates. There were maybe a handful instances where it froze and I forced restart. Other than that, I only put it to sleep every time and it works like a charm. I use it for heavy duty software development and experimentation with local models, so it’s even more surprising!
I'm using an M4 Macbook right now and I constantly have issues with USB devices (especially hubs) failing to work properly after sleep. Its very unpredictable too, I can't seem to make it happen.
Its actually kind of funny, because while people talk about how unreliable Bluetooth is, moving a few of those devices from USB to Bluetooth (like my trackball mouse) made the situation far more reliable. Sleep has been that bad.
The hardware Apple makes is incredible, bar none, which is why is such a shame the OS and application UX is absolutely horrible and continues to get worse with each iteration. If Apple would publicly support Linux efforts on Apple hardware I'd probably switch back in an instant. But until then, I guess I'll continue turning off my desktop at night, and waiting a whole of 15 seconds for the startup in the morning oh the horrors.
I have used Windows hibernate since Windows XP and never had an issue with devices after resuming Windows.
Within recent years on Windows 10 I have gone months without a restart, only hibernating my pc.
In the early days I used a custom built pc. In the later years(post 2005) I have only used laptops, mostly Dells with a sprinkling of Lenovos; if that matters.
I don't know why Windows now hides it from the power menu by default now.
I think it's mostly us with lots of external gear (mostly audio related) that things get a bit wonky, and if you're running graphic-heavy applications that you're trying to resume at the same time. For example, Ableton for the longest of times couldn't handle resuming from hibernation for me, seems to work today (Windows 11), but still having the same issue with a running Houdini window, resuming from hibernation does something with the communication with the GPU (my hunch) and the window freezes when resuming.
Windows prioritize phoning home and data collection over UX. If you have a corporate install you’ll also have negligent EDP software killing your boot times.
You can get fast boot times on linux if you care to tweak things.
Still to this day I think this is how it should be. You want to switch ON your computer and it should be ready for use.
But what do we get? What feels like minutes of random waiting time. My Raspberry PI with Linux which probably eats 10 of those Amiga 2Ks for breakfast shifts through through a few 1000 lines of initialising output… my Mac which probably eats like 50 of those Amiga 2Ks for lunch… showing a slowly growing bar doing whatever… Why didn't this improve at all in the last 30 years?