如何诊断 Windows 7 中 fltmgr.sys 阻塞的原因(HDD 访问缓慢)?

如何诊断 Windows 7 中 fltmgr.sys 阻塞的原因(HDD 访问缓慢)?

我的 Windows 7 PC 经常会卡住几秒钟,最长可达半分钟左右。我试图找出问题所在进程监视器通过过滤所有耗时超过 2 秒的系统调用,发现这些调用始终具有以下堆栈跟踪段:

0   fltmgr.sys  FltAcquirePushLockShared
1   fltmgr.sys  FltIsCallbackDataDirty
2   fltmgr.sys  fltmgr.sys

在大多数情况下,下一帧是 NtCreateFile。调用通常需要 2-10 秒,但在几乎空闲的系统上有时需要长达 50 秒。HDD(实际上是固态硬盘)似乎不是问题 -高清调谐基准测试和错误扫描均未显示任何问题,并且进程探索器也没有给出任何异常 CPU 或 IO 活动的迹象。而且我非常确定这不是病毒之类的。:-)

我如何才能找出实际问题?有什么有用的工具吗?

答案1

使用 WPT(Windows 8 SDK 的一部分)的 xperf 来跟踪磁盘 IO:

关联

运行脚本,最小化 CMD 窗口,当再次遇到问题时,返回 cmd,等待 15-20 秒,按下某个键停止记录。使用 xperfview 打开它,并在磁盘 IO 图中查看哪些进程导致高磁盘 IO。

相关内容