Friday, January 14, 2011

What is svchost.exe And Why Is It Running?

Partition Commander 10Have you ever wondered does your computer seem to be running so many processes with the name svchost.exe? The most bothering thing is that you cannot kill them. I will describe it to you why they are processes list in the task Manager
What Is It?
According to Microsoft: “svchost.exe is a generic host process name for services that run from dynamic-link libraries”. We can have that in english  if Microsoft wish to give out its dictionary.
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.
 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.

No comments:

Post a Comment