应用程序调试技术 (Java 部分 )
第一讲使用 Eclipse 以及 JDB 调试 Java 程序
主讲人: 施懿民
华章培训网、 [www.hztraining.com] 华章培训网版权所有
华章培训
www.hztraining.com
讲解了调试的原理,使用 Eclipse 调试器的一些技巧,以及使
用 jdb 调试 Java 程序的方法。
概 述
第 2页
华章培训
www.hztraining.com
断点的实现原理
断点( Break Point )可以说是调试器的关键技术,需要软件和硬件的协作才能实现。
一般断点的实现方式有下面几种:
1. 通过特定的指令通知中央处理器( CPU )来中断程序的执行。
2. 通过设置特定的寄存器来通知中央处理器中断程序的执行。
3. 通过强制处理器触发异常来中断程序执行并将控制权转交给调试器。
在 Intel 兼容的处理器架构上,一般调试器是通过在进程中特定的位置插入 INT 3 指令
来实现断点的。
调试器提供的单步执行,单步跳过执行以及跳出函数等功能,都是断点的变种。
第 3页
演示
1 、在 C 程序中嵌入断点。
第 4页
华章培训
www.hztraining.com
特殊断点
除了简单的每次执行到断点位置中断程序执行这一种方式,调试器一般都提供了如下几
种断点:
1. 条件断点 – 可以指定触发断点的条件,避免每次重复触发断点降低调试工作效率。
2. 监视断点 – 可以在访问数据的时候,中断程序的执行。
3. 函数断点 – 可以在执行函数前或者退出函数前中断程序的执行。
4. 异常断点 – 当程序发生指定异常的时候,中断程序的执行,第一时间发现问题所在
。
5. 类型断点 – 当程序试图加载某个类型的时候,中断程序的执行。
第 5页