Windows 2008 R2 内存转储

Windows 2008 R2 内存转储

今天,我们的 Windows Server 2008 R2 出现了内存转储错误。根据蓝屏查看器,其错误代码为“UNEXPECTED_KERNEL_MODE_TRAP”,错误代码为“0x0000007f”。

倾倒

但我不太清楚它的意思。请提供建议。

谢谢,Sandesh

答案1

https://msdn.microsoft.com/en-us/library/windows/hardware/ff559244(v=vs.85).aspx

UNEXPECTED_KERNEL_MODE_TRAP (7f) 

这意味着在内核模式下发生了陷阱,并且是内核不允许拥有/捕获的陷阱(绑定陷阱)或始终会导致立即死亡(双重错误)。错误检查括号中的第一个数字是陷阱的编号(8 = 双重错误等)。请查阅 Intel x86 系列手册以了解有关这些陷阱的更多信息。

•0x00000008 或双重故障表示在调用前一个异常的处理程序期间发生异常。通常,这两个异常是按顺序处理的。但是,有几个异常不能按顺序处理,在这种情况下,处理器会发出双重故障信号。双重故障有两种常见原因:

◦内核堆栈溢出。当保护页被命中,并且内核试图推送陷阱帧时,就会发生此溢出。由于没有剩余堆栈,因此会导致堆栈溢出,从而导致双重错误。如果您认为发生了此概述,请使用 !thread 确定堆栈限制,然后使用 kb(显示堆栈回溯)和较大的参数(例如,kb 100)显示完整堆栈。

◦硬件问题。

第三方设备驱动程序是最有可能的罪魁祸首。(杀毒软件经常犯这种错误,但我再说一遍,是驱动程序。)当它们做错事时,比如溢出内核堆栈或搞乱对 ExAllocatePoolWithTag 的调用,系统就会崩溃。内核模式下的一切都必须完美无缺,否则机器就会崩溃。

我需要分析一下转储才能继续说下去。我添加的链接里有很多有用的信息。

相关内容