Xperf (ETW) 如何测量驱动程序加载时间?
Posted
技术标签:
【中文标题】Xperf (ETW) 如何测量驱动程序加载时间?【英文标题】:How Xperf (ETW) measures driver load time? 【发布时间】:2011-07-18 22:59:22 【问题描述】:我正在使用 Xperf 来测量我的 WDF 驱动程序的加载时间。由于某种原因,加载时间相当长 - 长达 1 秒。奇怪的是,即使我从驱动程序中删除所有代码,它仍然如此。
我的问题是 - XPerf(或更正确的 Windows 事件跟踪)如何测量驱动器加载时间?我可以看到这不是 DriveEntry 所花费的时间,而不是二进制加载所花费的时间。有什么提示吗?谢谢。
【问题讨论】:
【参考方案1】:我会回答我自己的问题:
XPerf 仅测量 Windows 加载程序需要加载驱动程序二进制文件的时间。 IE。它没有考虑驱动程序内部例程执行所需的时间。
另外 - 由于某些奇怪的原因,如果驱动程序未签名,则 XPerf 输出不一致并且完全错误。即使在系统启动时禁用“驱动程序签名检查”,此行为仍然存在。一旦驱动程序被签署,加载时间数字就变得可行了。
【讨论】:
以上是关于Xperf (ETW) 如何测量驱动程序加载时间?的主要内容,如果未能解决你的问题,请参考以下文章
如何在通用应用程序中禁用任务并行库的 ETW EventSource?