There are many Windows processes which run in background. Out of those entire processes one is svchost.exe. You must have found dozens of svchost.exe processes running at a time in Windows explorer. You must be wondering what this process is meant for and why so many of them are running. Today we will tell you, what is svchost.exe and what is it meant for?
What Is svchost.exe?
Microsoft defines svchost.exe as: “svchost.exe is a generic host process name for services that run from dynamic link libraries (i.e. .dll)”. Still confused! Let’s make it simpler.
During the development of different operating systems, Microsoft some time back started shifting entire internal Windows services functionality into dynamic link libraries i.e. .dll files which was previously restricted to .exe files. It makes sense from programming perspective but the only glitch is that a .dll file can’t be directly launched. Ii can only be loaded from a running executable file (.exe). That’s why svchost.exe process came into existence.
Reason behind multiple svchost.exe processes
In control panel there is a section for Services where you would find there are a lot of services required by Windows for its functionality. If every single service would have been clubbed under single svchost.exe then due to failure on one might have brought down all of Windows. That’s the reason behind multiple svchost.exe processes.

These Windows services are organized in different logical groups and for each logical group a single svchost.exe process works. For example one svchost.exe instance would be running for 3 services which are related user interface. Another svchost.exe instance might be running for all services related to firewall.
What can be done about it?
If you are worried for multiple svchost.exe processes running then trim down the unnecessary services. The services which are not required or necessary can be disabled or stopped. If you notice that particular svchost.exe instances is causing heavy CPU usage then restart those services running under that instance. The only problem arises in such case that which services are running under particular instance. We will tell you how to find that.
Curious/confused what we are talking about? Just open the Task Manager and the check the option “Show processes from all users”.

Checking Services from Command Line (Windows 7, Vista or XP Pro)
Command prompt can be used to check what services are being hosted under a particular svchost.exe instance. For this you can use tasklist command in order to find the list of services. This is the command which you have to use:
tasklist /SVC

Problem with this method is that if you don’t know the cryptic names then it will leave you remain confused.
Checking Services in Task Manager (Windows 7 & Windows Vista)
You can find out services running hosted under a svchost.exe instance through task manager also. Right-click on a particular svchost.exe and then in the context menu select the “Go to Service” option.

This action will immediately switch to Services tab of task manager where you will find all the selected services running under that svchost.exe.

We consider this method best as with this method you will get the real name under the description column which will help you in disabling the services.
Checking Services from Process Explorer (Windows 7, Vista or XP)
Process Explorer can also be used for checking the services running under a particular svchost.exe process. Simply mouse hover one process and it give you all services through a popup.

If you double click on a svchost.exe instance and select Services tab, you will get services list running under it. From here you can choose the services which you wish to stop.

How To Disable Services?
Open Services from Administrative tools (control panel) or just type services.msc in start menu search/ run box. Find the services which you wish to disable. Either double click on that service or right-click and select properties to access the startup type option.
Here change the Startup Type as disabled and then click on Stop button to stop it immediately.

So this is how you can find out why multiple svchost.exe are running and what all services are running under it.