蓝屏代码DPC_WATCHDOG_VIOLATION一键修复
蓝屏代码0x00000133代表"DPC_WATCHDOG_VIOLATION",这意味着系统在执行延迟过程调用(DPC)时发生了错误。延迟过程调用是一种指定需要在优先级较低的线程上执行的任务的方法。当系统无法在规定时间内完成这些任务时,会出现DPC_WATCHDOG_VIOLATION错误,并导致系统崩溃。
要解决这个问题,可以尝试以下方法:
方法一:禁用或卸载可能冲突的程序
某些第三方程序可能与系统冲突,导致DPC_WATCHDOG_VIOLATION错误,尝试禁用或卸载最近安装的应用程序,然后观察是否会出现蓝屏错误。
方法二:重置BIOS设置
重置计算机的BIOS设置为默认值,以消除任何不正确配置可能引起的问题。
方法三:检查内存问题
运行Windows自带的内存诊断工具,以检查内存是否有问题,如果发现错误,则需要更换或修复内存模块。
方法四:使用一键修复工具助手(强烈推荐)
1、首先你的电脑必须下载与完成安装完成快快蓝屏修复助手。如果你还没有安装点击下方链接下载。
下载地址:>>>快快蓝屏修复助手<<<
提示:安装路径不要选择C盘,避免产生问题造成损失。
2、找到你电脑中的快快蓝屏修复助手,点击进入。看到首页后,点击首页一键扫描按钮开始扫描。等待几分钟,就能获取你急切想要的结果。
3、扫描完成后会显示电脑的所有蓝屏记录以及蓝屏的详细信息。
4、解决方案页面显示了导致该次蓝屏的具体原因和解决方案,点击右上角的一键修复进行修复。
5、切记,当修复完成之后我们还是需要重新启动计算机的。毕竟一切修复的结果,需要重新后,才能被系统认可。
当你完成重启后,你电脑的蓝屏问题已经基本解决了。相信小编,不要急需卸载快快蓝屏修复助手。毕竟它强大的功能是你未来的一个保障,可以随时随地为你服务,让你再次遇到蓝屏问题不在抓狂。
其他相关信息:
DPC_WATCHDOG_VIOLATION bug 检查 的值为 0x00000133。 此 bug 检查指示执行 DPC 监视器,可能是因为它检测到一个长时间运行的延迟过程调用 (DPC) ,或者因为系统长时间在中断请求级别花费了 (IRQL) DISPATCH_LEVEL 或更高版本。
参数 1 的值指示单个 DPC 是否超过超时,或者系统是否累积花费了在 IRQL DISPATCH_LEVEL 或更高版本的时间。 DPC 的运行时间不应超过 100 微秒,ISR 的运行时间不应超过 25 微秒,但系统上的实际超时值设置要高得多。
有关 DPC 的详细信息,请参阅由 Pavel Yosifovich、Mark E. Russinovich、David A. Solomon 和 Alex Ionescu 撰写的 DPC 对象 和 Windows 内部 7th 版简介第 1 部分 。
DPC_WATCHDOG_VIOLATION参数
参数 1 指示冲突的类型。 其他参数的含义取决于 参数 1 的值。
参数 1 | 参数 2 | 参数 3 | 参数 4 | 错误消息的原因 |
---|---|---|---|---|
0 | DPC 时间计数 (刻度) | DPC 时间分配 (刻度) 。 | 强制转换为 nt!DPC_WATCHDOG_GLOBAL_TRIAGE_BLOCK,其中包含有关此单个 DPC 超时的其他信息 | 单个 DPC 或 ISR 超出了其时间分配。 通常可以使用堆栈跟踪来标识有问题的组件。 |
1 | 监视程序周期 | 强制转换为 nt!DPC_WATCHDOG_GLOBAL_TRIAGE_BLOCK,其中包含有关此单个 DPC 超时的其他信息 | 保留 | 系统累计在 IRQL DISPATCH_LEVEL 或更高版本中花费了较长时间。 通常可以使用堆栈跟踪来标识有问题的组件。 |
原因
若要确定原因,需要 Windows 调试器、编程经验和对故障模块源代码的访问权限。
有关详细信息,请参阅以下主题:
使用 Windows 调试器 (WinDbg) 进行故障转储分析
使用 WinDbg 分析内核模式转储文件
使用 !analyze 扩展 和 !analyze
有关 Windows DPC 的详细信息,请参阅由 Pavel Yosifovich、Mark E. Russinovich、David A. Solomon 和 Alex Ionescu 撰写的 Windows Internals 7th Edition 第 1 部分 。
示例 1
!analyze 调试扩展显示有关 bug 检查的信息,并有助于确定根本原因 。
参数 1 = 0
在此示例中,501 的时钟周期计数超过了 500 的 DPC 时间分配。 映像名称指示此代码在 bug 检查发生时正在执行。
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
DPC_WATCHDOG_VIOLATION (133)
The DPC watchdog detected a prolonged run time at an IRQL of DISPATCH_LEVEL
or above.
Arguments:
Arg1: 0000000000000000, A single DPC or ISR exceeded its time allotment. The offending
component can usually be identified with a stack trace.
Arg2: 0000000000000501, The DPC time count (in ticks).
Arg3: 0000000000000500, The DPC time allotment (in ticks).
Arg4: 0000000000000000
...
IMAGE_NAME: BthA2DP.sys
...
使用以下调试器命令收集参数为 0 的失败的详细信息:
k (显示堆栈回溯) 查看停止代码发生时正在运行的代码。
你可能想要使用 u、ub、uu (Unassemble) 命令来更深入地了解正在运行的代码的具体情况。
!pcr 扩展显示处理器控制区域的当前状态, (特定处理器上的 PCR) 。 在输出中为 Prcb 的地址
0: kd> !pcr
KPCR for Processor 0 at fffff8035f5a4000:
Major 1 Minor 1
NtTib.ExceptionList: fffff80368e77fb0
NtTib.StackBase: fffff80368e76000
NtTib.StackLimit: 0000000000000000
NtTib.SubSystemTib: fffff8035f5a4000
NtTib.Version: 000000005f5a4180
NtTib.UserPointer: fffff8035f5a4870
NtTib.SelfTib: 000000b6d3086000
SelfPcr: 0000000000000000
Prcb: fffff8035f5a4180
Irql: 0000000000000000
IRR: 0000000000000000
IDR: 0000000000000000
InterruptMode: 0000000000000000
IDT: 0000000000000000
GDT: 0000000000000000
TSS: 0000000000000000
CurrentThread: fffff80364926a00
NextThread: ffffe40b77c12040
IdleThread: fffff80364926a00
可以使用 dt (Display Type) 命令显示有关 DPC 和 DPC 监视器的其他信息。 对于地址,请使用 !pcr 输出中列出的 Prcb:
dt nt!_KPRCB fffff80309974180 Dpc*
0: kd> dt nt!DPC_WATCHDOG_GLOBAL_TRIAGE_BLOCK fffff803648fa320
+0x000 Signature : 0xaebecede
+0x004 Revision : 1
+0x006 Size : 0x10
+0x008 DpcWatchdogProfileOffset : 0x84a8
+0x00c DpcWatchdogProfileLength : 0x8200
示例 2
参数 1 = 1
对于参数 1,代码不能在代码的违规区域中停止。 在这种情况下,一种方法是使用事件跟踪来尝试跟踪哪个驱动程序超过其正常执行持续时间。
使用 !analyze 调试扩展显示有关 bug 检查的信息。
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
DPC_WATCHDOG_VIOLATION (133)
The DPC watchdog detected a prolonged run time at an IRQL of DISPATCH_LEVEL
or above.
Arguments:
Arg1: 0000000000000001, The system cumulatively spent an extended period of time at
DISPATCH_LEVEL or above. The offending component can usually be
identified with a stack trace.
Arg2: 0000000000001e00, The watchdog period.
Arg3: fffff803648fa320, cast to nt!DPC_WATCHDOG_GLOBAL_TRIAGE_BLOCK, which contains
additional information regarding the cumulative timeout
Arg4: 0000000000000000
强制转换 nt 的地址!DPC_WATCHDOG_GLOBAL_TRIAGE_BLOCK显示有关它的信息。
0: kd> dt nt!DPC_WATCHDOG_GLOBAL_TRIAGE_BLOCK fffff803648fa320
+0x000 Signature : 0xaebecede
+0x004 Revision : 1
+0x006 Size : 0x10
+0x008 DpcWatchdogProfileOffset : 0x84a8
+0x00c DpcWatchdogProfileLength : 0x8200
使用 !dpcs 命令显示排队的 DPC。
3: kd> !dpcs
CPU Type KDPC Function
0: Normal : 0xfffff8035f5ac290 0xfffff80363e15630 nt!PpmPerfAction
Failed to read DPC at 0xffffe40b77190dd8
0: Threaded: 0xfffff8035f5ac3d8 0xfffff80363f27d70 nt!KiDpcWatchdog
解决方法
若要确定特定原因并创建代码修复,需要具有编程经验和对故障模块源代码的访问权限。
备注
通常,此停止代码是由在某些条件下未在分配的时间范围内完成其工作的错误驱动程序代码引起的。
如果你没有能力使用 Windows 调试器来解决此问题,则应使用一些基本的故障排除技术。
如果在 bug 检查消息中发现了驱动程序,则要隔离问题,请禁用驱动程序。 请与制造商联系以获取驱动程序更新。
在系统登录事件查看器中查看其他错误消息,这些错误消息可能有助于识别导致 bug 检查 0x133的设备或驱动程序。
确认安装的任何新硬件都与已安装的 Windows 版本兼容。 例如,对于Windows 10,可以在 Windows 10 规范中获取有关所需硬件的信息。
有关其他常规故障排除信息,请参阅 蓝屏数据。
另请参阅
使用 Windows 调试器 (WinDbg) 进行故障转储分析
使用 WinDbg 分析内核模式转储文件
Bug 检查代码参考