图书介绍
嵌入式Linux系统开发技术详解-基于ARMPDF|Epub|txt|kindle电子书版本网盘下载
![嵌入式Linux系统开发技术详解-基于ARM](https://www.shukui.net/cover/67/33092289.jpg)
- 孙纪坤,张小全编著 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115150141
- 出版时间:2006
- 标注页数:370页
- 文件大小:130MB
- 文件页数:384页
- 主题词:Linux操作系统;微处理器,ARM-系统设计
PDF下载
下载说明
嵌入式Linux系统开发技术详解-基于ARMPDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 概述1
1.1 嵌入式系统1
1.2 嵌入式操作系统2
1.3 嵌入式Linux历史4
1.4 嵌入式Linux开发环境5
1.5 嵌入式Linux系统开发要点7
第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指令寻址方式15
2.2.3 Thumb指令概述17
2.3 典型ARM处理器简介17
2.3.1 Atmel AT91RM920017
2.3.2 Samsung S3C241018
2.3.3 TI OMAP1510/1610系列19
2.3.4 Freescale i.Max2122
2.3.5 Intel Xscale PXA系列23
2.4 三星S3C2410开发板24
2.4.1 三星S3C2410开发板介绍24
2.4.2 众多的开发板供应商26
第3章 Linux编程环境28
3.1 Linux常用工具28
3.1.1 Shell简介28
3.1.2 常用Shell命令30
3.1.3 编写Shell脚本38
3.1.4 正则表达式42
3.1.5 程序编辑器44
3.2 Makefile48
3.2.1 GNU make48
3.2.2 Makefile规则语法49
3.2.3 Makefile文件中变量的使用51
3.3 二进制代码工具的使用52
3.3.1 GNU Binutils工具介绍52
3.3.2 Binutils工具软件使用54
3.4 编译器GCC的使用54
3.4.1 GCC编译器介绍54
3.4.2 GCC编译选项解析56
3.5.1 GDB调试器介绍60
3.5 调试器GDB的使用技巧60
3.5.2 GDB调试命令61
3.6 Linux编程库66
3.6.1 Linux编程库介绍66
3.6.2 Linux系统调用67
3.6.3 Linux线程库70
第4章 交叉开发环境73
4.1 交叉开发环境介绍73
4.1.1 交叉开发概念模型73
4.1.2 目标板与主机之间的连接75
4.1.3 文件传输76
4.1.4 网络文件系统77
4.2 安装交叉编译工具78
4.2.1 获取交叉开发工具链78
4.2.2 主机安装工具链79
4.3.1 主机环境配置80
4.3 主机开发环境配置80
4.3.2 串口控制台工具81
4.3.3 DHCP服务84
4.3.4 TFTP服务85
4.3.5 NFS服务86
4.4 启动目标板88
4.4.1 系统引导过程88
4.4.2 内核解压启动89
4.4.3 挂接根文件系统90
4.5 应用程序的远程交叉调试91
4.5.1 交叉调试的模型91
4.5.2 交叉调试程序实例92
5.1 工具链软件94
5.1.1 相关软件工程94
第5章 交叉开发工具链94
5.1.2 软件版本的匹配95
5.1.3 工具链制作流程97
5.2 制作交叉编译器98
5.2.1 准备编译环境98
5.2.2 编译binutils99
5.2.3 编译GCC的辅助编译器100
5.2.4 编译生成glibc库101
5.2.5 编译生成完整的GCC编译器105
5.3 制作交叉调试器106
5.3.1 编译交叉调试器106
5.3.2 编译gdbserver106
第6章 Bootloader108
6.1 Bootloader108
6.1.1 Bootloader介绍108
6.1.2 Bootloader的启动109
6.1.3 Bootloader的种类111
6.2 U-Boot编程113
6.2.1 U-Boot工程简介113
6.2.2 U-Boot源码结构113
6.2.3 U-Boot的编译114
6.2.4 U-Boot的移植117
6.2.5 添加U-Boot命令118
6.3 U-Boot的调试121
6.3.1 硬件调试器121
6.3.2 软件跟踪121
6.3.3 U-Boot启动过程123
6.3.4 U-Boot与内核的关系128
6.4 使用U-Boot133
6.4.2 U-Boot的常用命令134
6.4.1 烧写U-Boot到Flash134
6.4.3 U-Boot的环境变量141
第7章 配置编译内核143
7.1 Linux内核特点143
7.1.1 Linux内核版本介绍143
7.1.2 Linux内核特点143
7.1.3 Linux 2.6内核新特性144
7.2 配置编译内核源码147
7.2.1 内核源码结构148
7.2.2 内核配置系统150
7.2.3 Kbuild Makefile157
7.2.4 内核编译169
7.2.5 内核编译结果179
7.3 内核配置选项180
7.3.1 使用配置菜单180
7.3.2 基本配置选项181
7.3.3 驱动程序配置选项183
第8章 内核移植浅析185
8.1 移植内核源码185
8.1.1 移植前的准备工作185
8.1.2 开发板内核移植186
8.1.3 移植后的工作194
8.2 Linux内核启动过程分析194
8.2.1 内核启动流程源代码分析194
8.2.2 内核自引导程序195
8.2.3 内核vmlinux入口199
8.2.4 Linux系统初始化201
8.2.5 挂接根文件系统206
8.2.6 初始化设备驱动208
8.2.7 启动用户空间init进程209
9.1.1 内核调试概述212
第9章 内核调试技术212
9.1 内核调试方法212
9.1.2 学会分析内核源程序213
9.1.3 调试方法介绍213
9.2 内核打印函数216
9.2.1 内核映像解压前的串口输出函数216
9.2.2 内核错误报告子程序218
9.2.3 内核打印函数220
9.3 获取内核信息227
9.3.1 系统请求键227
9.3.2 通过/proc接口228
9.3.3 通过/sys接口229
9.3.4 通过ioctl方法232
9.4.1 oops信息233
9.4 处理出错信息233
9.4.2 panic234
9.5 内核源码调试236
9.5.1 KGDB调试内核源代码236
9.5.2 BDI2000调试内核源代码237
第10章 制作Linux根文件系统242
10.1 根文件系统目录结构242
10.1.1 FHS目录结构243
10.1.2 文件存放规则246
10.2 添加系统文件247
10.2.1 添加共享链接库247
10.2.2 添加内核模块249
10.2.3 添加设备文件251
10.3.1 inittab文件253
10.3 init系统初始化过程253
10.3.2 System V init启动过程256
10.3.3 Busybox init启动过程分析258
10.4 定制文件系统260
10.4.1 定制应用程序260
10.4.2 配置应用程序自动启动260
第11章 充分利用开源软件262
11.1 开放源代码工程介绍262
11.1.1 Linux系统和开源软件263
11.1.2 开源软件的特点264
11.2 Busybox使用265
11.2.1 Busybox工程介绍265
11.2.2 配置编译Busybox265
11.3.1 X Windows介绍270
11.3.2 Tiny-X介绍270
11.3 X11图形系统270
11.3.3 GTK图形库271
11.4 Qt图形库277
11.4.1 Qt介绍277
11.4.2 Qt/Embedded介绍278
11.4.3 Qt/Embedded架构280
11.4.4 Qt/Embedded软件包与安装281
11.5 MiniGUI图形系统283
11.5.1 MiniGUI图形系统概述283
11.5.2 MiniGUI移植285
1 1.6 MicroWindows图形系统290
11.7 Linux下的网络应用292
11.7.1 嵌入式设备的网络化292
11.7.2 TCP/IP协议概述292
1 1.7.3 Linux下的Socket编程294
11.8 嵌入式Linux的串行通信304
11.8.1 Linux下的串口操作304
11.8.2 Linux串口编程实例309
第12章 系统集成测试314
12.1 系统集成测试314
12.1.1 系统集成测试概述314
12.1.2 系统集成测试要求315
12.2 系统跟踪工具315
12.2.1 为什么需要跟踪工具315
12.2.2 Strace316
12.2.3 Ltrace316
12.2.4 LTT317
12.3 系统性能测量工具321
12.3.1 代码效率测量321
12.3.2 LTP324
12.3.3 LMbench325
12.4 测量内存泄漏326
12.4.1 mtrace326
12.4.2 dmalloc327
12.4.3 memwatch328
12.4.4 YAMD330
第13章 部署Linux系统333
13.1 部署Linux系统概述333
13.1.1 部署Linux系统的基本流程333
13.1.2 部署Linux系统的关键问题334
13.2 文件系统类型335
13.2.1 EXT2/EXT3335
13.2.2 JFS337
13.2.3 cramfs339
13.2.4 JFFS/JFFS2340
13.2.5 YAFFS341
13.3 存储设备343
13.3.1 MTD类型设备343
13.3.2 磁盘类型设备344
13.4 部署Linux系统346
13.4.1 安装MTD工具346
13.4.2 使用磁盘文件系统347
13.4.3 使用RAMDISK设备348
13.4.4 使用MTD设备和JFFS2文件系统349
13.4.5 系统启动和升级351
第14章 系统设计开发实例352
14.1 需求分析352
14.2 系统硬件设计354
14.3 系统软件设计364
14.4 系统集成与部署366