If a "reboot" simply meant a few seconds where the computer is unusable, and then you get put back in the exact same environment with everything being exactly the same as before, I would probably think it acceptable, but the reality is very different.
(I worked on a micro-Emacs-clone, Mince, in 1981, that ran on a 64KB CP/M machine and had very usable auto-save -- on floppies! You can't tell me it's too hard.)
That's a cop-out. I'm about to start a number-crunching process that usually takes about a week to complete. Is that supposed to have some magic facility to be interrupted at any point and restart from where it left off, or at least somewhere close? How much of my time should I spend on that, given that I wrote the scripts so I'll be the one implementing any auto-save as well? Should I also reimplement the dependencies that are doing a lot of the heavy lifting, given that calls into some of that functionality can take considerable time to complete?
Oh, wait, I don't have Windows 10. Never mind.
I would expect the two markets to have very different requirements.
Neither of the above, though this specific type of work might be unique to the project in question for all I know.
I also don't know how many other projects with unusual or unique long-running tasks are out there. However, given that there are hundreds of millions of people, if not billions now, with personal computers, I imagine the answer is well into "quite a lot, actually" territory.
True enough, but so can a UPS and automatic sleep function in the event of extended power outage, and we already have those routinely installed anyway.