目前我们在软件调试过程中,会经常使用windbg来用作调试。优点主要是轻量化,可以在bug现场直接调试,并且可以更直观的观察进程内存,对于许多bug的调试有奇效。但是有些时候windbg也有一些事情会力不从心,比如对于一些容器解析很复杂,还比如一些现场开发暂时不在,只能由非开发人员进行简单的现象描述。有没有更方便的办法可以解决这个问题呢?
答案是可以的。因为windbg是基于微软的调试器引擎之上实现的。下面就来介绍这个调试器引擎的结构,以及相关的接口,以及如何通过这个调试器引擎扩展windbg的功能。甚至于以后可以在这个引擎上写出自己的调试器。
首先我们将介绍调试器引擎的架构,由哪些部分组成;然后介绍每个部分扮演的是什么角