Because it is easier to have it work that way.
Updating involves replacing files that the operating system is currently using. Now it is possible to write an OS so that it can swap those files out with a reboot and there are now some versions, of some OSes that can do it.
But it is a *lot* easier to write an OS if you don’t attempt to support that.
All the popular OSes in use at the moment started out having to reboot for significant updates. It is just that some of them have since done the hard-work to be able to update the while OS without rebooting.
Linux was closer to be able to do this right from the start than for example Windows was. But that was more an accident of history than deliberate design. The Linux kernel was bundled together with a lot of other services and tools from other people, with very little integration between those different services and the kernel (early on there weren’t even shared libraries to worry about).
This meant even at the start it was easy to stop, update and restart one of those services without rebooting.
Windows also had services that could be stopped and started. But those services all came from Microsoft and they were a lot more interrelated with each other and the Windows kernel than on Linux. That made it a lot harder to support stopping parts of the OS, updating them and starting them up again.
Think of it like what you do to change the oil on a car.
Downloading the update is like driving to the store, getting your new oil and filter, and driving to your garage, now you have your car and oil.
But now to swap out the old oil with the new oil, you need to turn off the engine.
Computer updates are similar, downloading the update is like getting your oil and all your tools and supplies ready.
But a lot of the underlying code/files cannot just be swapped on the fly, because the OS is constantly reading from these directories, and will simply crash if you swap them. Kind of like if you just pull the oil filter off your car without shutting off the engine.
So you need to turn the computer off so it can replace all these files while the OS is not using them.
Others have actually answered your question…
As some one who has been doing software consulting for years now, I would like to express, if you have that many inter-dependent excel sheets open at a time that you find the prospect of opening/closing them that painful, its time to get your IT/Software department involved.
If you are storing important data in excel it should be in a database, if you are spending a lot of time and effort transforming existing reports so you can do your own work, then your reporting tools should be able to streamline that process for you and ensure that you aren’t working with stale data or data that has changed since you brought it offline…
Its also pretty easy to argue for with management (I spend N hours creating these reports, that costs the company $x in my time, and the process is complicated enough that onboarding some one new would take N months, and would be incredibly error prone), that cost would be reduced to almost zero with just a little bit of engineering effort.
I’ll try to ELI5 this – imagine, you play a board game and in the middle of the game, the actual board changes slightly (bank and prison switch places, for example). Are you sure that you can continue the game even with the changed board? Couldn’t you just end up in prison instead of say saving the princess just because the board changed?
It’s better to start playing the game from the start after the board changes or finish the game on the old board and start new on the new one.
Because it is a Window$ problem. My Linux machines are hardly ever turned off. I detest Windows and that I had to change from Linux to Windows on my last machine, owing to one of the windows programs that I sometimes used on dualboot clashing with the linux grub. ( looking at you Autodesk!)
I regularly lost days of work because windows enforced restarts. If you don’t restart, the machine becomes practically unusable.
They don’t *need* to — it’s just a place for bugs to live if you try to avoid it, and can make it harder to troubleshoot what caused issues.
Lets say you’ve been installing updates and not rebooting for the last two years. Then you reboot because reasons (power outage, whatever) and the system doesn’t boot up. Why didn’t it boot up? There are a LOT of options. If you rebooted after every patch cycle, then you know it’s caused by either a very recent hardware failure or something in the most recent patch because you know you had a working, bootable configuration after the last patch cycle.
Also, if you apply updates without rebooting, you may run into issues caused by some third party service not reloading after the patching when it should have. You aren’t capable of determining this, so you’ll likely waste a bunch of helpdesk peoples time trying to get it fixed when the answer is to reboot.
Also there may be security reasons with the recent trend in signed code.
Your solution is to automate your process of opening tens of interlinked excel windows so that reboots become trivial. A growing trend in computing is “cattle, not pets”. You should aim to not care whether this is “your computer” or some rando company laptop or virtual machine spun up on AWS 10 minutes ago. Separate *your* process from the actual hardware (and ideally, OS)
Latest Answers