|
I haven't used Unix derivatives for a few years (except MacOS and WSL), but I remember they needed to reboot as often as Windows if you install or update stuff.
|
|
|
|
|
It is true that to use specific updated features (like new kernel) you need a reboot, but you can do it whenever you want to - two weeks from now if you are in the middle.
But app updates - for instance your browser - are totally different. You can keep you running application, which will use the old libraries as long as it runs, but a new instance will load the new libraries with the new features... And you need no reboot of the system for that...
And it was like this from the very beginning of UNIX...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
Hm, the only time I had to reboot my Linux box is when I updated to a new kernel or did a whole system update (version 1 to version 2 type update). Everything else just seems to update without requiring a restart. Over all, Linux has caused me had way fewer issues that Windows 10 has.
|
|
|
|
|
Exactly. I haven't restarted my Centos server for ages. And I have installed and uninstalled tonnes of things. A software should just use it's own codes, contained in it's own folder. If several softwares shared same DLLs, and the latest/newest DLL downloaded by the new software is incompatible (in some minor things) to the the oldest software sharing the same DLL, won't this break the old software?
Bad code management by M$.
They might have done this to save disk space, but, as far as I know, these redistributables have very small size.
|
|
|
|
|
This was the beauty of the OpenVMS versioning file system. A new image could be laid down - it'd get a new version number. All the older images would still be available to those programs that were using them. When those programs restarted they'd get the new image.
|
|
|
|
|
charlieg wrote: Visual Studio is an application. It has no business needing to reboot.
I agree. But it's a matter of "should" versus "does".
Things need to change.
|
|
|
|
|
Yeah, yeah. I get it. Wondering why Windows needs to reboot if I fart in it's general direction is an exercise in futility.
I get the technical comments. I just think back to that time when Bill was demonstrating USB device discovery and his machine blue screened...
It shows that if you put enough lipstick on a pig, you still have bacon eventually.
Charlie Gilley
<italic>Stuck in a dysfunctional matrix from which I must escape...
"Where liberty dwells, there is my country." B. Franklin, 1783
“They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
|
|
|
|
|
FTFY: charlieg wrote: if you put enough lipstick on a pig, you still have [^] bacon eventually.
«One day it will have to be officially admitted that what we have christened reality is an even greater illusion than the world of dreams.» Salvador Dali
|
|
|
|
|
Windows locks executables (including DLLs) while they are in use. Because of this, in order to update shared components, the locks must be freed. While it's possible, there's no "clean" way to even determine who holds a lock that I know of (unless it was added to a more recent windows in which case I am wrong) so the safest thing to do is reboot.
VS uses a lot of shared components.
A lot of windows applications do, and generally, the larger/more complicated the application, the bigger your odds of having to reboot on update, because they typically use a lot of shared components increasing the odds that one of them is locked and the app needs to update it.
This also applies to the various OS features and shell widgets and doodads, not just applications.
I hope that clears it up.
Real programmers use butterflies
|
|
|
|
|
Didn't you just thank dave for saving you to type the same answer?
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Indeed!
Real programmers use butterflies
|
|
|
|
|
VS (which is an additional app, which we specifically download and install) shouldn't have shared components with OS / other applications. I can understand if it's OS bundled application...
|
|
|
|
|
The last time I looked into it, it was because Visual Studio likes to run background services - you know, those notifiers that let you know "there's an update waiting".
I got stuck in a loop once where the service actually got stuck, and was preventing the rest of an update from running and I got into a reboot-find-directory-delete-race, to try to erase the service before it auto-started. Took a couple of tries as I recall...
|
|
|
|
|
Could have included an update to a .Net framework that requires a restart?
|
|
|
|
|
It could simply be a flag in the installer set by the author for no better reason than 'just to be safe' or 'because I can'.
"Go forth into the source" - Neal Morse
"Hope is contagious"
|
|
|
|
|
Could it be that the installer makes entries in the registry, that requires a reboot so the modified registry could be read?
Get me coffee and no one gets hurt!
|
|
|
|
|
charlieg wrote: Multiple VMs zooming along, editors all over, yada yada.
[...]
charlieg wrote: Please restart your computer
The solution is to go all-in with VMs. If you run VS itself within its own VM, and it insists on rebooting, then you won't have to reboot the host OS, and drag along and interrupt whatever work the other VMs are doing.
For years, I've had nothing on my host OS but the motherboard drivers, and the virtualization software (Hyper-V in my case). All my work is done inside separate VMs - one dedicated to SQL, another for VS2019, older ones with older versions of VS, another for "everything else" (Office, email, browsers, etc). That way reboots cause the minimal amount of disruptions.
My host, at most, reboots once a month, on Patch Tuesday. I've had instances where I let the host wait for a reboot for a few months on end--right now it's still waiting to complete the setup for the February patches. Since I do nothing on the host, including no browsing, it's really at minimal risk and I don't worry as much about hurrying to patch that one as I might with any of the guest VMs. Could be Linux if I was so inclined.
Bonus: Backing up is just a matter of copying .VHD files. Since there's nothing on the host, I don't even bother backing that one up--reinstalling the OS is pretty quick nowadays. My entire backup set is just a bunch of VHD files that can be managed like any other file with Explorer. Some of these have even been migrated to different physical machines over time.
Extra bonus: Since the heavy work is all done in VMs, the host is warming up another room and I don't even have to hear its loud fans. On my desk in this room is a tiny, completely quiet Intel NUC, with 3 monitors, and it RDPs to the individual VMs.
|
|
|
|
|
It's been on my list to do for 2 years. I guess I should stop $itching and start doing.
Charlie Gilley
<italic>Stuck in a dysfunctional matrix from which I must escape...
"Where liberty dwells, there is my country." B. Franklin, 1783
“They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
|
|
|
|
|
I do more or less the same, but not in a dedicated maschine...
One VM for serious staff
Another one for surfing / searching non whitelisted places
Another one for...
VS Community (for private pet projects) is in the main OS though. But as I don't use it so much last time...
Additionally, I am someone that switches the PC off almost every day, so I don't really care about the reboots.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Interesting question.
I found the following. It suggests that windows locks the dlls because it is using the dll itself as a memory mapped file. So of course having that replaced while running would be bad thing. Sounds like a reasonable cause although I could not find other sources that back that up.
c# - Why does the .NET framework lock dlls? - Stack Overflow[^]
|
|
|
|
|
Simplified garbage collecting.
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it.
― Confucian Analects: Rules of Confucius about his food
|
|
|
|
|
truth
Charlie Gilley
<italic>Stuck in a dysfunctional matrix from which I must escape...
"Where liberty dwells, there is my country." B. Franklin, 1783
“They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
|
|
|
|
|
All excellent points. I had not considered that VS2019 might have updated core OS components. I was tired That said, if VS2019 is updating core OS stuff, it should be in the standard patch rollout. Segmentation please. As someone else mentioned, it's probably a default in the install s/w.
1 point to MS: although they did not give me a "reboot later" button, I could X off the prompt and keep going.
I guess my perspective was flavored on my most recent video card driver update from NVidea. Their install process messes with my screens (expected) but I did not have to reboot. I consider *any* driver pretty core to the OS.
Thank you all
Charlie Gilley
<italic>Stuck in a dysfunctional matrix from which I must escape...
"Where liberty dwells, there is my country." B. Franklin, 1783
“They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
modified 17-Apr-21 15:35pm.
|
|
|
|
|
charlieg wrote: 1 point to MS: although they did not give me a "reboot later" button, I could X off the prompt and keep going. That's probably an error, not a feature
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
"Reboot later" - yes, thank goodness for that option. Far too many apps still ask you to "Reboot to complete the installation" but I find it's rarely actually necessary. Only today I installed WireShark (not used it before) and it asked to reboot. Not convenient right now, so "reboot later" and just use the thing. Seems to work 100% OK; certainly did what I needed it to do today. I'll reboot in a couple of weeks or so, probably.
|
|
|
|