Great post from Mark Russinovitch on fixing a slow Vista system, belonging to his wife.
The fact that was in the family suggests that this kind of incident is common. My reasoning: if Russinovitch were blogging about an unusually slow PC identified in Alaska and sent to Redmond for examination, that would suggest that this stuff is rare. If it happens to the person next to you, it is more likely to be commonplace.
So Vista is “not responding to her typing or mouse clicks”. What’s the problem? Not at all obvious. Russinovitch fires up his Process Explorer (no, Task Manager would not do) and has a look. Still not obvious. Iexplore.exe and Dllhost.exe are the culprits – except they are not. The problem turns out to be a buggy Flash player or application (he still doesn’t know which), and a third-party MP4 demultiplexer. The Flash problem remains unsolved; the only solution when it turns up is to terminate Iexplore.exe. The demultiplexer is now disabled with no ill-effects.
The specifics are only interesting to geeks, but there is a wider point. Most people:
- Would have blamed Windows and Microsoft
- Would not have been able to discover the cause of the problem
- Would have shrugged and rebooted – which would work for a while
That “most people” includes many professionals. Be honest: how many tech professionals, whether in internal or external support, or PC repair experts, would have both known enough and cared enough to identify this kind of issue? A lot will say, “just reboot and hope it doesn’t happen again soon.” I’m not even sure that they are wrong. Look at the economics: if a reboot is a quick fix, how much time and expense does the problem merit?
Further, is Microsoft really innocent? Surely the OS could do a better job of identifying rogue processes and threads, and curbing the extent to which they can grab too much CPU. My experience of the troubleshooting wizards and self-healing capabilities in Vista is dismal; there are examples on this blog. Why isn’t there an automated tool that could follow the kinds of steps Russinovitch follows and identify the actual component that is causing problems?