基于ARM平台的GDB远程调试环境的研究与移植
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
嵌入式系统开发工具在开发过程中所起的作用日益突出,相关研究、技术也随之不断更新。随着硬件性能不断提升,很多智能家电、智能手机、甚至高端游戏机都采用了嵌入式系统作为平台进行开发。作为嵌入式开发的关键,调试环节成为嵌入式系统研发的主要瓶颈。在嵌入式硬件性能不断提升的同时,嵌入式软件规模也不断扩大,因此调试难度也与日俱增。
     本文首先简要说明了嵌入式软件的开发过程,回顾嵌入式交叉调试技术发展的各种技术。然后分析调试器整个框架和核心,介绍了调试器相关理论和设计思想,并分别研究、对比几种调试技术实现途径和方法,并对调试器中关键流程进行详细阐述。
     然后,针对GDB所提供i386和SPARC架构下远程调试环境代码进行分析,抽象出调试桩GDB进行远程调试的核心流程,并根据具体硬件平台差异在ARM处理器上进行代码和远程调试协议移植。本文编写过程中所使用的硬件平台是由使用ARM7处理器的S3C4510b开发板。进入测试阶段,又在S3C4480开发板上进行了测试,对这套模式的可用性进行了验证。
The functions of embedded system developing utilities during the development havebecome more and more important, and the research and techniques concerning this fieldalso update rapidly. With continuous promotion and upgrade of hardware performance,more intelligent household appliances, intelligent mobiles, even advanced game consolesemploy embedded system as developing platform. As the key part of embeddeddevelopment, debugging section becomes the main obstacle in the developing procedure.As the fast promotion of hardware performance, the software dimension also rapidlyenlarges, which makes the debug operation more difficult.
     In this paper, the main procedure of embedded software and the techniqueconcerning cross debugging in embedded developing is introduced at first. Then theframework and core of debugger is analyzed with introducing the debugger theories anddesign principle. At last, by researching and comparison of a series of debugging methodsand implementation ways, the key process in debugger development is described in detail.
     According to i386 and SPARC architecture remote debugging environment codeprovided by GDB officially, the core process of GDB remote debugging is available, andthis framework and remote serial protocol could be ported to ARM architecture platform.During the research, the hardware platform is S3C4510b developing board with ARM7processor. In the test stage, the code is tested on the S3C44B0 board, which proves theARM debug environment's usability.
引文
1 李善平,刘文峰,王焕龙.Linux与嵌入式系统[M].北京:清华大学出版社.2003
    2 李岩,荣盘祥.基于S3C44BOX嵌入式uCLinux系统原理及应用.北京:清华大学出版社.2005
    3 仵伟,诸昌钤,杨光.VxWorks操作系统在S3C4510B上的移植.信息技术.2006(07)
    4 Rob Savoye. Embed With GNU. 1995
    5 James P.Lynch. ARM Cross Development with Eclipse version 3. 2005
    6 尼秀明.嵌入式实时操作系统的研究与实现:[硕士论文].安徽:中国科学技术大学.2002
    7 钟汉如,王创生.嵌入式Linux的中断处理与实时调度的实现机制.计算机工程.2002(10)
    8 Philippe Gerum, Karim Yaghmour. ADEOS Design Document. 1999
    9 Richard stallman, Roland Pesch, Stan Shebs. Debugging With GDB. 2003
    10 Free Software Foundation. GDB Obsolete Annotations. 2003.
    11 张彦明.嵌入式操作系统远程调试器的研究与实现[硕士论文].西北工业大学,2006
    12 杜雄.嵌入式系统任务级调试器的研究与实现[硕士论文].华中科技大学.2005
    13 F. Halsall and S. C. Hui. Performance monitoring and evaluation of large embedded systems. Software Engineering Journal. 1987. 2(5): 184-192.
    14 Wookey, Chris Rutter, Jeff Sutherland, Paul Webb. The GNU Toolchain for ARM targets HOWTO. 2002
    15 Roland H. Pesch, Jeffrey M. Osier. The GNU Binary Utilities. 1993
    16 李献霞,孟小锁.嵌入式系统源码调试器GDB的远程通信.微处理机.2006(01)
    17 Free Software Foundation. Executable and Linkable Format. 1998
    18 ARM International Corporation. ARM ELF Format White Paper. 1999
    19 Julia Menapace, Jim Kingdon, David MacKenzie. The"stabs" debug format. 2004
    20 Steve Chamberlain. The Binary File Descriptor Library. 2003
    21 Steve Chamberlain, Roland Pesch, Jeff Johnston. The Red Hat newlib C Math Library. 2004
    22 John Gilmore. GDB Internals. 2003
    23 Ian Lance Taylor, The GNU configure and build system. 1998
    24 Brian Fox, Chet Ramey. GNU Readline Library. 2002
    25 Brian Fox, Chet Ramey. GNU Readline Library User Interface. 2002
    26 李娜,李彦,夏靖波,冯奎胜.基于ARM7内核的u C/OS-Ⅱ嵌入式系统.电子科技.2006(07)
    27 ARM Manual. ARM International Corporation. 1999
    28 李岩,荣盘祥.基于S3C44BOX嵌入式uCLinux系统原理及应用.北京:清华大学出版社.2005
    29 杜春雷.ARM体系结构与编程.北京:清华大学出版社.2001
    30 Richard M. Stallman. Using the GNU Compiler Collection. 2002
    31 Software Foundation. Cygwin Manual and ToolChain utilities. 1999
    32 Daniel P.Bovet, Marco Cesati. Understanding the Linux Kernel. 3rd Edition. O'Reilly. 2005
    33 毛德操,胡希明.Linux内核源代码情景分析.杭州:浙江大学出版社.2001
    34 李善平.Linux内核2.4版源代码分析大全.北京:机械工业出版社.2002
    35 Sumsung ARM Reference Manual. Sumsung Corporation. 2000
    36 H. Thane. Monitoring. Testing and Debugging of Distributed Real-Time Systems: Doctoral Thesis. Sweden: Royal Institute of Technology. KTH. Mechatronics Laboratory. 2000
    37 孙秋野,孙凯,冯健.ARM嵌入式系统开发典型模块.北京:人民邮电出版 社. 2006
    
    38 Steve Chamberlain, Ian Lance Taylor. Using Id. 2003
    
    39 Dean Eisner, Jay Fenlason & friends. Using As. 2003
    
    40 E. Sutter. Monitor-Based. Debugging.Embedded.com. 2003.
    
    41 Free Software Foundation. GDB QUICK REFERENCE. 2003
    
    42 Trusted Computing Group.TPM Main Specification: Design Principles vl.2. https://www.trustedcomputinggroup.org. 2003-10
    
    43 T Garfinkel, B Pfaff, J Chow et al.Terra: A Virtual Machine-Based Platform for Trusted Computing[C].In: Proc 9th ACM Symposium on Operating Systems Principles. 2003

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700