• 关于Services.exe开机CPU内存使用暴增解决方案


          这两天系统(Windows Server 2003 SP2)开机,发现Services.exe进程CPU使用率暴增并且伴随内存狂耗,内存和虚拟内存可以在10分钟之内耗尽。我3G内存呀,外加2G虚拟内存。但诡异的是待内存耗尽后,Services.exe有突然释放内存,回到正常状态……

          但开机过程实在太痛苦了,还是早点把这问题解决了比较好。Services.exe属于系统级进程,只有Event Log服务和即插即用服务使用该进程。问题范围很小了,挨个排除呗。

          先扫用NOD32查杀一遍病毒,未发现有毒,后清空了一大堆的系统日志,重启问题依旧;又关闭了Event Log服务,超慢速重启后问题依旧;打开服务,看看隐藏设备,其中并没有感叹号的即插即用设备呀?本来貌似简单的问题陷入僵局。

          没招了,下载微软的工具套装SysinternalsSuite(该套装可在微软官网免费下载),用其中的autoruns收拾收拾启动加载项,但也没发现可疑启动加载项。重启,在Services.exe狂耗内存时打开procexp和procemon监控这个让人郁闷的Services。翻遍加载的DLL,没发现有啥可疑的,终于在procemon的监控中发现Serviece居然在疯狂读写WINDOWS\LastGood.tmp\INF\oem32.inf和WINDOWS\LastGood.tmp\INF\oem32.pnf文件。好奇地打开该路径看看,发现oem32.inf和pnf文件均为0KB。LastGood.tmp是安全模式的最后一次正确配置生成的文件夹,但这个oem32驱动信息是咋回事呢?找了下WINDOWS\inf文件夹,其中并没有oem32.inf,只有oem31。猜测一下,估计是某个软件正准备安装新驱动时驱动文件损坏了,导致这个结果。用unlocker解锁LastGood.tmp文件夹,CPU和内存使用率瞬间降为正常值了。重启后的services.exe狂耗内存和CPU的问题也解决了!

          总结,针对这类问题应该先排除病毒问题,在按照该进程特性缩小问题排查范围,如果问题还未解决,就要靠工具辅助分析了。本次分析用到的工具有:Autoruns、Process Explorer、Process Monitor、unlocker,均免费!问题解决方案同样适用于XP系统。

  • 相关阅读:
    javascript 编码规范
    javascript 减少全部变量
    轮播图 jquery
    SVN MAC
    php excel
    php email
    查看网站后台
    linux 下载文件
    第6周小组作业:软件测试和评估
    第4周小组作业:WordCount优化
  • 原文地址:https://www.cnblogs.com/codingmylife/p/1678532.html
Copyright © 2020-2023  润新知