trace32仿真器使用教 程+

上传人:f****u 文档编号:128295670 上传时间:2020-04-20 格式:PDF 页数:23 大小:2.47MB
返回 下载 相关 举报
trace32仿真器使用教 程+_第1页
第1页 / 共23页
trace32仿真器使用教 程+_第2页
第2页 / 共23页
trace32仿真器使用教 程+_第3页
第3页 / 共23页
trace32仿真器使用教 程+_第4页
第4页 / 共23页
trace32仿真器使用教 程+_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《trace32仿真器使用教 程+》由会员分享,可在线阅读,更多相关《trace32仿真器使用教 程+(23页珍藏版)》请在金锄头文库上搜索。

1、 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 简介简介 大家可能会对 uTrace ICD 比较陌生 简单介绍一下 uTrace ICD 是 TRACE32 ICD 的兼容机 在这里我首先感谢国人的努力能让我用很 少的 RMB 用上这么高端仿真器 废话少说 下面我给大家介绍一下 uTrace ICD 下具体实现 Linux 调试的具体过程 大概介绍一下实现的具体原理 首先要有一块可用的目标板 我选 用的是 SMDK2410 评估板 编译环境是在虚拟 VMw

2、are RedHat9 0 调试环境是 uTRACE 在这里有个问题 就是在虚拟机下编译的 arm linux 内核如何传递给安装在 Windows 下的 uTRACE 我用的方法就是 通过 SMB 服务器 在 Redhat9 0 下配置 SMB Server 将 arm linux 的源 码包通过网络共享的方式共享给 Windows XP 在 XP 下的 Windows 资源管理器中将 Redhat9 0 共享的 arm linux 源码包影射为本地的一个 虚拟盘比如是 Z 盘 这样 uTRACE 就可以象操作本地盘一样来读取 Redhat9 0 中的 arm linux 源码包以及编译生成

3、的内核映像及内核的符 号表 对于 uTRACE 调试器来说 需要的东东就是包含调试信息的 arm linux 的内核映像 vmlinux 在这里要注意 包含调试信息 arm linux 内 核配置选项默认可能是不包含调试信息 如果将没有包含调试信息的 vmlinux 供 uTRACE 使用是实现不了内核源码级调试的 所以我们在配 置 arm linux 内核时一定要将包含内核调试信息的选项选上 具在 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support kernel

4、 hacking 下 其次 uTRACE 调试器需要的就是 arm linux 内核源 码树 调试器的工作原理就是通过给定的地址查找对应的符号表找到对 应的符号 以及符号所在文件的路径信息 行信息等 近而找到源程序 所对应的函数或变量 简单介绍了 uTRACE 调试的基本原理 接下来 具体介绍一下 arm linux 内核 驱动 及应用层源码级调试的具体实现过程 具体实现具体实现 上一节简单介绍了 uTrace ICD 调试的基本原理 下面将详细介绍 调试的具体实现过程 首先介绍一下我用的评估板 SMDK2410 的具体情况 目标板是 nor flash 启动 大小为 8M SDRAM 配置情

5、况是 32M 首地址是 0 x30000000 软件配置情况 bootloader 为 ppcboot2 0 arm linux 内 核为 2 4 内核 实现过程对 2 6 内核也适用 第一步第一步 配置虚拟机配置虚拟机 Redhat9 0 编译环境 编译环境 安装交叉编译器 arm elf gcc 解压 arm linux 源码包到 SMDK2410 kernel 下 解压 ppcboot 到 SMDK2410 ppcboot 2 0 0 下 配置 SMB Server 将 SMDK2410 目录网络共享出去 在 Windows 上海锐极电子科技有限公司 021 52666785 52667

6、625 Ruijitek Electronic Technology Co LTD Http Email support XP 下同过网上邻居访问此目录并映像为本地磁盘 Z 盘 这样 uTRACE 就可以像访问本地文档一样访问 Linux 下的文档了 接下来编译 ppcboot 以及 arm linux 内核生成可执行映像 分别为 ppcboot 及 vmlinux 注意在配置 arm linux 内核时将 Kernel Hacking 下 Include debugging Information in kernel binary 选项选上 生成调试信 息 第二步第二步 bootloader

7、 的调试 的调试 以上开发环境都建立好 我们可以开始 PPCBOOT 的调试 打开 uTRACE ICD 调试软件 目标板上电 在 System Settings 里选 CPU 为 S3C2410X 然后点 UP 使 CPU 进入调试状态 打开反汇编窗口 命令 为 Data list 可以查看当前 PC 处反汇编情况 此时 PC 指向 arm 复位地 址 0 x0 即 nor flash 上内容的反汇编 此时我们也可以在 flash 上进行调 试 以下连结是反汇编图 NOR Flash 反汇编图反汇编图 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek E

