Linux环境下用OpenJTAG实现Linux内核的源码级调试

1、通过U-boot将uzImage格式的内核加载到内存中(可以从Flash中读取,也可以从U盘、SD卡读取,还可以通过网络);

2、登陆到OpenOCD上,在内核中__turn_mmu_on打上断点,跳过MMU(Linux 的链接地址一般是虚拟地址,比如S3C2410/S3C2440 的内核的链接地址是0xC0008000,而这个地址在启动MMU 之前是不对应实际内存的,所以要实现源码调试必须开启MMU。__turn_mmu_on的链接地址在System.map中查找);

3、在Linux上启动arm-linux-gdb,并连接到OpenOCD上;

4、用file vmlinux命令映射symbol table,开始源码级调试之旅。

posted on 2012-12-15 01:54  crazy_code1990  阅读(3054)  评论(3编辑  收藏  举报