It’s just software. Let it write all over my registry. Honest, I’m cool with that, and can fix it later if I have to.
er, because it updated system files that are currently in use, and therefore the file that is now on disk is not the same as the one currently running from RAM? And it can’t easily just stop system processes and re-start them, so better just to force a re-start and have the system come up in a known good state.
maybe you think you can, but Windows is not designed specifically for you. You can’t speak for the billion other Windows users out there.
Short answer. Because there are processes in RAM that are either unaffected by what you write to the registry (on your hard drive), or the processes in RAM at that time may corrupt because unknown change you made occur in stream. Rebooting causes the machine start afresh with all changes in place.
We’re not talking about problems to the operating system or the applications based on your changes. It’s about your data. Your changes ultimately could corrupt your data.
It’s all about the data.
But there are methods out there to restart services with new updated data, without requiring a reboot. This feature is not part of Windows though…
or OS X or Linux.
you pretty much have to get into “big iron” hardware (large servers and mainframes) before the ability to do that is commonplace.
Right. One the other hand it’s common place for windows programs to require a reboot after update. Like for instance, Flash. Or Java. Or really anything of a million things out there. I’ve never had a required reboot on Linux after app updates. The only time a reboot is required is after a new kernel is released. Even all other system services get updated with no reboot necessary.
One of the major reasons that Windows has to be rebooted more often than Linux is a design decision that affects how files are used by the operating system. When Linux loads an executable file into memory, it uses the swap partition as virtual memory for that file (so that if parts of the file are not needed as part of virtual memory management, those parts are written to the swap partition for later retrieval). Windows, by contrast, uses the original file image as the swap file, so that it doesn’t have to write anything to storage when it is swapped out as part of virtual memory management. The downside is that Windows files cannot be over-written while they’re in use, because they are acting as the virtual memory swap space. When Windows requires files to be over-written that are in use, it stashes those operations in the registry, and then on the next re-boot, copies them over.
There are some Linux systems that can patch an update into a running kernel, but it is a commercial service and not all patches are amenable.
Si
A lot of the reason you have to reboot after installing software is because the installation program was written lazily. There really are very few Windows libraries that can’t be stopped and re-started of necessary; the problem is that it takes more time and effort to write the install to do that, and companies cut corners on things like installs.
I used to work for a software company that had a company policy that any install that required a reboot had to fully justify and document the reason for the reboot and get the project manager’s approval. Very few of our products required rebooting as a result.
Hear, hear. Not to mention the OS wasn’t designed with alteration on-the-fly in mind, cause they can always force a user to reboot.
Novell Netware, back in the 1980’s, was far better designed, and they realized that forcing a 100-users on a server to reboot in the middle of a business day just because a new program was installed was not tolerable. Their software handled such tasks with aplomb. Windows has never reached that level of sophistication in programming.
You have moved the mouse. Windows must restart for this change to take effect.
Thirded! Open-source programs like Firefox and Thunderbird, written by what MS derides as “amateurs”, are much easier to install, updated, and thoroughly de-install, than most programs written by the paid programmers at MS. Even on the Windows OS, which MS owns lock, stock, and barrel.
JFTR I’ve never known Flash or Java updates to require a restart. Annoyingly Adobe Acrobat Reader updates now require a reboot (they never used to until recently) and Windows updates have always been a pest in demanding a restart.
That sounds very unusual. Linux puts unused data in the disk cache, which is a portion of ram set aside for things that aren’t being used but which may be called again soon. If it sits unused for a while or if memory starts to become low, it frees up that memory by paging out to swap. I’ve never heard of it swapping out unused portions of an active program unless the system is under some very serious strain. I have three linux computers and only one has a swap partition. After 3 weeks uptime on it, there have been 0 page outs and SwapFree still matches SwapTotal.
Doesn’t Windows work the same and clear it’s file cache by writing to the swap file?
yes, which is why Firefox is notorious for memory leaks.
this is retarded. what does Netware (the OS running on the server) have to do with OS updates on the clients? Nothing. The reason nobody had to reboot “in the middle of the workday” back in the 1980s is because there weren’t any Windows updates to install.
And while we’re talking about it, is there some reason Adobe Acrobat (the standalone reader) has to put a shortcut on my desktop each time it updates? I’ve never ever felt the need to launch Acrobat on it’s own…not once. I’d wager the majority of users haven’t either.
Wrong on both counts. I installed and administered Novell servers, and we were able to modify the OS during a work day by adding and subtracting modules without requiring a reboot, ever. It was designed to work that way and we often had to, because the system was on 24/7 and anytime was a workday.
It doesn’t matter if the program being installed is an update or not. If it has hooks into the OS that initialize parameters only on boot and cannot be reset, it will probably require that. Major Windows programs I have worked with require not one, but sometimes two or three reboots before the install is complete.
We even had a nifty add-on module (I think it was made by St. Bernard Software) that allowed us to backup multiple files that were open, locked, and actively being updated. The backup software kept track of all the changes and resynced everything when it could without any reboots or data loss.
Mine doesn’t do that. Have you looked in your startup group for a possible routine that is the culprit? If not there, it’s probably something in the registry that can be defeated.
And I usually launch Acrobat from a shortcut. It’s the quickest way sometimes, although I would get annoyed if it insisted on making one I didn’t want.
Excuse me? Linux is quite capable of restarting almost any system service without a reboot. Pretty much the only time you need to reboot a Linux machine after an update is when the kernel was patched or replaced. In a typical desktop environment a pressing need to update the kernel is rare enough that Linux machines can stay up for months or years without rebooting.
Winodws 101: from my long past and vague memory…
The biggest part of WIndows, and the part updated often, are DLL files.
The basic part of a program often consists of an exe or sys or whatever, a core program, that does nothing but call subprograms. FOr siple executables, these subprograms are embedded in the EXE file - they have an entry point, require certain parameters to be passed, etc.
The expand the program, Windows adds the ability to use DLL’s. (Dynamic Link Libraries).These are a collection of subprograms and a list of the entry points for them.
Windows used to allow programs to keep the permanent running parameters in an INI file, that was read each time the program started, updated each time a permanent parameter was updated. Even such elementary stuff as where the program window opes, how big, etc. plus things like windows desktop picture, colour; more complex stuff like IP addres, etc. Basically, any parameters a computer needs to know. These got to be unwieldy, so MS decided there were better off placed in a single database, the registry.(If you fiddle with LINUX notice how many of those config-type files there are)
Of course, once a proram starts running, it reads these values. To simplify things, the entire registry is loaded into memory rather that go fetch from disk each time.
SO you upgrade a program; it writes new information in the registry, it writes new DLL’s, it may even re-write the EXE or whatever file. Replacing your music player or word processor is simple; just stop it, restart with the new files and settings. But what about the disk drivers? What about the display? What about the security system that processes passwords and determines if you have rights? what about all the cached existing login information? Can you restart security and keep people logged in, if the handshaking keys are randomly generated each session?
You could probably design a system where any component of the fundamental operating system can be changed out from under and the system restarts without a hiccup. However, this is best done with the simplest option - flag what’s changed so that when the system reloads, it makes the substitution ("Ok, this is now the official security subsystem ").
The programs that require a reboot probably rely on some underlying part of the operating system (like the video or screen display) or include running background components and azy programming has made t so that they do not restart cleanly…