8、lectronic Technology Co LTD Http Email support 此时查看的代码为 Flash 上固化的代码 我们可以在 Flash 上进行单步 调试 设置断点 注意在 Flash 上调试 只能设置 Onchip 断点 并且 ARM9 最多支持两个 如果要在 Flash 上实现源码级的调试 我们需要加载包含当前代码 的带调试信息的目标文件 对 ppcboot 来说 在 ppcboot 源代码目录下 经交叉编译会生成 ppcboot 档 这个就是带调式信息的目标文件 本例 就是要加载它 并且要注意 编译生成的目标文件与烧录到 Flash 上的 代码是同一个版本 否则加

9、载的调试信息将是错误的调试信息 代码对 应上将会出错 我们用命令行方式加载调试信息 命令如下 Data LOAD Elf Z ppcboot 2 0 0 ppcboot gnu nocode strippart SMDK2410 path Z 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 其中 Data LOAD Elf 指定是以 ELF 档格式加载 Z ppcboot 2 0 0 ppcboot 指定文件的全路径 nocode 指定只加载调试信息 而不加载

10、可执行代码 此时代码已经固 化到 Flash 上 不需要再加载 strippart SMDK2410 将调试信息中包含 SMDK2410 的部分去掉 因为可执行档是在 linux 环境中编译的 其中 编译出的调试信息中路 径信息包含 SMDK2410 由于 Windows 中无法以包含这个字符串的 路径来搜索文件 所以要将其剥去 path Z 告诉 uTRACE ICD 搜索路径在 Z 盘 加载后 我们就可以以源码的方式来调试 PPCBOOT 了 如下 PPCboot 源码调试图源码调试图 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electron

11、ic Technology Co LTD Http Email support C 与汇编混合模式 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 第三步第三步 ARM Linux 的调试 的调试 首先将 C T32 demo arm kernel uTrace 安装目录 目录下的 linux 整个目录拷贝到自己的工作目录 比如说 E SMDK2410 下 Linux 目 录下是关于linux内核调试的一些配置文件 打开E SMDK2410下linux 目录

12、新建一个目录取名为 SMDK2410 将 integrator 目录下的内容完 全拷贝到新建的目录中 然后根据自己的目标板修改 linux cmm 文件 修改后载入 uTrace 调试运行 linux cmm 脚本调试图 单步调试运行 linux cmm 脚本 脚本会控制程序运行到 linux 内核入口 start kernel 具体实现是在 start kernel 这个地址处设置 Onchip 端点 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 如下图所

13、示 start kernel 处源码调试 我们在这里可以单步跟踪内核启动流程 来学习内核的初始化过程并且 可以通过符号表来定位程序或变量所在的文件 并且可以在程序或变量 所在处设置断点 硬件断点或软件断点或 WatchPoint 断点 加载 linux 内核感应模块 即 uTrace 对 arm linux 的支持模块 因为 uTrace可以支持多种操作系统调试比如Wince Vxworks等基本上所有 常用操作系统的调试 为了支持对应操作系统必须将对应操作系统的支 持模块加载近来以支持该系统内核模块的调试 会在主菜单增加 linux 主菜单 其下是关于 linux 内核的多种信息 上海锐极电

14、子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 增加的 linux 菜单 其中有 Display Tasks ps Display Moduoles Display File System 等子菜单 下面详细介绍其中每个菜单项的作用 1 Display Tasks1 Display Tasks 查看系统内核心中每个任务的详细状态 Display Tasks 菜单图Display Tasks 菜单图 上海锐极电子科技有限公司 021 52666785 52667625 R

15、uijitek Electronic Technology Co LTD Http Email support 双击任务前的 magic 可以查看每个任务的详细情况 其中包含 relationship 标志本进程父子进程关系 Arguments 标志本进程运行参数 Environment 标志本进程运行环境变量 Open files 标志本进程打开的档 Addresses 标志本进程代码地址 数据地址 堆栈地址及大小 Code file 标志代码由哪些档组成 包括可执行文件 动态连接 库 以及它们的起始地址 Times 标志进程时间信息启动时间 休眠时间等 TreeView 任务图 上海锐极电

16、子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 2 PS 子菜单2 PS 子菜单 同 linux 控制台命令 ps 命令 PS 菜单命令图 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 3 Display modules3 Display modules 显示系统中加载的模块信息 包含模块名 模块的代码地址 数 据地址 以及模块被使用情况 Display modules 菜单命令图Display modules 菜单命令图 上海锐极电子科技有限公司 021 52666785 52667625 Ruijitek Electronic Technology Co LTD Http Email support 4 Display File System4 Display File System 查看系统中支持的文件系统的类型 Dis

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号