![如何诊断 Windows 启动或登录缓慢的问题?](https://linux22.com/image/1266675/%E5%A6%82%E4%BD%95%E8%AF%8A%E6%96%AD%20Windows%20%E5%90%AF%E5%8A%A8%E6%88%96%E7%99%BB%E5%BD%95%E7%BC%93%E6%85%A2%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%9F.png)
当我启动 PC 时,它顺利地启动到 Windows(Windows 7 32 位),我登录后 Windows 主屏幕出现。然而,此时系统响应极慢,长达 5 分钟 - 如果我单击 Firefox 来启动它,很长时间似乎什么都没有发生,等等。鼠标和 Windows UI 响应迅速,但程序启动需要很长时间,网页似乎挂起(或至少加载速度极慢)等等。
我猜想问题出在启动时运行的一个或多个程序上,但我不知道如何确定是哪一个。事件日志没有显示任何明显有趣的内容。我在任务管理器或 Process Explorer 中看不到任何高 CPU 活动,也听不到任何高磁盘活动。
我宁愿了解发生了什么,然后想办法解决它,而不是盲目地“关掉东西,看看有什么帮助”,但也许这是乐观的:-)
我怀疑是磁盘瓶颈或网络问题,但我不知道如何设置一些东西来诊断这个问题(特别是,考虑到我无法让程序及时启动,我更喜欢一些可以自动启动并记录数据以供以后分析的东西,而不是像 Process Explorer 这样的东西,它总是让我担心当它启动时问题已经消失了 :-)
我想我的理想是两件事:
它为我提供了总体的“该系统当前的主要瓶颈是什么”摘要(理想情况下,可以将其设置为在后台运行并收集数据以供以后分析)。
启动程序(例如,Firefox)的某些方法并让其记录系统中等待和延迟的情况。
不幸的是,我从来没有真正发现过类似的东西。
我不是专业的系统管理员 - 我的背景是数据库管理 - 所以如果有“明显的”工具可以查看或尝试,那么我会很高兴知道它们(特别是如果他们提供的信息对于业余爱好者来说很容易分析):-)
答案1
WPT 的 XPerf 和 XBootMgr 工具(在 Windows SDK 或以下版本中提供)非常适合解决 Windows 上任何与性能相关的问题;无论是在启动时还是在播放全高清视频时出现问题,这些工具都可以帮助您查明问题所在。它们是免费的,来自 Microsoft。:)
性能分析
可以按如下方式排除缓慢系统的故障:
从以下位置下载安装程序Windows 性能分析工具适合您的 Windows 版本。
在您的系统上安装该软件。
打开命令提示符作为管理员,然后复制粘贴下一个命令:
xperf -start perf!GeneralProfiles.InBuffer && timeout -1 && xperf -stop perf!GeneralProfiles.InBuffer myTrace.etl
按ENTER 一次要启动命令,现在您必须等到操作完成。
操作完成后您前往控制台并按下ENTER。
等待一段时间后,将会生成一个日志文件 myTrace.etl。
您可以自己分析一下,如果找不到问题,请上传它,我会帮助您:
- 将其压缩为 zip 文件,放在网上的某个地方(也许是 2shared)。
- 在这里分享链接,我会尝试找出并向您展示问题的原因。
引导分析
如需用户友好且简单的方法,请查看@harrymc 建议 Soluto。
对于详细的启动分析,检查此文件,XBootMgr.exe 在我之前链接的 WPT 中可用。
按照文档中的说明进行操作将会产生类似的日志,您可以分析或上传它。
答案2
更新:Soluto 已开始行动,其软件现在与移动世界相关。Soluto 的原始“抗挫折软件”不再由制造商提供;人们需要在网上寻找旧版本,但旧版本可能不再有效。
很遗憾,因为这是一个非常独特的产品。
这是他们网站的存档副本。 他们的网址现在重定向至asurion.com,该公司似乎提供技术服务,但不提供产品。
Soluto 是一款出色的启动分析产品。
更多信息请参阅:Soluto 找出导致你电脑运行缓慢的原因(并告诉你如何修复)。
答案3
我还有一个关于跟踪启动时间的建议。通过事件查看器中的事件 100 进行跟踪。深入研究以下链:
Eventvwr
-->Applications and Service Logs
-->Microsoft
-->Windows
-->Diagnostics - performance
-->Operational
-->Event ID 100<--
然后双击事件 100,它会显示一个显示启动时间的小窗口。
然后单击“详细信息”选项卡,该选项卡为您提供所有附加信息,您可以从中确定启动期间耗时最多的过程。
EventData
BootTsVersion 2
BootStartTime 2015-04-09T15:19:05.671600300Z
BootEndTime 2015-04-09T15:21:34.500099800Z
SystemBootInstance 1174
UserBootInstance 1155
BootTime 24239
MainPathBootTime 12239
BootKernelInitTime 19
BootDriverInitTime 291
BootDevicesInitTime 906
BootPrefetchInitTime 0
BootPrefetchBytes 0
BootAutoChkTime 0
BootSmssInitTime 8551
BootCriticalServicesInitTime 410
BootUserProfileProcessingTime 823
BootMachineProfileProcessingTime 70
BootExplorerInitTime 499
BootNumStartupApps 7
BootPostBootTime 12000
BootIsRebootAfterInstall false
BootRootCauseStepImprovementBits 0
BootRootCauseGradualImprovementBits 0
BootRootCauseStepDegradationBits 0
BootRootCauseGradualDegradationBits 0
BootIsDegradation false
BootIsStepDegradation false
BootIsGradualDegradation false
BootImprovementDelta 0
BootDegradationDelta 0
BootIsRootCauseIdentified false
OSLoaderDuration 1894
BootPNPInitStartTimeMS 19
BootPNPInitDuration 932
OtherKernelInitDuration 411
SystemPNPInitStartTimeMS 1338
SystemPNPInitDuration 265
SessionInitStartTimeMS 1609
Session0InitDuration 4563
Session1InitDuration 553
SessionInitOtherDuration 3434
WinLogonStartTimeMS 10161
OtherLogonInitActivityDuration 686
UserLogonWaitDuration 182