Saturday, 24 May 2014

SVCHOST.EXE Using All RAM + Abnormally High CPU Usage Part - 2 Resolution




Hi Friends!

This posts is in continuation of my earlier post on svchost.exe [thanks Shree for the query!]

As promised in that post, Let us resolve it now:

Go to Start | Settings | Control Panel and double click Automatic Updates or Windows Update.

Checkmark/Select the bottom option to disable automatic updates.

Click Apply/OK and then reboot.

Check if svchost still consume 100% CPU cycles? If no, we are done for the day! :)

If it does, do the following.

Go to Start, Run, copy/paste this command and click OK: services.msc

In the list of Services, can you see Background Intelligent Transfer Service ?

Here's a pic of what it looks like:

Image

If it's not listed, please proceed as follows to register the BITS service.

Open the Windows Search tool, copy/paste the following and then click Search: qmgr.dll

Search should show that file in the following locations:

C:\WINDOWS\system32
C:\WINDOWS\ServicePackFiles\i386
C:\WINDOWS\system32\bits

It may only be present in C:\WINDOWS\system32, but provided you can see it, do the following to register the service.

Go to Start, Run and copy/paste: regsvr32 qmgr.dll and click OK

Do the same with this file: regsvr32 qmgrprxy.dll

Reboot the system and then copy/paste this command into the Run field:
%windir%\System32\rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %windir%\inf\qmgr.inf

If you're prompted to insert the Windows installation CD, ignore that and in the dialog box at the bottom, change the path to C:\WINDOWS\ServicePackFiles\i386

If you could only see qmgr.dll in C:\WINDOWS\system32  change the path to that instead.

Restart the PC again and then go to Services and you should be able to see BITS in the list.
Double click it and then on the General tab, click the Start button to try and start the service manually. This is just a test to ensure that it's working correctly.

If you get Error 2: cannot find the file specified, go to Start, then Run again and copy/paste the following command and then click OK:
Reg add HKLM\SYSTEM\CurrentControlSet\Services\BITS\Parameters /v ServiceDll /t REG_EXPAND_SZ /d %windir%\System32\qmgr.dll

Reboot again and then try once more to start BITS. It should work properly now, but in the unlikely event that it fails again, run the following command and then hit Enter:
Reg add HKLM\SYSTEM\CurrentControlSet\Control\BackupRestore\FilesNotToBackup

Reboot once more and then do the following.

Go to this link and install the  IE8 cumulative December update:
http://www.microsoft.com/en-gb/download/details.aspx?id=41404 

If you use IE7, use this link instead:
http://www.microsoft.com/en-gb/download/details.aspx?id=41442

If you use IE11, use this link instead:
http://www.microsoft.com/en-us/download/details.aspx?id=42463

Finally, go to the Windows Update site and you should be able to download normally.

[Reference: Microsoft]

SVCHOST.EXE Using All RAM + Abnormally High CPU Usage Part -1 Basics

Hi Friends!

Apologies for the delay in the posts! [This is also my 1st post in Segoe UI font, looking for a feedback on this readers! :) ]

This post is in response to a query by Shree Nidhi

Let us try to understand its basics in this post:

So What Is It?
According to Microsoft: “svchost.exe is a generic host process name for services that run from dynamic-link libraries”. 

Meaning?
Some time ago, Microsoft started moving all of the functionality from internal Windows services into .dll files instead of .exe files. From a programming perspective this makes more sense for reusability… but the problem is that you can’t launch a .dll file directly from Windows, it has to be loaded up from a running executable (.exe). Thus the svchost.exe process was born.

Why Are There So Many svchost.exes Running?
If you’ve ever taken a look at the Services section in control panel you might notice that there are a Lot of services required by Windows. If every single service ran under a single svchost.exe instance, a failure in one might bring down all of Windows… so they are separated out.
Those services are organized into logical groups, and then a single svchost.exe instance is created for each group. For instance, one svchost.exe instance runs the 3 services related to the firewall. Another svchost.exe instance might run all the services related to the user interface, and so on.

So What Can I Do About It?
You can trim down unneeded services by disabling or stopping the services that don’t absolutely need to be running. Additionally, if you are noticing very heavy CPU usage on a single svchost.exe instance you can restart the services running under that instance.
The biggest problem is identifying what services are being run on a particular svchost.exe instance… we’ll cover that below.
If you are curious what we’re talking about, just open up Task Manager and check the “Show processes from all users” box

References: howtogeek

Feel free to add more on this in the comments section below.

I will write for its possible resolution in the next post.

Regards,
Vipul