您现在的位置: 华玉生活网 >> 技术文库 >> 无线 >> 正文>> 繁体中文

基于Eclipse的开发环境中调试器设计与实现

张君毅,李洪威,桑钊,孟小锁(西安微电子技术研究所陕西西安710065)0引言在软件开发过程中,程序出现错误在所难免。无论是普通软件还是嵌入式软件,调试器都是开发过程中不可缺少的工具。“调试器”是用于跟踪程序执行情况,快速有效地定位错误产生的位置,从而找到引起错误的原因,并将其消除的工具。调试功能是开发环境中最重要、也是最复杂的功能之一,其好坏在很大程度上决定了一个开发环境的优劣。调试是一个从错误现象出发

张君毅,李洪威,桑钊,孟小锁

(西安微电子技术研究所  陕西西安  710065)

0引  言

在软件开发过程中,程序出现错误在所难免。无论是普通软件还是嵌入式软件,调试器都是开发过程中不可缺少的工具。

“调试器”是用于跟踪程序执行情况,快速有效地定位错误产生的位置,从而找到引起错误的原因,并将其消除的工具。调试功能是开发环境中最重要、也是最复杂的功能之一,其好坏在很大程度上决定了一个开发环境的优劣。调试是一个从错误现象出发,通过某种手段寻找错误代码的过程。调试的基本原理是在发现程序运行的错误后,设法再现程序的执行过程,并获取程序执行中的有关信息,通过对这些信息的分析,逐步找到引起错误的原因。循环调试是最基本的调试模型;循环调试的意思是反复运行程序,利用打印输出、断点、单步等技术,观察程序状态,控制程序运行,逐渐逼近错误代码;循环调试的前提是程序运行是确定的,即对同样的输入,程序的执行过程是相同的。串行程序具有确定性。

调试的基本行为有观察、控制与修改。观察是对程序的执行状态进行察看,包括处理机状态、进程状态和数据状态等;控制即控制程序的执行过程,例如设断点、单步执行等;修改就是改变程序的运行状态,如修改变量的值、修改指令计数器、修改状态寄存器等。调试器在不同程度上支持这3种行为的综合使用。

经典的调试手段有断点(Break Pointing)、跟踪(Tracing)、断言(Assertion)、分析(Analysis)、打印输出等。在源程序级支持图形化的用户界面使得调试工作更加容易进行。对于实时程序或专用机上的程序还常采用模拟手段进行调试。

1 CDT的调试机制解析

CDT提供了4个插件用于实现调试功能。这几个插件对于GDB调试器进行操作,并且应用GDB提供的MI接口进行通信。这四个插件分别为org.eclipse.cdt.debug.mi.core插件,用以实现GDB的MI接口功能及GDB调用功能;org.eclipse.cdt.debug.mi.ui插件,主要用于实现GDB的相关设置选项界面;org.eclipse.cdt.debug.core插件,用于实现CDT的调试模型,包括用串口调试,用网卡调试,设置波特率等功能;org.eclipse.cdt.debug.ui插件,用于实现界面显示功能,包括调试视图,调试动作等,比如单步调试,设置断点,下载,运行程序等调试功能。它们之间的关系如图1所示。


  • 扩展阅读
  • 上一个文章:
  • 【返回网站首页】 【返回无线】
  • 下一个文章:
  • 【字体: 】【】【发表评论】【加入收藏】【告诉好友】【打印此文
    文章 软件 电影 商品

    相关文章

    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    | 服务声明 | 充值中心| 华安五金电器 | 收费标准| 论坛| 留言| 实用查询| 会员中心| 下载帮助| 设为首页|

    技术支持:瑞达科技 即时交谈QQ:237013889 QQ群:13810759 E-Mail:237013889@qq.com
    非盈利网站,如有侵权,请来信来电告知,第一时间处理,谢谢!
    桂ICP备17008104号 华玉生活网网站统计
    tj