Bug 检查 0x4D:NO_PAGES_AVAILABLE

NO_PAGES_AVAILABLE Bug 检查的值为 0x0000004D。 这表示没有可用页面来继续操作。

重要

这篇文章适合程序员阅读。 如果您是在使用计算机时收到蓝屏错误代码的客户,请参阅蓝屏错误疑难解答

NO_PAGES_AVAILABLE 参数

参数 说明
1 脏页总数
2 发送至页面文件的脏页数
3 发生 Bug 检查时可用的非分页缓冲池的大小
4 最近修改的写入错误状态。

原因

若要查看常规内存统计信息,请使用 !vm 3 扩展。

此 Bug 检查可能由以下任意原因造成:

  • 驱动程序已阻止、死锁已修改或映射的页面编写器。 此类示例包括互斥死锁或对文件系统驱动程序或筛选器驱动程序中分页内存的访问。 这表明存在驱动程序 bug。

    如果参数 1 或参数 2 较大,则有可能出现这种情况。 使用 !vm 3

  • 存储驱动程序未处理请求。 此类示例包括滞留队列和非响应驱动器。 这表明存在驱动程序 bug。

    如果参数 1 或参数 2 较大,则有可能出现这种情况。 使用 !vm 8,后跟 !process 0 7

  • 高优先级实时线程导致平衡集管理器无法从工作集中剪裁页面,或导致修改后的页面编写器无法将其写出。这表明创建此线程的组件中存在 bug。

    这种情况很难分析。 请尝试使用 !ready。 还可以尝试 !process 0 7 列出所有线程,并查看是否有任何线程累积过多的内核时间及其当前优先级。 此类进程可能已阻止内存管理线程提供可用页面。

  • 没有足够的池可供存储堆栈来写出修改的页面。 这表明存在驱动程序 bug。

    如果参数 3 较小,则有可能出现这种情况。 使用 !vm!poolused 2

如果找不到问题,请尝试从一开始就使用附加的内核调试器启动,并监视情况。