For a couple of days my computer has been running slow. I checked the task list and saw something like 12 svschost.exe's running and some of them are taking over 150mb!
Is there was way to reduce their use of my CPU? LFS is running half the speed it usually does because of all those programs running for idk which reason in background.
tried rebooting? if it's happening after boot, i've considered that normal... all the machines at work do that. usually after a couple minutes things settle down.
but a good thing about it being svchost, if it's the legit one and not a virus masquerading as svchost (blaster/etc), any errors generated should be visible in the event log (r-click my computer -> manage). but check the service list too, one of your services could be stuck in a starting loop.
Doesnt seem to cause errors or anything, and really it doesnt bother me at all except in gaming. I've lost half of my FPS and it can only be because of this taking power off my CPU. LFS had 80+ steady FPS and now I get 40 and it drops a lot in the 10s sometimes.
svchost has a tendency to duplicate itself over time. A good rule of thumb is to say that the most svchost you have, the screwed up your computer is. For instance, the computer I currently am on runs with 7 instances of svchost.exe. The time to reinstall Windows is near! I admit that I don't recall any of my svchost instances leeching that much ressources, though.
It could also be a virus
Besides, 65 processes is way too much. There probably are other useless processes running on your system, leeching even more ressources. Try to limit the number of program/processes that start up with Windows (run msconfig, startup tab). I try to aim for something under 50, 40 at best. I currently have 43 processes running, and that include all my svchost zombie friends.
It is a bit drastic but i would just try end task on them to see if it helps. Sometimes it will work and sometimes they wont end, or will just come back again after a few seconds.
If it all freezes up, which can happen theres always the reset button, as doing this is a bit trial and error.
I just unticket EVERYTHING from the startup tab in msconfig and after restarting I still have 63 processes running! The svchosts are REALLY my problem ,they're all firing up on computer start up.
Here's something new. If I understood correctly the 'Processeur' column is the percentage of my processor that's being used by a said app right? Why is this 24kb innactive process using 93% of my CPU then...
I may be totally wrong, but could that be the system idle process, which will show as a a percentage. For example, if all other processes are using say 20%, then system idle process will show as using 80% to make the total up to 100.
I'll need to take back my words. I've read some more about multiple instances of svchost running, and it seems it can be caused by a lot of things. Svchost controls different windows processes, most of which are legitimate, but they can also prove to be useless. For instance, a particular instance of svchost might be a legitimate service you use daily, but it could also be something you very rarely use. I've also read about some people having unlegitimate instances of the process that are actually viruses or trojan/spyware.
Also, svchost's ressource usage can be affected by downloads (an example I've found is somebody downloading Windows updates with multiple instances of svchost instantly going wild).
They are all services that run from dlls.
The best probably is to use a program (seem?) to see what each svchost instance is, and then to see what you really need.
edit: That process showing 90+% CPU usage indeed is the System Idle Process. Basically, it shows the amount of CPU NOT being used. Therefore, a 99% System Idle Process tells you that only 1% of the CPU is being used.
edit 2: Another bit of information concerning the svchost process. If you go look at the proprieties of the svchost.exe actual file (fyi, which is located in windows/system32), the description of the file is as follows: "Generic Host Process for Win32 Services". Which really means what I was saying, but in one sentence only! svchost hosts services.
A good thing you could do to help us help you: download Seem, open it and take a screenshot of the processes there.
XP was so much better I think I should've installed it on my laptop the day I got it I never got any problem with it and within a month of having Vista I had random crashes and now this!
Slightly OT, but i did find a guide online somewhere that shows you what is safe to disable in services.msc and what isnt. I will try and find the link, i mean it won't solve your svchost problem, but it will cut your process count down a bit.
EDIT: found the guide. As it says though, use at you own risk, plus you do not need to remember what you change incase you need to change anything back again if you disable something you need as the standard settings for each version of vista are in the guide, you also have 2 settings to use, tweaked or bare bones.
Install that, open it, agree to the license thingy. Once you're in there, scroll to the svchost processes, and double click on one of them. It'll show a propriety window. Click on the Services tab, and you'll see there what services are being controlled by this particular instances of svchost.
Do this with all of the svchost instances, especially the one using the most ressources, and tell us what's running under those svchost!
Edit: SIGH! All of this seems to be pretty useless: Vista has a much easier way to see what we're looking for. You can just open the task manager, go to the process tab. Right-click on the svchost processes, and click 'go to services'. You'll see what services are running under the instances of svchost then.
I can close all of the svchost.exe's fine and my computer does not crash, but as soon as I open LFS, that 150 000kb svchost.exe starts over again, loading my CPU for no appearant reason. With LFS being over 200 000kb and the usual programs running in background, I can understand why LFS feels slow. But how to fix the damn thing? It always come back over and over and over and over and over again...
SVCHOST instances are bundled system processes. Ending task on them is NOT a good idea as many of these individual processes have dependencies underneath them. Vista is a big-time resource hog compared to other OSs, due to the fact that each new feature generally adds at least 1 process (with dependencies) to one or more of your SVCHOST instances. If you really want to get to the root (no pun intended) of the problem, then you need to take a look at the individual system processes that make up these SVCHOST instances. You can do this by running services.msc. The list you see is a list of system processes, their current status, their dependencies, and if/how/when they are set to run. Just keep in mind that if you choose to end a process you are also ending all processes that are dependencies. My suggestion is to go to technet.com and look up each of these processes to determine which ones your system can and cannot do without. When in doubt, dont freikin' touch it! I will say that there is one process that you can almost undoubtedly do without, and that is Superfetch. Its a new feature in Vista that is unnecessary and uses quite a bit of your system's resources. I hope this will be of some help to you. Attached is an example of the services.msc list on my machine (XP), but yours should look similar.
Quite true, except that going by the services.msc to see what is controlled and launched by svchost is more annoying than doing it in another program, or in the task manager of Vista. For example, I know that the 'DCOM Server Process Launcher' is a service that uses svchost, but to see that in services.msc, you have to go to the proprieties of the said service, and see that its run path is 'C:\WINDOWS\system32\svchost -k DcomLaunch'. While this works, you have to do each service one at a time to see which one uses svchost.
Alternatively, if you use a program like Process Explorer, you're able to see the proprieties of the svchost themselves, not the proprieties of each services behind. This allows you to see much faster what's behind a particular svchost, and while some of them only run a single service, you can see the attached image to see how many are running under a single svchost on my computer.
I agree, however, that messing with the services when you don't know what they're doing probably isn't a good idea. At the very least, you need to search on the internet to see what they're there for, but usually if they were started in the first place, there has to be a reason. It's possible that some services were started a while ago by something that you don't use anymore, but it's probably hard to identify which service isn't in use anymore.
There is certainly nothing wrong with the "Process Explorer" method, I guess particularly in terms of folks who are not used to these sorts of things. But personally as a technician of 10 years, I avoid using any 3rd party programs as much as possible. Mostly because I know my way around well enough to where I'm usually faster that way. But also because (not to scare any1) I have had absolute holy-hell nightmares with 3rd party programs in the past. Particularly when they have to do with system processes, hard drive indexing, anything like that. I just find it alot safer in my case to operate as close and cuddly to the OS as possible. Maybe its just the geek and/or self-masochistic side of me.
Not sure if this has been said before but you can see what processes are under which svchost.exe, rightclick on any off them then click on Go To Service(s). Don't see the point in all this arguing because if there is ram avalible it will use it but when you use a program which demands alot of ram vista will give it back to the programs which need it most.