Bug 检查:0x4E PFN_LIST_CORRUPT
PFN_LIST_CORRUPT Bug 检查的值为 0x0000004E。 这表示页框号 (PFN) 列表已损坏。
重要
这篇文章适合程序员阅读。 如果您是在使用计算机时收到蓝屏错误代码的客户,请参阅蓝屏错误疑难解答。
PFN_LIST_CORRUPT 参数
参数 1 表示违规类型。 其他参数的含义取决于参数 1 的值。
参数 1 | 参数 2 | 参数 3 | 参数 4 | 错误消息的原因 |
---|---|---|---|---|
0x01 |
ListHead 值已损坏 |
可用页数 |
0 |
列表标头已损坏。 |
0x02 |
列表中正在删除的条目 |
最高物理页码 |
要删除的条目的引用计数 |
列表条目已损坏。 |
0x06 |
页框号 |
原型 PTE |
PTE 内容 |
硬件 PTE 和/或原型 PTE 数据结构已损坏。 这可能是硬件单个位错误、DMA 传输中断等造成的。 |
0x07 |
页框号 |
当前共享计数 |
0 |
驱动程序已解锁某个页面的次数超过锁定页面的次数。 |
0x8D |
状态不一致的页框号 |
0 |
0 |
空闲页列表已损坏。 此错误代码很可能表明存在硬件问题。 |
0x8F |
新页码 |
旧页码 |
0 |
空闲或归零页列表头已损坏。 |
0x99 |
页框号 |
当前页面状态 |
0 |
页表条目 (PTE) 或 PFN 已损坏。 |
0x9A |
页框号 |
当前页面状态 |
要删除的条目的引用计数 |
驱动程序尝试释放仍处于 IO 锁定状态的页面。 |
原因
此错误通常是由于驱动程序传递了错误的内存描述符列表造成的。 例如,驱动程序可能已使用同一列表调用 MmUnlockPages 两次。
如果内核调试器可用,请检查堆栈跟踪:!analyze 调试扩展显示有关 Bug 检查的信息,并且有助于确定根本原因,然后输入其中一个 k(显示堆栈回溯)命令以查看调用堆栈。