Because sometimes one of the things being upgraded is in use, and sometimes it isn’t.
Suppose you are driving a car, and you want to change the clock (daylight savings time!). Your passenger could change it while you are driving.
But if you want to change a tire, you really do have to stop the car first.
Say you’re holding a piece of paper and I wanted to update for you. You have to give me that paper so I can write on it. In this case, you are the computer using a file and I am an installer updating the new updates onto those files.
In computers, these would be files that your computer uses to run your system, while the computer is using them they can’t always be updated depending on how critical they are. So by restarting the computer, you are effectively not using those files anymore which allows the installer to update those files (you’ll get a loading screen when you restart while this happens).
Sometimes an update is for a non-critical service which can be stopped and restarted since it’s not part of the core functionality of the operating system. Allowing you to continue using the computer while those updates are made to the less critical service.
It’s an option in the setup process. The reason the option is there is so that software that modified a core part of the OS or installs kernel extensions or device drivers can load them at the correct point in the boot process.
But many installers are lazy and set this flag even when it isn’t necessary, as there’s less chance of something going wrong if all other software has been shut down first.
If the update changes the code that controls the printer, you don’t have to reboot because you can stop the printer, install the code, and start it back up again.
However, if the code you want to update controls memory or storage, you can’t just turn those things off during the update, because the computer will halt. So, these updates work differently, they don’t change the running program (because that’s dangerous). Instead they change the files on disk that are used to load the program when the computer boots. That doesn’t change the running computer, at all, so you need to reboot for the change to take effect.
Latest Answers