论文部分内容阅读
调试是软件开发的一个重要环节,调试器是软件开发必不可少的工具,一个设计良好、功能完善的调试器能够大大缩短软件开发的时间。目前,国内的调试器技术发展缓慢,而国外的成品调试器价格昂贵,因此,深入研究调试技术,开发性能优越、价格低廉的调试器具有十分重要的意义。论文首先分析了Linux操作系统out和ELF目标文件的格式,介绍了用于解析这两种目标文件的stabs和dwarf调试信息格式;通过研究嵌入式系统的常用调试方法,给出JTAG调试器的实现方案,并完成了文件解析、信息树构建、命令解释等功能模块的设计,实现了调试器的各项功能;文件解析模块通过分析和处理可执行目标文件,完成调试信息的获取;信息树构建模块通过提取调试信息的有效数据,完成调试信息树的构建与保存;命令解释模块通过与用户界面和硬件仿真器通信,实现调试程序的功能。通过分析和利用可执行目标文件的调试信息,调试器能够快速完整地提取各类变量的有效数据;并在此基础上,通过优化查询策略,有效地解决了查看全局变量耗时长、效率低的问题;通过对调试器的测试,验证了结果的正确性。