调试用户程序: 主机:linux os eclipse + cdt + gdb +gcc交叉编译链 目标机:armlinux os gdbServer 通讯方式:tcp 文件传输方式:ftp, minicom, 通过nfs. 配置参考: http://blog.chinaunix.net/u2/62168/showart_2063436.html 调试linux kernel. bootloder(u-boot) 调试内核: GDB前端<--->GDB<--->GDB服务程序<--->JTAG协议转换器(仿真器)<--->目标CPU(ARM CPU)
|
控制接口
GDB有一个很大的缺点——文本界面,使用非常不方便。但幸运的是,有很多热心的开发者为GDB写了一些图形“外壳”——GDB前端,大大方便了GDB的使用。因为我们做的是交叉开发(即在x86结构的电脑上开发ARM等非x86结构的CPU程序),所以GDB无法直接调试编译出来的程序,这就需要一个服务程序。这个服务程序可以是一个可以控制目标CPU的程序(可能运行于计算机上;也可能运行于某些仿真器上,例如如BDI2000就是这样),也可以是一个运行于目标CPU上的服务程序,由它来装载被调试的程序。但是后者一般需要目标CPU上已经运行起了Linux内核;调试Bootloader和Linux内核本身,需要前一种服务程序。GDB和GDB服务程序之间的连接方式可以是以太网或者串口,而且GDB服务程序一般还有别的控制接口,例如Telnet接口,可以实现对目标CPU的控制,如初始化和程序文件下载等。 host:在主机上安装eclipse,gdb 和openocd. Eclipse+GDB+openocd+openJtag 配置参考: http://www.april1985.com/2009/08/26/openjtageclipse-3-5gdbmini2440/