调试技术有以下几大优势:
1、解决crash
疑问: 我们一般crash之后都会得到一个dump文件,这个dump文件拿回来后直接使用IDE启动不就看到的很清楚crash在哪里了吗?
解答: 其实这要看你整个项目的稳定性水平对你软件的重要性, 重要性的看法取决于你的软件操作数据的重要性、你的受众范围、你的软件项目的危险性(比如电梯、列车系统)。 如果你对你的软件的稳定性是精益求精的,那么其实当一个软件处于发展的稳定期的话,你会发现你的crash基本上都是很难解决的。
比如以下几种crash:
种类1:
参考书籍: Memory_Dump_Analysis_Anthology_Volume_1 Memory_Dump_Analysis_Anthology_Volume_2
目前几大比较疑难的crash
1.1 多线程
1.2 堆破坏
1.3 堆栈跑飞
1.4 崩在第三方模块或者系统模块中
windbg调试中的优势:
调试高级模式: 可以得到更详细的信息(系统位数、系统类型、)
脚本模式: 将平常一些常用的分析套路形成脚本,自动化进行