嵌入式Linux系统开发标准教程 第2版PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:华清远见嵌入式培训中心编著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2009
- ISBN:9787115194756
- 页数:350 页
第1章 嵌入式系统概述 1
1.1 嵌入式系统的定义与特点 1
1.2 常见的嵌入式操作系统 2
1.3 嵌入式Linux的发展历史 4
1.4 初步认识嵌入式Linux开发环境 5
1.5 嵌入式Linux系统开发要点 6
第2章 ARM嵌入式处理器 8
2.1 初识ARM 8
2.1.1 ARM公司简介 9
2.1.2 ARM体系结构基础 10
2.1.3 Linux与ARM处理器 12
2.2 ARM指令集 13
2.2.1 ARM处理器的指令集概述 13
2.2.2 ARM指令寻址方式 14
2.2.3 Thumb指令概述 16
2.3 典型ARM处理器简介 16
2.3.1 Atmel AT91RM9200 16
2.3.2 Samsung S3C2410 17
2.3.3 TI OMAP1510/1610系列 18
2.3.4 Freescale i.Max21 21
2.4 典型的嵌入式系统开发平台——三星S3C2410开发板 22
第3章 Linux编程环境 25
3.1 Linux常用工具 25
3.1.1 Shell简介 25
3.1.2 常用Shell命令 27
3.1.3 编写Shell脚本 34
3.1.4 正则表达式 39
3.1.5 Linux程序编辑器 41
3.2 Makefile简介 44
3.2.1 GNU make 44
3.2.2 Makefile规则语法 46
3.2.3 Makefile文件中变量的使用 47
3.3 二进制代码工具的使用 49
3.3.1 GNU Binutils工具介绍 49
3.3.2 Binutils工具软件使用 50
3.4 编译器GCC的使用 51
3.4.1 GCC编译器介绍 51
3.4.2 GCC编译选项解析 52
3.5 调试器GDB的使用技巧 57
3.5.1 GDB调试器介绍 57
3.5.2 GDB调试命令 58
3.6 Linux编程库 62
3.6.1 Linux编程库介绍 62
3.6.2 Linux系统调用 63
3.6.3 Linux线程库 65
第4章 嵌入式交叉开发环境 69
4.1 交叉开发环境介绍 69
4.1.1 交叉开发概念模型 69
4.1.2 目标板与主机之间的连接 70
4.1.3 文件传输 72
4.1.4 网络文件系统 73
4.2 安装交叉编译工具 73
4.2.1 获取交叉开发工具链 74
4.2.2 主机安装工具链 75
4.3 主机开发环境配置 75
4.3.1 主机环境配置 75
4.3.2 串口控制台工具 77
4.3.3 DHCP服务 79
4.3.4 TFTP服务 81
4.3.5 NFS服务 81
4.4 启动目标板 83
4.4.1 系统引导过程 83
4.4.2 内核解压启动 84
4.4.3 挂接根文件系统 85
4.5 应用程序的远程交叉调试 86
4.5.1 交叉调试的模型 86
4.5.2 交叉调试程序实例 87
第5章 交叉开发工具链 89
5.1 工具链软件 89
5.1.1 相关软件工程 89
5.1.2 软件版本的匹配 90
5.1.3 工具链制作流程 92
5.2 制作交叉编译器 93
5.2.1 准备编译环境 93
5.2.2 编译binutils 94
5.2.3 编译GCC的辅助编译器 95
5.2.4 编译生成glibc库 96
5.2.5 编译生成完整的GCC编译器 99
5.3 制作交叉调试器 100
5.3.1 编译交叉调试器 100
5.3.2 编译gdbserver 101
第6章 Bootloader 102
6.1 Bootloader 102
6.1.1 Bootloader介绍 102
6.1.2 Bootloader的启动 103
6.1.3 Bootloader的种类 105
6.2 U-Boot编程 107
6.2.1 U-Boot工程简介 107
6.2.2 U-Boot源码结构 107
6.2.3 U-Boot的编译 108
6.2.4 U-Boot的移植 111
6.2.5 添加U-Boot命令 112
6.3 U-Boot的调试 114
6.3.1 硬件调试器 114
6.3.2 软件跟踪 115
6.3.3 U-Boot启动过程 117
6.3.4 U-Boot与内核的关系 121
6.4 使用U-Boot 126
6.4.1 烧写U-Boot到Flash 126
6.4.2 U-Boot的常用命令 127
6.4.3 U-Boot的环境变量 133
第7章 配置编译Linux 2.6内核 135
7.1 Linux内核特点 135
7.1.1 Linux内核版本介绍 135
7.1.2 Linux内核特点 135
7.1.3 Linux 2.6内核新特性 136
7.2 配置编译内核源码 139
7.2.1 内核源码结构 140
7.2.2 内核配置系统 142
7.2.3 Kbuild Makefile 149
7.2.4 内核编译 160
7.2.5 内核编译结果 169
7.3 内核配置选项 170
7.3.1 使用配置菜单 170
7.3.2 基本配置选项 171
7.3.3 驱动程序配置选项 173
第8章 基于ARM的Linux内核移植 175
8.1 移植内核源码 175
8.1.1 移植前的准备工作 175
8.1.2 开发板内核移植 176
8.1.3 移植后的工作 184
8.2 Linux内核启动过程分析 184
8.2.1 内核启动流程源代码分析 184
8.2.2 内核自引导程序 185
8.2.3 内核vmlinux入口 189
8.2.4 Linux系统初始化函数分析 191
8.2.5 挂接根文件系统 195
8.2.6 初始化设备驱动 197
8.2.7 启动用户空间init进程 198
第9章 内核调试技术 200
9.1 内核调试方法 200
9.1.1 内核调试概述 200
9.1.2 学会分析内核源程序 201
9.1.3 调试方法介绍 201
9.2 内核打印函数 204
9.2.1 内核映像解压前的串口输出函数 204
9.2.2 内核错误报告子程序 206
9.2.3 内核打印函数 208
9.3 如何获取内核信息 214
9.3.1 使用系统请求键 214
9.3.2 通过/proc接口 215
9.3.3 通过/sys接口 216
9.3.4 通过ioctl方法 219
9.4 处理出错信息 220
9.4.1 oops信息 220
9.4.2 panic 221
9.5 内核源码调试 223
9.5.1 KGDB调试内核源代码 223
9.5.2 BDI2000调试内核源代码 224
第10章 制作Linux根文件系统 229
10.1 根文件系统目录结构 229
10.1.1 FHS目录结构 230
10.1.2 文件存放规则 233
10.2 添加系统文件 234
10.2.1 添加共享链接库 234
10.2.2 添加内核模块 236
10.2.3 添加设备文件 238
10.3 init系统初始化过程 240
10.3.1 inittab文件 240
10.3.2 System V init启动过程 243
10.3.3 Busybox init启动过程分析 245
10.4 定制文件系统 247
10.4.1 定制应用程序 247
10.4.2 配置应用程序自动启动 247
第11章 在嵌入式系统中充分利用开源软件 249
11.1 开放源代码工程介绍 249
11.1.1 Linux系统和开源软件 250
11.1.2 开源软件的特点 251
11.2 Busybox使用 252
11.2.1 Busybox工程介绍 252
11.2.2 配置编译Busybox 252
11.3 X11图形系统 256
11.3.1 X Windows介绍 256
11.3.2 Tiny-X介绍 257
11.3.3 GTK图形库 258
11.4 Qt图形库 263
11.4.1 Qt介绍 263
11.4.2 Qt/Embedded介绍 265
11.4.3 Qt/Embedded架构 266
11.4.4 Qt/Embedded软件包与安装 267
11.5 MiniGUI图形系统 269
11.5.1 MiniGUI图形系统概述 269
11.5.2 MiniGUI移植 270
11.6 MicroWindows图形系统 276
11.7 Linux下的网络应用 277
11.7.1 嵌入式设备的网络化 277
11.7.2 TCP/IP协议概述 278
11.7.3 Linux下的Socket编程 279
11.8 嵌入式Linux的串行通信 289
11.8.1 Linux下的串口操作 289
11.8.2 Linux串口编程实例 293
第12章 系统集成测试 298
12.1 系统集成测试 298
12.1.1 系统集成测试概述 298
12.1.2 系统集成测试要求 299
12.2 系统跟踪工具 299
12.2.1 为什么需要跟踪工具 299
12.2.2 Strace 300
12.2.3 Ltrace 300
12.2.4 LTT 301
12.3 系统性能测量工具 305
12.3.1 代码效率测量 305
12.3.2 LTP 308
12.3.3 LMbench 309
12.4 测量内存泄漏 310
12.4.1 mtrace 310
12.4.2 dmalloc 310
12.4.3 memwatch 312
12.4.4 YAMD 313
第13章 部署Linux系统 316
13.1 部署Linux系统概述 316
13.1.1 部署Linux系统的基本流程 316
13.1.2 部署Linux系统的关键问题 317
13.2 文件系统类型 317
13.2.1 EXT2/EXT3 317
13.2.2 JFS 319
13.2.3 cramfs 321
13.2.4 JFFS/JFFS2 323
13.2.5 YAFFS 324
13.3 存储设备 325
13.3.1 MTD类型设备 325
13.3.2 磁盘类型设备 326
13.4 部署Linux系统 328
13.4.1 安装MTD工具 328
13.4.2 使用磁盘文件系统 329
13.4.3 使用RAMDISK设备 330
13.4.4 使用MTD设备和JFFS2文件系统 331
13.4.5 系统启动和升级 333
第14章 嵌入式Linux系统软硬件设计开发实例——GPS系统 334
14.1 需求分析 334
14.2 系统硬件设计 336
14.3 系统软件设计 346
14.4 系统集成与部署 348
- 《党员干部理论学习培训教材 理论热点问题党员干部学习辅导》(中国)胡磊 2018
- 《危险化学品经营单位主要负责人和安全生产管理人员安全培训教材》李隆庭,徐一星主编 2012
- 《住院医师规范化培训 麻醉科模拟试题及精析》住院医师规范化培训考试宝典编委会编 2019
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《企业高技能人才职业培训系列教材 药物制剂工 三级》人力资源和社会保障部教材办公室 2016
- 《新编预备党员培训教材》吕澄,王泽旭主编 2007
- 《抗生素生产工艺培训教程》王颖主编 2017
- 《危险化学品生产单位主要负责人及安全生产管理人员培训教材 2018修订版》全国安全生产教育培训教材教材编审委员会 2018
- 《“十三五”中小学教师培训教材 教师教学基本能力解读与训练 中学美术》刘文军 2018
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019