表010-62603429(杨小姐)»svchost.exe占用CPU100%的解决方法作者:车东发表于:2007-04-1512:04最后更新于:2007-05-2506:05版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明。http://www.chedong.com/blog/archives/001286.html现象:1.机器启动运行几分钟后svchost.exe就会占系统cpu资源的100%2.拔掉网线就好了,重连上网后一会儿:svchost.exe又占cpu资源的99%;解决:假设你已经使用了免费杀毒软件排除了病毒和已经使用防间谍软件排除了恶意软件的影响:想办法清空C:\WINDOWS\SoftwareDistribution目录下所有的文件重启机器即可。(C:\WINDOWS\SoftwareDistribution是Windowsupdate服务的临时文件存放目录)如果机器提示文件正在使用("AutomaticUpdates"服务正在运行)无法删除相应目录:则想办法打开控制面板==>管理工具==>服务,找到"AutomaticUpdates",设置成手动启动,重启后再删除C:\WINDOWS\SoftwareDistribution。问题就解决了。然后再打开控制面板==>管理工具==>服务,找到"AutomaticUpdates",恢复成自动启动重启。注意:重启后最好在上网条件比较好的地方让系统顺利完成一次系统自动更新。推广:遇到类似问题的应该挺多的,如果你也发现这个方法有用,请将http://www.chedong.com/blog/archives/001286.html这个链接加到你的blog里。html代码:
svchost.exe原因分析:先说说什么是svchost.exe:简单的说没有这个服务机器几乎就上不了网了。很多应用服务都是以来于这个接口RPC的,如果发现这个进程占了太多的CPU资源直接把系统的RPC服务禁用了会是一场灾难:因为连恢复这个界面的系统服务设置界面都无法使用了。恢复的方法需要使用注册表编辑器,找到HKEY_LOCAL_MACHINE>>SYSTEM>>CurrentControlSet>>Services>>RpcSs,右侧找到Start属性,把它的值改为2再重启即可造成svchost占系统CPU100%的原因并非svchost服务本身:以上的情况是由于WindowsUpdate服务下载/安装失败而导致更新服务反复重试造成的。而Windows的自动更新也是依赖于svchost服务的一个后台应用,从而表现为svchost.exe负载极高。常发生这类问题的机器一般是上网条件(尤其是去国外网站)不稳定的机器,比如家里的父母的机器,往往在安装机器几个月以后不定期发生,每个月的第二个星期是高发期:因为最近几年MS很有规律的在每个月的第二个星期发布补丁程序)。上面的解决方法并不能保证不重发作,但是为了svchost文件而每隔几个月重装一次操作系统还是太浪费时间了。教训:spoolsv.exe和svchost.exe的问题都是应用遇到失败/例外情况后自动重试造成的,本想为用户节省时间的设计,但是重试的频度过高反而导致了和病毒一样的效果。参考资料:svchost.exeCPUUsage100%,whenmyWindowsusingAutomaticUpdatesvchost.exe吃掉所有CPU資源微软官方说明:使用“自动更新”搜索更新或对使用WindowsInstaller的应用程序应用更新时,遇到涉及Svchost.exe进程的问题WindowsUpdate使SVCHOST.exe的问题跟踪让你做个高手全面认识Svchost.exe进程日期:2006-1-2612:03:32人气:0[大中小]很多朋友对Svchost.exe进程都不太了解,有时在任务管理器中一旦看到有多个该进程(图1中有6个),就以为自己的电脑中了病毒或木马,其实并非如此!正常情况下,Windows中可以有多个Svchost.exe进程同时运行,例如Windows2000至少有2个Svchost进程,WindowsXP中有4个以上,Windows2003中则有更多,所以当你看到多个Svchost进程时,未必就是病毒!图1Svchost.exe进程是干什么的?Svchost.exe文件存在于“%systemroot%\system32”(例如C:\Windows\system32)目录下,它是WindowsNT核心的重要进程(Windows9X没有该进程),专门为系统启动各种服务的。例如Svchost.exe调用rpcss.dll文件,就会启动rpcss服务(remoteprocedurecall)。Svchost.exe实际上是一个服务宿主,它本身并不能给用户提供任何服务,但是可以用来运行动态链接库DLL文件,从而启动对应的服务。Svchost.exe进程可以同时启动多个服务。Svchost是如...