Starting with Windows Vista, Microsoft has introduced a new application called as the Restart Manager to eliminate or reduce the number of system restarts that are required to complete an installation or update.
Restart Manager in Windows
Lets say, if an application or Windows itself, needs to update itself, the Installer calls upon the Restart Manager, to see if it can clear that part of the system so that it can be updated. If it can do that, it does so, and this happens without a reboot.
And if this cannot be done, then what it does is that it takes a snapshot of the system, together with the applications, at that very moment, and then it just updates and restarts the application, or in the case of an operating system update, it will bring the operating system back exactly where it was, after the reboot!
Lets say, a user is working on a Word document, say, winvistaclub.doc and the cursor was on co-ordinates, say col 5, line 7. And the system has to update either or both of them.
The Restart Manager does 5 things:
- It looks for all processes that are using this file.
- It then shuts down such processes
- Applies the updates
- Restarts those processes
- Preserves the exact state of each running process and then restores that state upon restarting the process.
This feature will re-open a closed document and restore the cursor to, say, col 5, line 7, the exact position it was, when the document was closed. This is called Freeze drying the program. The Restart Manager works in tandem with Microsoft Update, Windows Update, Microsoft Windows Server Update Services, Microsoft Software Installer and Microsoft Systems Management Server, to detect processes that have files in use and to stop and restart services without the need to restart the entire machine. The full functionality of ‘Restart Manager’ is presently available only to select applications written to take advantage of it. Microsoft Office is one of them.
Side-by-side compliant Dll files
For those programs which do not support Restart Manager, Windows has introduced what is called as the Side-by-side compliant dll’s. This enables a program to write a new version of a dll, to the hard disk, even if the old one is still in use. Only when you shut down the program does Windows replace the old version with the new one!
One therefore see’s fewer post-update reboots in Windows Vista and Windows 7 onwards.
More at MSDN.