Windows Vista has numerous new features. Paul Thurrot has a nice summary of the changes in the latest build.
Today I'm singling out one of my favorite new features of Vista. I've had a chance to look at the new Restart Manager in Vista in the last week or so. This service will be a very welcome change in the way that Windows handles installations/updates to applications. In particular I'm talking about updating an application that is running during the update. Currently most installers choose to error on the safe side and restart Windows if there is even a slight chance that a core dll has been updated.
Restart Manager does several things differently than current Windows installers
Identifies processes affected by install
Restart Manager investigates all running processes to determine if they are using any files affected by the update. If so Restart Manager adds each process to the restart queue.
Restarts affected applications
- Grabs process from restart queue
- Takes a snapshot of existing process
- Shuts down process
- Updates assemblies, dlls, etc.
- Restarts process
- Restores application state from snapshot
A key point is that only the affected applications get restarted. Windows will not restart under many normal installs. If a core Windows dll gets changed (like HAL.dll) then of course the OS needs to restart. But Restart Manager attempts to make this a painless as possible.
Scenario
You leave your laptop running overnight. During the early morning hours Microsoft Update determines that it should install an update for the Outlook Junk mail filter. When you arrive in the morning your Outlook application will still be running, with all the windows open where you left them, even though the update was automatically installed. The same thing will happen during a Windows OS security update. All applications that were open during the install will be restored to the correct state.
More info
Rob Mensching has a interesting article with details about Restart Manager.