正在加载图片...
21.1.4低资源模拟( Low Resources simulation) 当 Low re soues simulation可用时, Driver verifier将引起驱动程序内存分配的一个随机选择 失效,这个过程测试驱动程序对低内存和其他低资源状况下正常反应的能力。 为精确模拟一低内存条件,这些分配故障直到系统启动后的7分钟被注入,因此,在该过程 中暴露的任何驱动程序错误将以合法的运行问题对待,而非不切实际的情况 标记为 MUST SUCCEED的分配请求不服从于这一动作, MUST SUCCEED池的每页最大 值被禁止 Driver verifier能同时检查所选择的驱动程序或所有的驱动程序。 图形驱动程序 参看图形驱动程序的 Low resources simulation来获得该选项如何作用于显示驱动程序和内核 模式驱动程序的细节。 211.5内存池跟踪( Memory Pool Tracking) Memory Pool Tracking监视驱动程序所做的内存分配,当驱动程序未装载时, Driver verifier 确保驱动程序所决定的任何分配都已经释放。 不能释放的内存分配(也叫内存泄露)是引起低操作系统执行的通常原因,这些能引起系统 池破碎,最终导致系统崩溃 当这一选项运行时,如一驱动程序没有释放其所有的分配就卸载, Driver verifier将发布错误 检测0xC4(参数1等于0x60)。 如果 Driver verifier发布错误检测的参数1等于0x51,0x52,0x53,0x54或0x59,则该驱动 程序已经写入分配之外的内存里,在这种状况下,你应该能够让特别内存池来定位错源 参看微软调试程序文件的使用来获得所有错误检测参数0xC4的列表 监视内存池跟踪 Driver Verifier Manager的 Pool Tracking screen能够用来监视有分页和无分页的池分配。 内核调试程序扩展! verifier2能被用于驱动程序卸载之后未决的内存分配,或当驱动程序运行 时跟踪当前的内存分配。这个扩展也表明了池标记,池大小和每一个分配的分配器地址。为更多 的调试程序信息,请参看微软的调试程序使用文件 图形驱动程序 Memory Pool Tracking选项不适用于图形驱动程序,如被选中,不起作用 21.16O检查 Driver Verifier有两个IO检查构建,1级IO检查从一特别池分配驱动程序的IRP和监视驱 动程序的I/O对各种不当的动作的处理,2级IO检查执行所有1级的动作,和许多更细更广驱动 程序IO的使用。 2级I/O检查是一更有力的检测驱动程序LO的使用的方法,然而,这种高级的详细审查占用 了更多的内存,且它也能降低操作系统的执行级别。 1级O检查 当1级O检查可用时,通过 loAllocatelrp获得的所有IRP从一特别池分配,且它们的使用 受到跟踪。8 2.1.1.4 低资源模拟(Low Resources Simulation) 当 Low Resources Simulation 可用时,Driver Verifier 将引起驱动程序内存分配的一个随机选择 失效,这个过程测试驱动程序对低内存和其他低资源状况下正常反应的能力。 为精确模拟一低内存条件,这些分配故障直到系统启动后的 7 分钟被注入,因此,在该过程 中暴露的任何驱动程序错误将以合法的运行问题对待,而非不切实际的情况。 标记为 MUST_SUCCEED 的分配请求不服从于这一动作, MUST_SUCCEED 池的每页最大 值被禁止。 Driver Verifier 能同时检查所选择的驱动程序或所有的驱动程序。 图形驱动程序 参看图形驱动程序的Low Resources Simulation 来获得该选项如何作用于显示驱动程序和内核 模式驱动程序的细节。 2.1.1.5 内存池跟踪(Memory Pool Tracking) Memory Pool Tracking 监视驱动程序所做的内存分配,当驱动程序未装载时,Driver Verifier 确保驱动程序所决定的任何分配都已经释放。 不能释放的内存分配(也叫内存泄露)是引起低操作系统执行的通常原因,这些能引起系统 池破碎,最终导致系统崩溃。 当这一选项运行时,如一驱动程序没有释放其所有的分配就卸载,Driver Verifier 将发布错误 检测 0xC4(参数 1 等于 0x60)。 如果 Driver Verifier 发布错误检测的参数 1 等于 0x51,0x52,0x53,0x54 或 0x59,则该驱动 程序已经写入分配之外的内存里,在这种状况下,你应该能够让特别内存池来定位错源。 参看微软调试程序文件的使用来获得所有错误检测参数 0xC4 的列表。 监视内存池跟踪 Driver Verifier Manager 的 Pool Tracking screen 能够用来监视有分页和无分页的池分配。 内核调试程序扩展!verifer2 能被用于驱动程序卸载之后未决的内存分配,或当驱动程序运行 时跟踪当前的内存分配。这个扩展也表明了池标记,池大小和每一个分配的分配器地址。为更多 的调试程序信息,请参看微软的调试程序使用文件。 图形驱动程序 Memory Pool Tracking 选项不适用于图形驱动程序,如被选中,不起作用。 2.1.1.6 I/O 检查 Driver Verifier 有两个 I/O 检查构建,1 级 I/O 检查从一特别池分配驱动程序的 IRP 和监视驱 动程序的 I/O 对各种不当的动作的处理,2 级 I/O 检查执行所有 1 级的动作,和许多更细更广驱动 程序 I/O 的使用。 2 级 I/O 检查是一更有力的检测驱动程序 I/O 的使用的方法,然而,这种高级的详细审查占用 了更多的内存,且它也能降低操作系统的执行级别。 1 级 I/O 检查 当 1 级 I/O 检查可用时,通过 IoAllocateIrp 获得的所有 IRP 从一特别池分配,且它们的使用 受到跟踪
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有