软件调试笔记43 - 堆和堆检查 : 堆回溯数据库
2017-12-06 15:25
267 查看
当调试内存问题时,很多时候我们希望知道每个内存块是由哪段代码或哪个函数分配的,最好有这个函数被调用的完整过程,这样就可以大大提高定位错误代码的速度。堆管理器所实现的用户态栈回溯USERMODE STACK TRACE,简称UST机制就是为了实现这个目的而设计的。
工作原理:
建立了UST数据库后,当堆块分配函数再被调用的时候,堆管理器便会将当前的栈回溯信息记录到UST数据库中,过程如下。
DH和UMDH工具:
定位内存泄漏:
工作原理:
建立了UST数据库后,当堆块分配函数再被调用的时候,堆管理器便会将当前的栈回溯信息记录到UST数据库中,过程如下。
DH和UMDH工具:
定位内存泄漏:
相关文章推荐
- 软件调试笔记48 - 堆和堆检查 :堆常用调试功能
- 软件调试笔记27 - 编译器的调试支持 :编译期检查
- 软件调试笔记41 - 堆和堆检查 : 低碎片堆
- 软件调试笔记39 - 堆和堆检查 : 堆的分配和释放
- 软件调试笔记44 - 堆和堆检查 : 堆缓冲区溢出
- 软件调试笔记46 - 堆和堆检查 :CRT堆
- 软件调试笔记42 - 堆和堆检查 : 堆的调试支持
- 软件调试笔记45 - 堆和堆检查 :页堆,准页堆
- 软件调试笔记36 - 栈和函数调用: 变量检查和Cookie
- 软件调试笔记37 - 堆和堆检查 : 堆概览
- 软件调试笔记40 - 堆和堆检查 : 堆的内部结构
- 软件调试笔记47 - 堆和堆检查 :泄漏转储
- 软件调试笔记38 - 堆和堆检查 : 堆的创建和销毁
- 软件调试笔记49 - 异常处理代码的编译
- 软件调试笔记56 - 调试符号 : PDB文件
- 软件调试笔记25 - 编译器的调试支持 :编译
- android 学习笔记3-debug调试 数据库 事务 显示界面TextView
- 软件调试笔记20 - 事件追踪
- 软件调试笔记
- omap3530(Cortex-A8)硬件平台软件调试笔记