If there’s something I hate about computers in general, it is when they become slow! Slow program startup, slow browsing, slow boot, slow shutdown.. whatever it is, it’s annoying! I have recently received a new work laptop , an HP ProBook 6540b equipped with a core i3 430m processor and 4GB of memory. Pretty nice work machine overall but not fast enough thus I equipped it with an Intel X25-M 120GB SSD drive. Following this upgrade, the performance is excellent, everything is snappy and fast except of one annoying thing - extremely slow shutdown time, hovering around 50-70 seconds!
So I decided to investigate and as it turns out, there are two approaches to fixing this problem. The first is very easy to implement but does not cover operating system operations that can also slow down the shutdown process. The second is extremely thorough but requires more technical knowledge and software downloads. In this article, both methods will be covered.
Method 1: The Process of Elimination
Basically, this method involves disabling all non critical services until we find the one that is slowing us down. To accelerate our search for the services or programs that slows us down, we first have to identify all the non OS critical processes & services and then, using an approach called binary search we start looking for the cause of our slowdowns.
This approach is based on taking a set of potential troublemakers (our services and processes) and disabling it in halves (thus the binary search name), until the culprit is found. After each division, we reboot and see if the last disabled set solved the problem. By repeating that process we will eventually isolate the culprit.
To illustrate better, let us assume we have two processes A and B, and two services X and Y. What we will do is to disable A and B and then reboot to see if the boot time improved. If it did, we know the problem lies within A and B, if not the problem is within X and Y. Let’s assume that after disabling X and Y our slow shutdown is not slow anymore.
Our next step would be to disable just X, and see if it’s causing the problem. If it does, we found our cause, if it does not then our cause is Y.
Pretty easy right ?
Here’s how to disable our services and processes :
Head to services tab and check the ‘Hide all Microsoft services‘ box. Next Press ‘Disable all‘ button to disable all non Microsoft services. Now, reboot. If you see the problem is still there jump right ahead to the second approach, your problem is not with startup applications or services. If however you see that your problem is gone, you know that one (or more) of your startup programs or services are causing the slowness.
Your next step would be to re-enable the startup programs and reboot again.
Did the problem come back ?
If it did, it’s one of your startup programs. If it didn’t, it’s one of the services (which are still disabled).
Now, we should concentrate on the problematic group (services/startup programs) and like mentioned before, re-enable half of the problematic group and check again if performance degradation returns. By repeating this elimination process you can quickly find the problematic service or program.
This approach is proven and works, however, it doesn’t cover internal operating system actions. There’s a better and more informative way, it can show you exactly which services and programs are delaying the shutdown process, and on top of that it can also show you what the operating system did and how long it took. The downside of the second approach is that it requires software downloads, and a little more technical abilities.
On to the Trace Method.