图书介绍
基于ARM嵌入式Linux应用开发与实例教程PDF|Epub|txt|kindle电子书版本网盘下载
![基于ARM嵌入式Linux应用开发与实例教程](https://www.shukui.net/cover/35/31756584.jpg)
- 林晓飞,刘彬,张辉编著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302155593
- 出版时间:2007
- 标注页数:368页
- 文件大小:73MB
- 文件页数:379页
- 主题词:微处理器,ARM-教材;Linux操作系统-教材
PDF下载
下载说明
基于ARM嵌入式Linux应用开发与实例教程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一部分1
绪论1
第1章 嵌入式系统的硬件构成3
1.1 嵌入式处理器3
1.1.1 嵌入式处理器的品种划分3
1.1.2 嵌入式处理器的选择6
1.2 存储器7
1.2.1 ROM8
1.2.2 RAM8
1.3 输入输出设备8
1.3.1 液晶显示8
1.3.2 触摸屏9
1.3.3 语音输入输出技术11
1.3.4 键盘11
1.4 电源转换与管理14
1.4.1 电源IC分类14
1.4.2 电源IC的特点15
1.4.3 电源IC选用指南16
1.5 接口技术17
1.5.1 并行接口17
1.5.2 串口18
1.5.3 USB19
1.5.4 PCMCIA和CF19
1.5.5 红外线接口21
1.6 总线22
1.6.1 ISA22
1.6.2 PCI23
1.6.3 I2C总线23
1.6.4 SPI总线24
1.6.5 PC104总线24
1.6.6 CAN总线25
1.7 嵌入式系统开发中常用的硬件调试和编程技术26
1.7.1 微代码支持的串口调试26
1.7.2 编程技术26
1.7.3 JTAG与IEEE1149协议简介27
1.7.4 3.3V和5V装置的互连29
第2章 嵌入式处理器介绍31
2.1 ARM微处理器概述31
2.2 ARM微处理器的应用领域及特点31
2.2.1 ARM微处理器的应用领域31
2.2.2 AM微处理器的特点32
2.3 ARM微处理器系列32
2.3.1 ARM7微处理器系列32
2.3.2 ARM9微处理器系列33
2.3.3 ARM9E微处理器系列33
2.3.4 ARM10E微处理器系列34
2.3.5 SecurCore微处理器系列34
2.3.6 StrongARM微处理器系列35
2.3.7 Xscale处理器35
2.4 ARM微处理器结构35
2.4.1 RISC体系结构35
2.4.2 ARM微处理器的寄存器结构36
2.4.3 ARM微处理器的指令结构36
2.5 ARM微处理器的应用选型37
2.5.1 ARM微处理器内核的选择37
2.5.2 系统的工作频率37
2.5.3 芯片内存储器的容量37
2.5.4 片内外围电路的选择37
2.6 ARM微处理器的编程模型38
2.7 ARM体系结构的存储器格式38
2.7.1 大端格式38
2.7.2 小端格式39
2.8 指令长度及数据类型39
2.9 处理器模式39
2.10 寄存器组织40
2.10.1 ARM状态下的寄存器组织40
2.10.2 Thumb状态下的寄存器组织42
2.10.3 程序状态寄存器44
2.11 异常46
2.11.1 ARM体系结构所支持的异常类型46
2.11.2 对异常的响应46
2.11.3 从异常返回47
2.11.4 各类异常的具体描述47
2.11.5 异常进入/退出48
2.11.6 异常向量49
2.11.7 异常优先级49
2.11.8 应用程序中的异常处理50
2.12 ARM微处理器的指令系统50
2.12.1 ARM微处理器的指令的分类与格式50
2.12.2 指令的条件域51
2.13 ARM指令的寻址方式52
2.13.1 立即寻址52
2.13.2 寄存器寻址53
2.13.3 寄存器间接寻址53
2.13.4 基址变址寻址53
2.13.5 多寄存器寻址53
2.13.6 相对寻址54
2.13.7 堆栈寻址54
2.14 ARM指令集54
2.14.1 跳转指令54
2.14.2 数据处理指令56
2.14.3 乘法指令与乘加指令60
2.14.4 程序状态寄存器访问指令62
2.14.5 加载/存储指令63
2.14.6 批量数据加载/存储指令65
2.14.7 数据交换指令66
2.14.8 移位指令(操作)67
2.14.9 协处理器指令68
2.14.10 异常产生指令70
2.15 Thumb指令及应用70
2.16 其他嵌入式处理器介绍71
2.16.1 x8671
2.16.2 Power PC71
2.16.3 Motorola 6800072
2.16.4 MIPS72
第3章 嵌入式系统的软件构成74
3.1 基础知识74
3.2 操作系统发展史75
3.2.1 串行处理系统75
3.2.2 简单批处理系统75
3.2.3 多道程序设计批处理系统75
3.2.4 分时系统75
3.2.5 现代操作系统75
3.3 操作系统内核76
3.3.1 内存管理功能76
3.3.2 内存分割76
3.3.3 虚拟内存77
3.4 进程与中断管理79
3.4.1 进程描述与控制80
3.4.2 并发控制:互斥与同步84
3.4.3 并发控制:死锁处理91
3.4.4 中断及中断处理94
3.5 调度机制95
3.5.1 调度类型95
3.5.2 单处理器调度97
3.5.3 多处理器调度99
3.5.4 实时调度101
3.6 I/O设备104
3.6.1 I/O设备描述参数104
3.6.2 I/O技术的演变105
3.6.3 I/O设备逻辑描述105
3.6.4 I/O缓冲技术107
3.6.5 磁盘调度109
3.7 文件管理111
3.7.1 文件与文件系统112
3.7.2 文件组织与访问113
3.7.3 文件共享115
3.7.4 记录分块115
3.7.5 外围存储设备管理116
3.8 用户界面117
3.8.1 图形用户界面118
3.8.2 关键技术118
3.9 智能化用户界面120
3.9.1 Agent技术120
3.9.2 Agent技术与用户界面的结合123
3.10 主流嵌入式操作系统介绍124
3.10.1 Windows CE124
3.10.2 VxWorks125
3.10.3 OS-9126
3.10.4 QNX126
3.10.5 μC/OS-Ⅱ126
3.10.6 Linux126
第4章 嵌入式Linux介绍128
4.1 Linux的基础知识介绍128
4.2 Linux的进程与中断管理机制131
4.2.1 Linux进程状态131
4.2.2 Linux进程控制块132
4.2.3 Linux内核同步机制133
4.2.4 Linux进程间的通信134
4.2.5 Linux中断与定时服务137
4.3 Linux的调度机制137
4.3.1 Linux的一般调度机制138
4.3.2 RT-Linux的实时调度机制138
4.4 Linux的文件系统管理139
4.4.1 文件系统管理140
4.4.2 虚拟文件系统140
4.5 Linux下的用户界面141
4.5.1 X Window简介141
4.5.2 X服务器142
4.5.3 窗口管理器143
4.6 嵌入式Linux内核144
4.6.1 uClinux概述144
4.6.2 uClinux的内存管理145
4.6.3 uClinux内核结构146
4.6.4 内存保护146
4.6.5 编程接口的改变147
4.6.6 uClinux的应用程序库147
4.6.7 uClinux内核运行方式148
4.6.8 uClinux支持的文件系统148
4.7 嵌入式设备的文件系统148
4.7.1 闪存介绍148
4.7.2 第二版扩展文件系统Ext2fs149
4.7.3 临时文件系统tmpfs149
4.8 日志闪存文件系统版本2——JFFS2150
4.8.1 概述150
4.8.2 JFFS的设计原理150
4.9 嵌入式用户界面152
4.9.1 XFree86 4.X(带帧缓冲区支持的X11R6.4)152
4.9.2 Microwindows153
4.9.3 FLTK153
4.9.4 Qt/Embedded154
4.10 Microwindows剖析155
4.10.1 分层设计155
4.10.2 设备驱动层155
4.10.3 设备无关的图形引擎层155
4.10.4 API(基于Win32)156
4.10.5 消息传递机制156
4.10.6 窗口操作156
4.10.7 客户区域和绝对坐标157
4.10.8 设备上下文157
4.11 Microwindows的移植和中文化158
4.11.1 针对uClinux所作的修改158
4.11.2 中文化处理158
4.12 应用实例——电子文本阅读器159
4.12.1 功能要求以及方案选择159
4.12.2 具体实现159
4.13 主流嵌入式Linux160
4.13.1 RT-Linux160
4.13.2 uClinux161
4.13.3 Embedix161
4.13.4 XLinux161
4.13.5 PocketLinux161
4.13.6 MidoriLinux161
4.13.7 红旗嵌入式Linux162
第5章 嵌入式系统中的Bootloader163
5.1 BootLoader概述163
5.2 Bootloader设计分析163
5.2.1 启动加载模式164
5.2.2 下载模式164
5.3 Bootloader的启动及初始化164
5.3.1 Bootloader的stage1164
5.3.2 Bootloader的stage2165
5.4 Bootloader难点分析166
5.5 命令控制台168
第6章 交叉编译169
6.1 编译原理169
6.1.1 编译的一般过程169
6.1.2 与编译器相关的程序170
6.1.3 编译器的移植171
6.2 词法分析171
6.2.1 词法的形式化描述171
6.2.2 词法分析程序的设计174
6.3 语法分析175
6.3.1 自顶向下的语法分析176
6.3.2 自底向上的语法分析178
6.4 中间代码180
6.5 代码优化182
6.6 交叉编译技术185
6.7 GCC交叉编译器186
6.7.1 GCC编译流程186
6.7.2 Linux环境下的GCC交叉编译器189
6.8 一个交叉编译器的生成实例190
6.8.1 可执行文件格式190
6.8.2 交叉编译器191
6.8.3 相关问题193
第7章 嵌入式Linux的软件开发环境194
7.1 交叉编译环境194
7.1.1 安装交叉编译环境194
7.1.2 添加设备驱动和内核模块195
7.2 可执行文件195
7.2.1 COFF文件格式195
7.2.2 ELF文件格式195
7.2.3 flat文件格式195
7.3 调试技术196
7.3.1 常见调试方法196
7.3.2 内存调试197
7.3.3 MEMWATCH197
7.3.4 YAMD198
7.4 系统调用跟踪200
7.5 程序调试200
7.5.1 gdb200
7.5.2 kgdb201
7.5.3 Oops203
7.6 系统引导和内核启动204
7.6.1 Bootloader程序的设计与实现204
7.6.2 硬件平台的通信205
7.6.3 硬件平台初始化程序205
7.6.4 硬件平台监控程序205
7.7 uClinux移植206
7.7.1 第一阶段206
7.2.2 第二阶段208
第8章 设备驱动程序210
8.1 概述210
8.1.1 设备类型211
8.1.2 设备号211
8.1.3 模块化编程212
8.2 设备文件接口213
8.2.1 用户访问接口213
8.2.2 open入口点213
8.2.3 close入口点213
8.2.4 read入口点214
8.2.5 write入口点214
8.2.6 ioctl入口点214
8.3 文件操作214
8.3.1 file_operations结构214
8.3.2 file结构216
8.4 I/O操作217
8.4.1 阻塞型I/O217
8.4.2 select218
8.4.3 异步触发218
8.5 中断处理219
8.5.1 注册中断处理程序219
8.5.2 返回值220
8.5.3 参数220
8.5.4 实现中断处理程序221
8.6 应用实例222
8.6.1 字符型设备223
8.6.2 按键223
8.6.3 触摸屏224
8.7 网络设备232
8.7.1 网络驱动的框架233
8.7.2 网卡驱动程序的加载方法235
8.7.3 CS8900A芯片特点236
8.7.4 CS8900A芯片驱动程序的实现237
8.7.5 网络设备驱动程序的编译243
8.7.6 网络驱动程序的测试243
第二部分245
第9章 GX-ARM9-2410EP说明245
9.1 系统概述245
9.2 电路说明248
9.2.1 系统供电249
9.2.2 系统配置249
9.2.3 复位逻辑250
9.2.4 启动分区(BOOT ROM BANK0)250
9.2.5 LCD和触摸屏接口251
9.2.6 键盘和SPI接口252
9.2.7 A/D、D/A转换接口253
9.2.8 Smart Media Card(NAND Flash Memory)卡电路254
9.2.9 PCMCIA接口255
9.2.10 SD卡主机(MMC)接口255
9.2.11 IIC接口256
9.2.12 USB接口256
9.2.13 UART接口和irDA接口257
第10章 开发环境的建立258
10.1 建立主机开发环境258
10.2 配置minicom259
10.3 配置TFTP260
10.4 配置NFS服务261
第11章 基本实验部分262
实验1 编译Bootloader262
实验2 编译Linux内核266
实验3 制作文件系统及程序的烧写283
实验4 烧写各部分到目标板286
实验5 交叉编译并运行简单程序291
第12章 高级实验部分297
实验6 简单驱动程序的编写297
实验7 LED点阵驱动302
实验8 中断试验306
实验9 IIC LED实验320
实验10 IIS音频实验330
实验11 RS-485实验355