基于事件循环机制的嵌入式应用级交叉调试器的研究
发布时间:2018-08-22 17:55
【摘要】:随着硬件技术的发展,嵌入式应用不断普及和深化。嵌入式软件的需求越来越大,复杂性也越来越高。在开发嵌入式软件的过程中,,调试成为了不可或缺的重要阶段。嵌入式软件的调试时间越来越长,调试费用也越来越高。日益激烈的市场竞争,导致嵌入式产品的上市时间在某些情况下己经比其功能和成本更为关键。因此需要提供方便高效的调试工具,协助开发人员尽可能地找出软件中的错误,以提高系统的可靠性和稳定性。嵌入式交叉调试器是进行嵌入式开发的关键工具。 本嵌入式交叉调试系统中调试器运行在普通桌面操作系统上,被调试程序和调试代理同时运行在特定的嵌入式操作系统上,调试器与调试代理之间通过远程串行通信协议进行通信。宿主机端调试器负责解析用户输入的命令并通过发送RSP协议包驱使调试代理对目标程序进行相关操作。首先对系统进行了总体设计。然后对断点管理、执行控制、程序栈帧等模块进行了详细设计,图文并茂地分析了各模块的实现方法。最后重点分析了基于事件循环机制的多线程调试策略,分析了多线程调试模式并阐述了其具体实现方法。 系统针对mips架构的处理器实现了一款嵌入式交叉调试器。结合源代码深入分析了嵌入式交叉调试系统中各功能模块的具体实现。通过分别对单线程和多线程程序的调试,对本系统进行了功能验证和性能验证。
[Abstract]:With the development of hardware technology, embedded applications continue to be popularized and deepened. The demand for embedded software is increasing, and the complexity is becoming more and more high. In the process of developing embedded software, debugging has become an indispensable important stage. The debugging time of embedded software is longer and longer, and the debugging cost is higher and higher. The increasingly fierce market competition has led to the launch time of embedded products is more critical than its function and cost in some cases. Therefore, it is necessary to provide convenient and efficient debugging tools to help developers find errors in the software as much as possible in order to improve the reliability and stability of the system. Embedded cross-debugger is a key tool for embedded development. In the embedded cross-debugging system, the debugger runs on the common desktop operating system, the debugged program and the debugging agent run on the specific embedded operating system simultaneously. The debugger communicates with the debug agent via a remote serial communication protocol. The host debugger is responsible for parsing the commands input by the user and sending the RSP protocol packet to drive the debugging agent to perform related operations on the target program. First, the overall design of the system is carried out. Then the breakpoint management, execution control, program stack frame and other modules are designed in detail, and the implementation methods of each module are analyzed graphically. Finally, the multi-thread debugging strategy based on the event loop mechanism is analyzed, and the multi-thread debugging mode is analyzed and its implementation method is described. The system implements an embedded cross-debugger for the processor of mips architecture. Combined with the source code in-depth analysis of the embedded cross-debugging system in the specific implementation of functional modules. By debugging single thread and multi-thread program, the function and performance of the system are verified.
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP368.1
本文编号:2197868
[Abstract]:With the development of hardware technology, embedded applications continue to be popularized and deepened. The demand for embedded software is increasing, and the complexity is becoming more and more high. In the process of developing embedded software, debugging has become an indispensable important stage. The debugging time of embedded software is longer and longer, and the debugging cost is higher and higher. The increasingly fierce market competition has led to the launch time of embedded products is more critical than its function and cost in some cases. Therefore, it is necessary to provide convenient and efficient debugging tools to help developers find errors in the software as much as possible in order to improve the reliability and stability of the system. Embedded cross-debugger is a key tool for embedded development. In the embedded cross-debugging system, the debugger runs on the common desktop operating system, the debugged program and the debugging agent run on the specific embedded operating system simultaneously. The debugger communicates with the debug agent via a remote serial communication protocol. The host debugger is responsible for parsing the commands input by the user and sending the RSP protocol packet to drive the debugging agent to perform related operations on the target program. First, the overall design of the system is carried out. Then the breakpoint management, execution control, program stack frame and other modules are designed in detail, and the implementation methods of each module are analyzed graphically. Finally, the multi-thread debugging strategy based on the event loop mechanism is analyzed, and the multi-thread debugging mode is analyzed and its implementation method is described. The system implements an embedded cross-debugger for the processor of mips architecture. Combined with the source code in-depth analysis of the embedded cross-debugging system in the specific implementation of functional modules. By debugging single thread and multi-thread program, the function and performance of the system are verified.
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP368.1
【参考文献】
相关期刊论文 前10条
1 夏玮玮,沈连丰,肖婕,毛宇斌;嵌入式系统关键技术分析与开发应用[J];单片机与嵌入式系统应用;2003年02期
2 乔容,彭思鹏,柏桂枝;嵌入式软件源码级交叉调试器的设计与实现[J];舰船电子工程;2004年03期
3 张栋岭,刘献科,邓晓艳,朱培彦,陈涵生;嵌入式应用的远程调试[J];计算机工程;2003年11期
4 龚伟;;GDB事件机制的深入分析[J];计算机与数字工程;2007年07期
5 涂刚,阳富民,胡贯荣;嵌入式操作系统综述[J];计算机应用研究;2000年11期
6 曾杰,蒋泽军,王丽芳,张彦明;嵌入式远程调试器的设计与实现[J];计算机测量与控制;2005年07期
7 郭慎平;闫志贵;;Java多线程技术在嵌入式调试工具开发中的研究及应用[J];软件导刊;2008年10期
8 陈必泉,黄承慧;GDBSERVER原理分析及其应用[J];计算机工程与设计;2005年03期
9 周红波;;嵌入式系统软件开发环境中调试器的设计[J];微计算机信息;2006年14期
10 金辉;华斯亮;张铁军;侯朝焕;;基于JTAG标准的处理器片上调试的分析和实现[J];微电子学与计算机;2007年06期
本文编号:2197868
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2197868.html