svchost.exe为什么会占用那么多CPU?

 我来答
史料有料
2020-11-20 · TA获得超过1.3万个赞
知道小有建树答主
回答量:165
采纳率:100%
帮助的人:2.1万
展开全部

svchost.exe是Windows操作系统里专门用来运行动态链接库(DLL)的前导程序。这个程序不能被终止运行,对系统的正常运行很重要。


它正确的位置应该位于:32位系统,C:\Windows\system32目录下;64位系统,C:\Windows\SysWOW64目录下;如果在其他地方看到,那么很可能是病毒程序。Svchost.exe是Windows服务主程序(服务宿主)有很多网友反映无法在Windows的任务管理器中查看Svchost,因为它不是用户进程,而是为用户SYSTEM、LOCAL
SERVICE、NETWORK SERVICE等提供服务的系统进程。Windows
7需要选中“进程选项卡”下方的“显示所有用户的进程”才能看到多个Svchost。Windows
10需要选中“详细信息”才能看到多个svchost。


服务指的是保障系统正常运行的一系列底层与后台任务流程。svchost.exe作为其宿主,通过调用不同的系统模块,执行不同的命令行来执行不同的任务。可以认为它是一个空壳,通过外部的、模块化的、分散化的内容来发挥作用。举个例子:同时按住键盘的“Win”+“R”调出“运行”窗口,然后输入“services.msc”打开“服务”管理界面。


随机的打开一个服务,如下图:


注意观察可执行文件的路径及其后面的参数。但并非所有的服务都通过svchost.exe来执行。如下图:


由此可见,Windows下的服务通常来说都发挥着极其重要的作用,但并非完全不可或缺,svchost.exe也不例外。正常的情况下,svchost.exe是不会长时间的占用大量的CPU如果svchost.exe长时间占用大量的CPU,说明系统出现了问题。我们可以通过排查的方法找到问题所在。步骤如下:1、在任务管理器中找到占用CPU资源较大的svchost.exe,如下图


2、然后鼠标点击右键,选择“转到服务”,如下图:


3、根据服务的必要性和重要性选择是否结束相应的svchost.exe或停止相应的服务,来进行下一步的分析。具体原因可能多种多样,要善于运用windows自带的“资源监视器”、“事件查看器”和搜索引擎找到解决的办法。“资源监视器”打开入口:控制面板>系统和安全>管理工具


“事件查看器”打开入口:控制面板>系统和安全>管理工具




一般来说,svchost.exe长时间占用大量的CPU,可能出现了以下几种情况:运行某个程序出现了死循环;某个程序占用CPU资源较大(比如系统更新时);网络资源占用过大;中毒;其他问题;所以往往我们没有办法通过排除法来分析出问题的原因时,重装一下系统就好了。如果确实没有办法要重装系统,重装系统前一定要备份好重要资料。总之,具体问题要具体分析,自己确实解决不的,要向专业的朋友进行求互。以上个人浅见,欢迎批评指正。认同我的看法,请点个赞再走,感谢!喜欢我的,请关注我,再次感谢!


推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式