Thursday, December 12, 2013

SVCHOST.exe 100% CPU Usage [XP]

Microsoft may be cancelling support for Windows XP, but that doesn't mean your computer's going to stop secretly checking for updates. Ran into an issue today and one of the things I noticed was that in the Task Manager "svchost.exe" was at 99% usage and staying that way. I thought maybe it was LogMeIn since I was connected remotely, svchost's a network process and upon checking another XP machine, it too had the same redline. Dropping out of LogMeIn and reconnecting showed the CPU usage remained constant.

After a little digging, I saw that this issue can point to Automatic Updates tripping up and the solution is to disable AU. Funny thing is, these are mission critical PCs and thus already have AU disabled... double-checking confirmed that.

By now on the other PC I'd checked, it's svchost.exe was back to normal. From what I read, this issue only affects some PCs. (Obviously, since the internet didn't totally blow up.)

SOLUTION
~

First, make sure Automatic Updates are turned off.

Control Panel -> Automatic Updates


I'm not saying don't do updates - In a business environment it's a good idea to control when updates occur. If you've got a bunch of specialized software, you can lower the chance of random conflicts and errors since you'll be able to draw more cause and effect if a problem creeps up when you can control what software is installed, when.

Identify test users from multiple departments who you can roll updates out to and see how things work. You'll get the best control from configuring your own WSUS server. That's Windows Server Update Services. It allows a domain environment to push updates out yourself, to specific computers, in a user friendly GUI. If your site is bandwidth limited, this is a must as your server will download all the Microsoft updates overnight and domain PCs will grab them locally.

Disable the Automatic Update Service

I've seen updates appear when Automatic Updates were turned off and heard that your computer will still check in to Microsoft from time to time and grab the occasional update. Since I already had Automatic Updates turned off, here's what's fixed it for me.

Control Panel -> Administrative Tools -> Services


Find Automatic Updates in the list and the status will probably already say "Started".

You can select it, then click the little stop button in the menu bar or right-click and choose "Stop" but all that did for me was drop CPU back to normal for a few seconds and back up to 99% with an error that the service can't be stopped right now. The second time I clicked "Stop" it actually stopped and things calmed down.

The sure-fire way is to right-click, choose "Properties" then change the "Startup type" to "Disabled" in the drop-down. This will prevent the service from starting when your computer boots up.

In theory, disabling this service will stop Windows XP from secretly checking for updates.

1 comment: