/ Geek tricks

What is this svchost.exe and Why Is It Running Constantly in Background?

Have you ever had a deep plunge into the Windows' Task Manager utility? Yes, we all use it on a day-to-day basis, but if you explore the Task Manager for more than just killing processes, and dive into the processes that are running on your machine, you may end up having the question "What on earth these dozens of processes named svchost.exe doing in there?" This happens to almost all the people and in a worst case scenario, I've seen people guessing this as a virus and end up wasting 2-3 Hrs to find the solution which doesn't exist!

We will be covering about all the major processes that you might want to have a look at in coming days, and svchost.exe is the first and the most popular in the list.

What Is svchost.exe?

According to Microsoft: “svchost.exe is a generic host process name for services that run from dynamic-link libraries”. Well, I couldn't get that first time and I'm sure so did you. But don't worry I'll explain it for you, that's what this article is all about, I guess!

To actually know about svchost.exe process, you should have some basic knowledge about Windows' Services. These are the processes that starts with the boot and remains running in the background. They are intended to provide a particular environment to the application programs to run on your Windows machine.There are plenty of different different Windows Services that starts with the boot which are intended to serve different purpose.

Some months back, Microsoft announced to use the dynamic link libraries (.dll) and 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 there are dozens of svchost.exe running?

As explained above, the services in a need to use .dll files launches the svchost.exe and access .dll files through it. Now we might guess that what is the need of so many svchost.exe to run simultaneously? Can't we just have a one and only svchost.exe up and running? Well, the simple answer is NO. If each and every service run under a single svchost.exe, then a failure in a single service may cause the failure and bring down whole Windows. So, to avoid this scenario they are simply separated out. That's why we see so many svchost.exe running at the same time.

What should be my job?

Well, if your Windows is running smoothly without any concerning hick-ups, you need to do nothing in order to stop these svchost.exe, in fact they are adding to the functionality of your Windows PC so no need to curb them.

But if you are suffering from OCD (Obsessive Compulsive Disorder) about this svchost thing, then you may take a plunge into stopping them. And yes, you can't stop then by right clicking it! But what you can do is to prevent running them at boot itself. Thus the less Windows Services you use, the less svchost.exe will be running. It's simple as that!

So, firstly you need to identify that which services are actually running on your PC. To do that, just open up Task Manager, goto Processes tab and click on "Show processes from all users".
There you can find the svchost processes running. To know which service use the particular svchost.exe, just right click that svchost.exe and click "Go To Service(s)".
This will take you to the service(s) that are causing that particular svchost.exe to run. The great thing about doing it this way is that you can see the real name under the Description column, so you can choose to disable the service if you don't want it running.

How To Disable Services

Now to disable these services from running at boot, just open up the run box by pressing the combination of Win + R keys and type srevices.msc in it. This will open up the services window.
Now to disable a particular service, just right click on it and goto properties.
Now from the dropdown menu, select your desired option and click "OK".
Now that service won't get started from next boot eliminating the one svchost.exe!

Rajat Patel

Rajat Patel

Founder at TheNextGeek.com. Software Engineer & Business Analyst by profession. Avid open source evangelist. Mostly writes about Technology that interests him, and some neat tricks to make your day-to-day tech life a breeze.

Read More