verifier 调试内存泄露

没啥技术含量,都是老段子了,

这次记下来,只是我想说,我也做过,留个念相。

前置条件,电脑里面必须得有Verifier,有了之后把自己的驱动加进去,

WinDBG上双机,然后就可以跑了,跑一段时间就可以停了,

(这时候可以说一下,其实中间可以多次断下来,然后用 !poolused 命令对应TAG,来看内存使用量的,心里有个数)

驱动停了之后,果断卸载驱动,

这时候如果有内存泄露,就会触发一个蓝屏异常,然后就BSOD了,

异常错误码是 DRIVER_VERIFIER_DETECTED_VIOLATION (c4),

4个参数,第二个参数是一个WSTR,记录了出现问题的驱动名字,可以db一下,

第四个参数,实际上就是有多少个申请没释放了,

analyze 了之后,就是 !verifier 3 XXX.sys 了,

其实,前者只是为了验证一下内存相关的位置,

后一条命令的目的是为了让工具输出,到底是哪里出的问题,

输出结果分三段,内存地址,内存长度,申请的代码地址,

剩下的是什么。。。改呗。。。

posted @   穷到底  阅读(1351)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示