热门关键字:  听力密码  单词密码  新概念美语  巧用听写练听力  零起点
图书信息

Linux/Android开发利器——ARM DS-5使用指南

中国水利水电出版社
    【作 者】崔更申 秦兴国 【I S B N 】978-7-5084-9919-2 【责任编辑】宋俊娥 【适用读者群】本专通用 【出版时间】2012-08-08 【开 本】16开 【装帧信息】平装(光膜) 【版 次】第1版第1次印刷 【页 数】248 【千字数】376 【印 张】15.5 【定 价】38 【丛 书】 【备注信息】
图书详情

    本书是一本全面介绍ARM DS-5使用方法的书籍,共24章,分为4个部分。

    第一部分是DS-5的基本入门部分,主要介绍DS-5的基本功能和组件,DS-5的基本使用方法,DS-5的相关文件、文档和安装。第二部分详细介绍Eclipse的各个重要组成部分,包括Eclipse软件的各个功能的使用介绍,并重点介绍项目管理、编辑器和远程系统管理的详细使用。第三部分详细介绍DS调试器各个重要组成部分的使用,包括从与开发板的连接到调试技术的各个方面的使用细节和步骤。第四部分详细介绍DS-5性能分析各种技术的使用方法,内容包括性能分析环境的构建,分析报告的创建,以及对数据的各种分析方法。

    本书适合在Linux和 Android下进行嵌入式开发的设计者使用。

    涵盖Linux和Android两大系统

    详解ARM DS-5应用方法

    全面阐释嵌入式系统调试与性能分析

    协助ARM架构下嵌入式高端系统开发与优化

    前 言

    DS-5(即ARM Development Studio 5)是ARM公司最新推出的嵌入式系统专业软件开发解决方案,是一款基于ARM架构的 Linux和Android平台全面的端到端软件开发工具套件。借助该工具套件,在ARM支持的平台上,针对Linux和Android系统,可以轻松地进行系统开发和优化,缩短开发和测试周期,有助于提高资源的使用效率。

    ARM DS-5 工具集包括:

    (1)灵活的DS-5 Eclipse集成开发环境(IDE):定制的Eclipse IDE,能与第三方插件兼容;具有功能强大的C/C++编辑器和项目管理器;基于ARM Linux的GNU编译工具;且集成众多实用工具,例如远程系统浏览器、SSH和Telnet 终端等。

    (2)DS-5 Debugger端到端调试器:能启动加载程序、内核和用户空间调试;进行非侵入性指令跟踪,包括汇总的配置文件;具有更快、更简单的自动调试会话;设备配置数据库的一次单击即可完成的JTAG调试配置。

    (3)Real-Time System Models实时系统模型:预先与ARM嵌入式Linux一起加载的Cortex-A8 系统模型模拟器;实现直接主机上的Linux应用程序调试;具有高于250MHz的典型模拟速度。

    (4)ARM流水线性能分析器:无需JTAG探针的系统范围的分析;进程、线程、函数和源代码行的CPU使用情况统计信息;提供性能相关事件(例如高速缓存未命中次数、中断数)与软件执行的即时关联和关键路径标识及动态内存使用情况分析。

    (5)DS-5为基于Linux和Android的系统开发最优的解决方案和便捷的调试分析环境。DS-5适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发入门者,并能满足基于Linux和Android的高端应用开发。

    本书是一本全面介绍ARM DS-5使用方法的书籍,适合在Linux和Android下进行嵌入式开发的设计者。全书共24章,分为以下4个部分。

    第一部分1~3章,是DS-5使用入门部分。该部分首先介绍DS-5的基本功能和组件,然后指导读者了解DS-5的基本使用方法,最后介绍DS-5的相关文件、文档和安装。

    第二部分4~7章,详细介绍Eclipse的各个重要组成部分。包括Eclipse软件各个功能的使用介绍,并重点介绍项目管理、编辑器和远程系统管理的详细用法。通过这些内容可以让读者掌握Eclipse的使用,为后期的开发奠定基础。

    第三部分8~15章,详细介绍DS调试器各个重要组成部分的使用。内容包括从与开发板的连接到调试技术的各个方面的使用细节和步骤,通过本部分的学习,可以让读者掌握实际嵌入式软件开发的一些常规调试手段。这些内容是使用DS-5进行嵌入式高级开发必须掌握的调试技术,内容非常丰富,因此,这部分内容适合作为开发人员的手册,在进行DS-5调试过程中随时查阅。

    第四部分16~24章,详细介绍DS-5性能分析技术的使用方法。内容包括性能分析环境的构建,分析报告的创建,以及对数据的各种分析方法。这部分内容可以让读者了解资源的利用效率,有助于优化系统设计。最后还介绍了V5.9版本的新增功能。

    作者在本书写作过程中得到了许多支持和帮助。首先感谢ARM公司和深圳米尔科技有限责任公司的支持。ARM公司在第一时间为作者提供了最新的DS-5授权的英文文档和测试版软件及仿真器,米尔科技有限责任公司提供了开发板,在此对ARM公司的赵慧波、毛卫洋,米尔公司的资深工程师表示谢意。其次感谢桂林电子科技大学计算机科学与技术学院的黄廷辉老师、教学实践部的秦兴国、黄雄华老师,信息与通信学院的符强老师、机电工程学院的韦荔浦老师,以及硕士研究生周卫、杨飞、谢国龙和宾世昌,他们完成了大量的资料收集、翻译和整理工作,本书是他们汗水的结晶。最后感谢中国水电出版社的杨庆川老师,她在本书的排版、格式、命名及出版方面给予作者很多建议和帮助。

    为了尽快将DS-5展示给嵌入式开发者,本书的写作时间比较仓促,加之作者水平有限,书中错误之处敬请广大读者批评指正。

    崔更申 秦兴国

    于桂林电子科技大学

    2012年3月

    第一部分 DS-5使用入门

    第1章 DS-5介绍 2
    1.1 关于DS-5 2
    1.2 关于DS-5 Eclipse 2
    1.3 关于DS-5 Debugger 3
    1.4 关于Real-Time System Models 3
    1.5 关于编译工具 4
    1.6 关于GNU编译工具 4
    1.7 关于ARM Streamline性能分析器 5
    1.8 关于调试硬件配置工具 5
    第2章 DS-5快速使用实例 6
    2.1 导入示例项目到Eclipse 6
    2.2 在Eclipse中编译Gnometris项目 6
    2.3 命令行下编译Gnometris项目 7
    2.4 Real-Time System Model上装载
    Gnometris程序 7
    2.5 装载Gnometris程序到ARM Linux 8
    2.6 使用SSH连接设置和运行在ARM Linux
    上的Gnometris 8
    2.7 连接已经在ARM Linux上运行的
    Gnometris 程序 12
    2.8 调试Gnometris 14
    2.9 调试可装载的内核模块 15
    2.9.1 预备知识 15
    2.9.2 步骤 15
    2.10 运行在ARM Linux上的应用程序的
    线程性能分析 17
    2.10.1 预备知识 17
    2.10.2 步骤 18
    2.11 调试Android本地C/C++应用程序和库 18
    2.11.1 预备知识 19
    2.11.2 步骤 19
    2.12 DS-5许可管理 22
    第3章 DS-5安装并获得许可证 24
    3.1 系统要求 24
    3.1.1 所支持的平台 24
    3.1.2 DS-5要求 24
    3.2 安装目录 25
    3.3 许可和更新 25
    3.4 文档 26
    3.5 示例 26

    第二部分 使用Eclipse集成开发环境

    第4章 开始使用Eclipse开发环境 28
    4.1 在Eclipse环境中安装ARM插件 28
    4.2 启动Eclipse 29
    4.3 使用欢迎界面 29
    4.4 Eclipse工作台窗口简介 30
    4.5 Eclipse工作台的特点 31
    4.6 工作空间 31
    4.7 资源 32
    4.8 关于工程集 35
    4.9 创建工程集合 35
    4.10 更改工程管理器栏目中的顶层元素 36
    4.11 取消工程集合列表形式 36
    4.12 视图和栏目 37
    4.12.1 视图 37
    4.12.2 栏目 37
    4.12.3 修整条 39
    4.12.4 快速查看条 39
    4.13 菜单 39
    4.14 工具栏 40
    4.15 编辑源代码 40
    4.15.1 导航 40
    4.15.2 搜索 41
    4.15.3 内容助手 41
    4.15.4 书签 41
    4.16 配置Eclipse 41
    4.17 参数(Preferences)对话框 41
    4.18 属性(Properties)对话框 42
    4.19 导入和导出选项 43
    4.20 使用导入向导 44
    4.21 使用导出向导 44
    4.22 访问动态帮助 45
    4.23 使用ARM-specific速查表 45
    4.24 安装新特性 46
    4.25 使用限制 47
    第5章 使用Eclipse项目 48
    5.1 项目类型 48
    5.2 创建一个新的C/C++项目 49
    5.3 为ARM Linux创建一个新的Makefile
    项目 50
    5.4 导入一个存在的Eclipse项目 50
    5.5 为特定的编译配置设置编译工具 51
    5.6 配置C/C++的编译行为 52
    5.7 更新项目的工具链 53
    5.8 在项目中增加一个新的文件 54
    第6章 使用Eclipse编辑器 55
    6.1 C/C++编辑器概述 55
    6.2 ARM汇编编辑器概述 55
    6.3 ELF内容编辑器概述 56
    6.4 ELF内容编辑器——头文件标签 56
    6.5 ELF内容编辑器——概述标签 57
    6.6 ELF内容编辑器——符号表标签 57
    6.7 ELF内容编辑器——反汇编标签 58
    6.8 分散文件编辑器概述 58
    6.9 创建分散(scatter)文件 59
    6.10 从BCD文件导入内存映射 60
    第7章 使用远程系统管理 62
    7.1 远程系统关系概述 62
    7.2 远程系统视图 63
    7.3 远程系统细节视图 63
    7.4 远程暂存视图 64
    7.5 终端视图 64

    第三部分 使用DS-5调试器

    第8章 开始使用DS-5调试器 67
    8.1 调试器的概念 67
    8.2 从Eclipse中启动调试器 68
    8.3 从命令控制台启动调试器 68
    8.4 DS-5调试视图快捷方式 70
    8.5 DS-5调试器命令行控制台快捷键 71
    第9章 配置连接和检查嵌入式目标对象 72
    9.1 连接到目标对象的类型 72
    9.2 配置到实时系统模块的连接 72
    9.3 使用gdbserver配置到Linux目标对象上
    的连接 74
    9.4 配置到Linux内核上的连接 75
    9.5 配置和裸板目标的连接 76
    9.6 配置连接到裸板上的事件查看器 77
    9.7 导出已有的配置 78
    9.8 导入已有的启动配置 79
    9.9 从目标对象中取消连接 80
    9.10 检查目标对象的执行环境 80
    9.11 检查调用堆栈 81
    9.12 有关跟踪支持的问题 82
    第10章 控制程序的运行 84
    10.1 装载镜像文件到目标对象 84
    10.2 装载调试信息到调试器 85
    10.3 运行一个镜像文件 86
    10.4 断点和监视点 86
    10.5 设置执行断点 87
    10.6 设置数据监视点 88
    10.7 设置条件断点 88
    10.8 在一个具体的线程设置断点 90
    10.9 挂起断点和监视点 91
    10.10 导出DS-5 断点设置到一个文件 91
    10.11 从一个文件导出DS-5 断点设置 92
    10.12 单步执行一个应用程序 92
    10.13 处理UNIX信号 93
    10.14 处理器异常的处理 94
    10.15 配置调试器路径替代规则 94
    第11章 调试嵌入式系统 96
    11.1 调试管理程序 96
    11.2 调试裸板对称多处理系统 97
    11.2.1 配置和连接 97
    11.2.2 镜像文件和符号装载 97
    11.2.3 运行、停止和单步执行 97
    11.2.4 断点、观察点和信号 97
    11.2.5 检查目标状况 98
    11.2.6 跟踪 98
    11.3 调试多线程应用程序 98
    11.4 调试共享库 99
    11.5 调试一个Linux内核 100
    11.6 调试Linux内核模块 101
    11.6.1 内嵌模块 101
    11.6.2 可装载的模块 101
    11.7 调试 TrustZone 使能目标对象 101
    第12章 使用脚本调试和Flash烧写 103
    12.1 导出在调试会话期间生成的DS-5
    调试器命令 103
    12.2 创建一个DS-5调试器脚本 103
    12.3 创建 Jython 脚本 104
    12.4 创建一个CMM类型的脚本 106
    12.5 运行一个脚本 107
    12.6 在Eclipse里配置一个Jython项目 108
    12.7 烧写Flash存储器 109
    12.7.1 注册一个新的闪存算法 109
    12.7.2 在闪存中编程 110
    第13章 半主机和Log4j控制运行消息 112
    13.1 半主机和内存顶端 112
    13.2 半主机工作模式 113
    13.3 在调试器中使能自动半主机支持 113
    13.4 使用命令行控制台控制半主机消息 113
    13.5 日志信息输出的控制 114
    13.6 Log4j 配置文件 114
    13.7 从调试器定制日志信息输出 114
    13.7.1 显示记录消息到控制台的示例 115
    13.7.2 显示记录消息到一个文件的示例 116
    13.7.3 展示如何将消息日志整合到控制台
    和文件的示例 116
    第14章 使用快照浏览器 118
    14.1 创建一个快照浏览器初始化文件 118
    14.1.1 预备条件 118
    14.1.2 创建一个快照浏览器初始化文件
    的过程 118
    14.1.3 创建一个快照浏览器初始化文件
    的限制 119
    14.1.4 示例 119
    14.2 快照浏览器 120
    14.2.1 寄存器值 120
    14.2.2 内存值 121
    14.2.3 调试符号 121
    14.3 连接到快照浏览器 122
    14.4 创建快照浏览器的调试器脚本时的
    注意事项 122
    第15章 DS-5调试器视图和视图 124
    15.1 App控制台视图 124
    15.2 ARM Asm Info视图 125
    15.3 ARM汇编编辑器 126
    15.4 断点视图 127
    15.4.1 断点语法 127
    15.4.2 观察点入口语法 128
    15.4.3 工具条和上下文菜单选项 128
    15.5 C/C++编辑器 129
    15.5.1 Action context 菜单选项 130
    15.5.2 Editor context 菜单 130
    15.6 事件查看器的通道编辑器 131
    15.7 命令视图 131
    15.8 调试控制视图 133
    15.9 Disassembly 视图 135
    15.10 Expressions视图 137
    15.11 函数视图 139
    15.12 历史视图 140
    15.13 内存视图 142
    15.14 模块视图 144
    15.15 Registers视图 145
    15.16 屏幕视图 147
    15.17 脚本视图 148
    15.18 目标视图 149
    15.19 踪迹视图 150
    15.20 变量视图 152
    15.21 导出内存对话框 154
    15.22 导入内存对话框 154
    15.23 导出跟踪报告对话框 155
    15.24 断点属性对话框 156
    15.24.1 断点信息 157
    15.24.2 断点选项 158
    15.25 监视点属性对话框 158
    15.26 管理信号对话框 159
    15.27 函数过滤器对话框 159
    15.28 调试配置——连接表 160
    15.29 调试配置文件选项卡 162
    15.30 调试配置——调试器标签 164
    15.31 调试配置——参数标签 166
    15.32 调试配置——环境标签 167
    15.33 调试配置——事件查看器标签 168
    15.34 DS-5调试器菜单和工具条图标 169
    15.34.1 DS-5 调试器图标 170
    15.34.2 视图图标 171
    15.34.3 视图工具图标 171
    15.34.4 视图标记 171
    15.34.5 混杂图标 172

    第四部分 使用ARM Streamline性能分析器

    第16章 设置Linux和Android目标机 174
    16.1 设置ARM Linux目标机 174
    16.1.1 先决条件 174
    16.1.2 装载Gator守护进程 174
    16.1.3 准备并编译内核 175
    16.1.4 构建Gator模块 175
    16.1.5 在目标机上运行 176
    16.2 设置Android目标机 176
    16.2.1 准备并编译内核 176
    16.2.2 构建Gator守护进程 177
    16.2.3 构建Gator模块 177
    16.2.4 连接目标机 177
    16.2.5 在目标机上运行Gator守护进程 177
    16.2.6 设置捕捉选项用以支持Android
    目标机 178
    第17章 使用Streamline数据视图 179
    17.1 ARM Streamline数据视图的基本操作 179
    17.1.1 Streamline捕捉数据与Streamline
    分析报告 180
    17.1.2 手动停止捕捉会话 180
    17.2 ARM Streamline数据视图的工具栏
    选项 180
    17.3 分析数据定位对话框的使用 181
    第18章 设置捕捉选项 182
    18.1 打开捕捉选项对话框 182
    18.2 捕捉选项设置 183
    第19章 配置Counters计数器 186
    19.1 打开Counters配置对话框 186
    19.2 使用Counters配置对话框 187
    19.2.1 添加新事件 188
    19.2.2 删除事件 188
    19.2.3 定制事件收集分类列表 189
    19.2.4 基于事件采样 189
    19.2.5 计数器配置选项 190
    第20章 Timeline视图 191
    20.1 关于Timeline视图 191
    20.1.1 图表 192
    20.1.2 进程 192
    20.1.3 详细信息栏 192
    20.1.4 X-Ray模式 193
    20.1.5 进程过滤 193
    20.1.6 书签 193
    20.2 Timeline图表 194
    20.3 数据筛选及Timeline的其他控件 195
    20.3.1 使用时间轴标尺对数据进行筛选 195
    20.3.2 通过处理控件调整曲线图表及
    进程表中内容的排列顺序 195
    20.3.3 时间断面标记 196
    20.3.4 曲线图表区与进程表区分隔栏 197
    20.4 Timeline视图的工具栏选项及快捷键 197
    20.5 可视化标注功能 198
    第21章 视图 200
    21.1 表单视图 200
    21.1.1 表单视图的工具栏选项、上下文
    菜单及快捷键 200
    21.1.2 对表单报告中的数据进行排序 202
    21.1.3 调用链视图表头 203
    21.1.4 函数视图表头 203
    21.1.5 堆栈视图表头及线程表格的最大
    堆栈深度 204
    21.2 代码视图 204
    21.2.1 代码定位功能 205
    21.2.2 定位缺失源代码文件 206
    21.2.3 查找命令 207
    21.2.4 代码视图工具栏选项及快捷键 207
    21.3 调用关系视图 208
    21.3.1 层次结构如何构造 208
    21.3.2 主调函数与被调函数连接节点 209
    21.3.3 缩略视图区 209
    21.3.4 颜色标记代码性能 210
    21.3.5 函数选定高亮操作 210
    21.3.6 快捷菜单选项 211
    21.3.7 调用关系视图工具栏及快捷键 211
    第22章 标注视图和日志视图 213
    22.1 通过标注视图定制报告格式 213
    22.1.1 annotate.h 头文件代码 214
    22.1.2 sum.c源代码 215
    22.2 在可视化标注视图中添加图像至报告 215
    22.3 Log视图 218
    22.3.1 Log视图搜索框 218
    22.3.2 Log视图表头 218
    22.3.3 Log视图中的Totals面板 219
    第23章 高级功能定制 220
    23.1 捕捉数据的本地化存储 220
    23.2 创建并定制性能 221
    23.2.1 gator_events_mmaped.c模板文件 221
    23.2.2 自定义counter 223
    23.2.3 gator_events函数 223
    23.2.4 更新events.xml文件 223
    23.3 从已存储的捕捉数据中创建新的
    分析报告 224
    第24章 v5.9版本的新增功能 225
    24.1 Big.little多核调试SMP Debugging
    介绍 226
    24.2 GPU的使用 228
    24.2.1 GPU简介 228
    24.2.2 Mali流水线设置 229
    24.2.3 Mali具体事件 230
    24.3 功耗性能分析 231
    24.3.1 功耗探测器简介 231
    24.3.2 使用功耗探测器的条件 232
    24.3.3 功耗探测器的安装 233
    24.3.4 功耗探测器使用 236

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册