Bella's computer is very slow. It takes ages before it completes trivial tasks like opening or closing windows. When Bella checked her computer's Task Manager, she found out that a process called svchost.exe was using up a lot of CPU and memory. There were multiple instances of svchost.exe and they were apparently choking her computer's resources. Many of us face a similar situation of slow running computer and we find that there are high CPU and high memory usage by svchost.exe process. We wonder whether this process has anything to do with the slowness of our computer and if it does, how to deal with it?
Sometimes you find more than a dozen of svchost processes running and each of them showing a large amount of memory usage. In today's article we will learn all about svchost.exe with special focus of high CPU and memory usage.
What is svchost.exe?
svchost.exe is the Service Host system process that is used by Windows operating system to host multiple services. Windows NT based operating systems try to reduce resource consumption by making many services share a single process. This svchost.exe is one such process that is shared by a number of different services. The aim is to minimize load on available resources — but you seem to have experienced otherwise! svchost is apparently taking up too much of resources.
Let's understand this in simpler words.
Long ago, Microsoft implemented Windows services as executable (exe) files. But to improve reusability, in later versions on Windows, Dynamic Link Libraries (DLLs) are used to implement various services. However, DLLs can not be launched on their own –they always need an executable file to load them. That's why svchost.exe was created. This executable file loads various services by calling respective DLL files.
Windows operating system runs hundreds of services. So, if we would have one svchost to load all these services –it could be catastrophic. Failure of one service will crash the svchost.exe and effectively all the services will go down. To get around this problem, Windows uses multiple svchost.exe instances.
Windows services are grouped as per their functions and for each group of services one svchost is launched.
This is why you see so many svchost.exe instances running simultaneously.
Computer is Running Slow: How to View svchost.exe List
If your computer is running very slow for no apparent reason, you should open take the following steps to see svchost status. This may help you find if a particular service is the culprit:
View in Windows 7 or earlier
- Right click on taskbar (or press Ctrl+Alt+Delete)
- Select Start Task Manager
- Go to Processes tab
- Click on Show processes from all users button
- Click on Image Name header to sort the running processes by name
You might find one or more svchost.exe process running and each one taking it's own share of memory and CPU. Here is an example:
View in Windows 8 or Windows 10
If you're using Windows 8, 8.1 or 10, take the following steps:
- Press Ctrl+Alt+Del
- Select Start Task Manager
- Go to Details tab to find the listing
How to view services that are running under each svchost.exe process
Right click on any of the svchost instance in the Task Manager and select Go to Services option. You will be automatically switched to Services tab and the services running under the selected svchost instance will be highlighted.
View services from command line:
- Open command prompt by typing cmd in the Run program box
- Command prompt with black background will open.
- Type tasklist /SVC and press enter
You will get the list of all the processes running at present. This list will also show svchost instances and services that are running under each of these instances.
svchost.exe is Slowing My Computer. What to do?
If your computer is responding very slow and you find out that svchost instances are using very high CPU and memory, you may tend to believe that svchost.exe is causing the slow run. This may be true but there could also be other problems with your computer, for example, faulty RAM.
You should not end any of the svchost.exe instance. Such an action will kill all the services running under that process. Instead, you want to identify a service and then disable it.
If you are sure that you want to disable a particular Windows service, you can do so by these steps:
- Open Control Panel
- Go to Administrative Tools > Services
- Locate the Service that you want to end
- Take right click on the Service and select Properties
- A new box will appear. Change the Startup type to Disabled
- Restart your computer
These steps will stop your computer from launching that service at startup. Please note that you should disable a service only if you know what you are doing. Disabling an essential service may cause malfunctioning in your computer.
We hope that this tutorial will help you in analyzing why your computer is slow. High CPU and high memory usage by svchost.exe could be a reason but you should be sure before you tweak services. Should you have any comments, suggestions or questions on this topic, please use the comment area. Thank you for using TechWelkin!