今年3月下旬,有位顾客反应在28号机玩英雄联盟时电脑很卡,整个画面突然卡住几秒后又自动变好,要不然就是FPS掉的厉害。我远程查看这台机的进程是正常的,调出任务管理器发现有2个系统进程在system32/svchost.exe占用CPU比较高,在25%左右来回波动,如下图:
我第一反应就是结束它,居然提示“系统主要进程被结束,将要重启”的字眼:
过一会系统自动重启了,我想重启也好,应该也就不会了。没想到顾客一进入游戏立马出现,网吧其它客户机都正常,就这台28号机会这样,只好让顾客先换台电脑,把这台电脑重启后发现一切正常了,等了10多分钟还是正常。由于问题不能复现,我只是随便查看svchost.exe和explorer.exe加载的DLL,都正常。
从第二天开始28号机又出现了,每次出现都是顾客玩的热火朝天的时候,所以很难测试,我想就这台电脑这样应该是单机问题吧,于是把内存换了测试。在接下来几个星期里再没出现这问题,我以为这样就解决了。
没想到在4月中旬22号机又出现这样的状况,这就肯定不是单机问题了,应该是广告注入造成的,用pchunter查看加载的DLL和驱动都是空的,正常的,其它复杂的我也不会查,无从下手。在群里咨询后让我想到了开机命令,我把不必要的命令删除,其中一项是桌面软件,我觉得这个嫌疑最大,经常听说桌面软件会带广告。取消后在接下来的2个月里再没出现,这时我以为真的是桌面软件带来的广告。
到了6月中旬高考考完,上网的人多了一些,有位学生上6号机又出现同样的情况,我给他换了台电脑解锁上机,保留好6号机的状态,坐下来慢慢研究。我突然想起两年前万象的进程wxcltaidex.exe也是会随机出现占用CPU高的情况,会不会是改变进程,从系统进程下手了?我结束wxcltaidex.exe进程测试,居然正常了,等了10分钟都是正常的,至此总算找到了元凶,也就知道了解决办法:只要出现就结束万象这个进程,让它自启动下。
正当我以为解决问题的一个星期后22号机又出现了,我尝试结束wxcltaidex.exe居然无效,结束svchost.exe又自动重启了,重启后又正常了。我的环境是万象OL+过滤王+绿化大师,我怀疑这其中的软件放广告造成的,但又不好测试,首先是随机电脑出现,一旦出现就相对固定某台电脑,且每次出现都只有一台电脑,其次是出现的时间不确定,有时几个星期才出现,有时第二天就复现。我在群里问了几个技术,他们说应该查看svchost.exe的线程,当出现时我用pchunter查看线程和模块全部都是微软的,很正常。
我把这情况在维护大师群里咨询了技术A,A哥很忙但态度非常好,远程帮我调试,通过调试发现是声音的服务AudioEndpointBuilder造成的,如下图:
由于A哥很忙而且不在实地,远程也不方便,所以查到这里就得靠我自己了。我试着停止这个服务,貌似CPU占用率低了下来,但还是会在5%-8%波动,过了10分钟就自动变好了,但停止这个服务的副作用是没有声音了,我想临时解决办法只能这样:如果再出现停止此服务让顾客顺利完成游戏,如果无效,就试着把扬声器里的“禁用所有增强功能”的勾打上,(早前英雄联盟火的时候都说要这样设置,后来发现不禁用好像也不会怎么样,就取消了禁用,现在这个问题和声音有关,所以就禁用试试),如下图:
调试工具下载: Process Monitor.exe , PCHunter64.exe
没几天有位顾客在31号机玩DNF又出现了,我赶紧按之前的方法测试完全没用,CPU使用率还是一样的跳,我查看svchost.exe的线程发现有个audiosrv.dll是正在运行,我结束这个DLL后CPU变正常了,且没有副作用,我百度查看这个DLL并不是每次都启动,拦截应该没关系,我就把此DLL加入黑名单。
就在我又以为问题解决的时候7月底22号机和36号机又随机出现了,虽然每次出现只有1-2台电脑,可问题真的很严重,我也很烦燥。这次不同的是36号机频繁的出现,重启电脑也还是会复现,我在维护大师群里请教,技术X热情的帮我调试,他让我先复制一个镜像开包挂载PM,问题复现时Q他。我重启电脑后没几分钟就出现了,于是技术X调试起来。
和之前一样最终锁定AudioEndpointBuilder服务和audiosrv.dll,技术X怀疑会不会是收费软件疯狂的读取audiosrv.dll造成的呢?但PM没有抓到日志,到了这里也只能靠我自己了,其实很早之前我也想过可能是万象问题,(之前就出现过 万象造成绝地求生100%死机的问题)但问题不会一直复现,很难排查,这台电脑一直出现这就方便查找原因了:
1,首先,我退到只有万象的还原点(无安全软件拦截万象广告),无效
2,退到无万象无实名插件的还原点(只安装驱动),无效
3,退到裸包状态下,无效
这就排除了万象OL和过滤王了,那么只有无盘软件绿化大师了,绿化大师虽然说没有广告,其实还是会放一点,但都能接受,如果是暗刷的话就没办法接受了。我赶紧联系绿化客服,他们说绿化没有暗刷只有菜单广告,不会造成你说的情况,我又问了几个绿化的代理,他们都说广告是关闭的,也告诉我说:你从其它地方排查,绿化是不会造成你说的这情况的。我突然想起之前有拿一台客户机安装过云更新服务端测试,于是把36号机设置为从云更新启动,祼包状态下居然也会发生!这就排除了无盘软件绿化大师的嫌疑了,相当于换了无盘服务器,换了无盘软件还是会,也排除了无盘服务器中毒的可能,那就有可能是单机问题了,但如果是单机问题为什么会时不时出现在不同的电脑上呢?我查看这几个进程的服务都是系统服务,如下图:
到这里完全没有头绪了,突然想起了谭晓希,我在QQ上向他咨询,他给了我一个工具查看是否是某个驱动造成的,结果发现一切正常,最高只有0.44
到了8月15号那天刚好我上班,有位顾客反应12号机上没多久就会自动重启,已经出现三次了,我让他先换台电脑,过去拆开12号后感觉机箱温度很高,开机测试发现CPU风扇居然不会转了!我检测是风扇的接口接错了,要插左三的,我却插成了右三,居然也用了这么久没发现,忽然我想到22号和36号机会不会也是因为温度高引起的呢?我先在36号机打开鲁大师测试,CPU温度50多度,风扇转速没有显示,没多久就飙到60多度了,拆开机箱查看果然风扇不会转,同样也是接口接错了(我恨自己真的很粗心),现在看来困扰已久的这个问题就是因为我没有接好风扇而温度过高造成的!找到原因就好,我心情一阵轻松,换好接口并重新涂好硅胶,就开心的回家了。
晚上20:00多一到网吧就有顾客反应36号机很卡,我查看任务管理器还是同样的状况,真的无语了,完全没有办法了!我又联系了谭晓希,把之前的每个细节都和讲了一遍,他说:这个不像是温度高造成的,他提醒我在BIOS里禁用声卡看看,毕竟感觉这是和声卡有关系。我将信将疑的试了下居然解决了,就这么简单,解决了!!!我有点不敢相信,困扰了我几个月的问题就这么简单的解决了!我又反复测试重启了几十次真的再没发生。难道是主板声卡坏了造成的?我寻思着准备第二天买个独立声卡接上去测试。
第二天早上一到网吧我打算先开启声卡测试,果然就又发生了!说明这真的和声卡有关系!
然后我开超级安装新的声卡驱动,以为是好了,实际没有好(在后续的多次测试中发现新的驱动也是一样)。突然我想起半个月前22号机同样的情况下,自动好了,到现在再没发生过。这半个月期间几次有顾客反应22号机不能说话,我记得之前都是可以说话的,查看属性发现麦克风是打叉的,拔插也没用(听声音正常),我想会不会是耳麦引起的?于是拔掉耳麦测试好多次都正常,然后再插上去测试就又发生情况了,这说明和话筒有关,我插上话筒后,打开扬声器的“录音设备-属性”测试,正常情况下如下图:
可没过多久就变成下图:
我反复测试了一下午才看到是麦克风接触不灵造成的,一会弹掉,一会出现,一旦这样,CPU使用率就会达到20%-30%,拔掉麦克风一切恢复了平静(这期间我换过两次耳麦,都是3.5的麦,说明是主板声卡话筒的问题),困扰了我几个月的问题居然是这种奇葩问题,也让我想起了去年和前年这批电脑偶尔出现的突然没有声音,拔插后才正常的事,其它电脑偶然发生也是和这话筒接触不良有关。最后我要感谢谭晓希,每次遇到问题我都会求助于他,而他都是非常热心的,耐心的,有条不紊的教我测试方法,真心谢谢他!