注释
从 Windows 10 内部版本 19042 及更高版本开始,此检查已弃用
Power Framework 延迟模糊测试选项对线程调度进行随机化,以帮助检测使用 电源管理框架(PoFx)的驱动程序中的并发错误。 对于不直接利用电源管理框架(PoFx)的驱动程序,不建议使用此选项。
注意 此选项从 Windows 8 开始可用。
选择该选项后,驱动程序验证程序会在线程中的各个点插入随机延迟。 Power Framework 延迟模糊处理选项使用提供概率保证的算法来查找驱动程序中的错误。 Power Framework 延迟模糊处理改进了传统的压力测试,即测试程序运行数天甚至数周,希望捕获并发执行中可能出现的问题。
大多数驱动程序例程是可重入和并发的。 并发 bug 是臭名昭著的难以找到的。 Bug 可能包括死锁和竞争条件,这是由于同步问题和线程之间的错误计时引起的。 压力测试是传统的测试技术,但它可能很慢,而且成本高昂,结果并不总是可重现的。 Power Framework 延迟模糊处理选项通过在各种电源 API 函数调用中插入随机延迟来提高运行时出现的争用条件的概率。 例如,如果争用条件导致驱动程序在取消 IRP 后仍访问 IRP,则 Power Framework 延迟模糊测试选项会增加该争用条件发生的可能性,从而使驱动程序验证程序能够在测试期间检测到错误。 Power Framework 延迟模糊选项扩展了驱动程序验证程序的强大功能和有用性。
激活此选项
可以为一个或多个驱动程序激活 Power Framework 延迟模糊功能,方法是使用驱动程序验证管理器或 Verifier.exe 命令行。 有关详细信息,请参阅 “选择驱动程序验证程序选项”。 必须重新启动计算机才能激活或停用 Power Framework 延迟模糊选项。
注意 Power Framework 延迟模糊测试选项通过在各种电源 API 函数调用中插入随机延迟来提高在运行时出现竞态条件的概率。 要使这些延迟更有效,可以使用其他驱动程序验证程序选项启用此选项。 由于可以引入的延迟,可以预期计算机响应速度较慢。
在命令行
在命令行中,Power Framework 延迟模糊处理由 验证程序 /flags 0x00008000 (Bit 15) 表示。 若要激活 Power Framework 延迟模糊,请使用标志值0x00008000或向标志值添加0x00008000。 例如:
verifier /flags 0x00008000 /driver MyDriver.sys下一次启动后,该功能将处于活动状态。
使用驱动程序验证管理器
- 启动驱动程序验证程序管理器。 在命令提示符窗口中键入 验证程序 。
- 选择 “创建自定义设置”(面向代码开发人员), 然后单击“ 下一步”。
- 从完整列表中选择单个设置。
- 选择(检查)Power Framework 延迟模糊处理。
- 重启电脑