没啥技术含量,都是老段子了,
这次记下来,只是我想说,我也做过,留个念相。
前置条件,电脑里面必须得有Verifier,有了之后把自己的驱动加进去,
WinDBG上双机,然后就可以跑了,跑一段时间就可以停了,
(这时候可以说一下,其实中间可以多次断下来,然后用 !poolused 命令对应TAG,来看内存使用量的,心里有个数)
驱动停了之后,果断卸载驱动,
这时候如果有内存泄露,就会触发一个蓝屏异常,然后就BSOD了,
异常错误码是 DRIVER_VERIFIER_DETECTED_VIOLATION (c4),
4个参数,第二个参数是一个WSTR,记录了出现问题的驱动名字,可以db一下,
第四个参数,实际上就是有多少个申请没释放了,
analyze 了之后,就是 !verifier 3 XXX.sys 了,
其实,前者只是为了验证一下内存相关的位置,
后一条命令的目的是为了让工具输出,到底是哪里出的问题,
输出结果分三段,内存地址,内存长度,申请的代码地址,
剩下的是什么。。。改呗。。。
时间: 2024-10-10 07:22:44