当前位置:在线查询网 > 在线百科全书查询 > 嵌入式Linux开发详解:基于AT91RM9200和Linux2.6

嵌入式Linux开发详解:基于AT91RM9200和Linux2.6_在线百科全书查询


请输入要查询的词条内容:

嵌入式Linux开发详解:基于AT91RM9200和Linux2.6




图书信息


书 名: 嵌入式Linux开发详解:基于AT91RM9200和Linux2.6

作 者:刘庆敏

出版社: 北京航空航天大学出版社

出版时间: 2010年5月1日

ISBN: 9787512400719

开本: 16开

定价: 29.00元

内容简介


《嵌入式Linux开发详解:基于AT91RM9200和Linux2.6》介绍了嵌入式Linux开发需要掌握的基础知识,采用分层的方法对关键技术进行了详细的讲解,且辅以大量实例。共分为7章。第1、2章介绍嵌入式系统和Linux的基础知识。第3~7章从实践的角度分层次介绍嵌入式Linux开发的流程和关键技术。其中,第3章介绍硬件平台;第4章介绍Boot Loader的基础理论,对Uboot的移植、代码分析、关键技术情景分析等进行了深入探讨;第5章介绍了Linux内核移植需要具备的知识,重点分析了内核映像格式以及Boot Loader与内核的通信机制;第6章在介绍嵌入式文件系统的基础上,设计并实现了一个嵌入式混合文件系统;第7章介绍了嵌入式开发环境的搭建,并简单介绍了一个数据网关的实例。

图书目录


第1章 嵌入式系统设计概述1

1.1 嵌入式系统的定义1

1.1.1 嵌入式系统的发展历史2

1.1.2 嵌入式系统的组成3

1.1.3 嵌入式系统的特点4

1.2 嵌入式系统设计概述5

1.3 嵌入式系统的学习方法6

本章总结6

第2章 磨刀不误砍柴工7

2.1 Linux概述7

2.2 Linux的安装8

2.2.1 创建一个新的虚拟机9

2.2.2 在虚拟机上安装Red Hat Linux 911

2.3 Red Hat Linux 9的初步设置18

2.3.1 VMware tools的安装20

2.3.2 网络设置22

2.4 使用shell提高效率24

2.4.1 shell初始化文件配置24

2.4.2 常用的脚本26

2.5 学习开发工具的使用30

2.5.1 Vim高级技巧30

2.5.2 编译流程32

2.5.3 工程管理器make37

2.6 嵌入式Linux常用的命令42

2.6.1 Linux基本命令42

2.6.2 arm?linux?系列47

2.6.3 diff和patch的使用52

本章总结57

第3章 走马观花58

3.1 本书基于的硬件平台58

3.1.1 ARM概述59

3.1.2 ARM命名规则60

3.1.3 AT91RM9200简介61

3.1.4 K9I开发板概述63

3.2 让系统先跑起来65

3.2.1 准备工作65

3.2.2 下载Boot Loader71

3.2.3 内核和文件系统72

3.2.4 搭建交叉编译环境75

3.2.5 应用程序测试76

3.3 深入理解硬件平台78

3.3.1 最小系统组成78

3.3.2 时钟系统78

3.3.3 NVM82

3.3.4 JTAG接口87

本章总结91

第4章 Boot Loader92

4.1 准备工作92

4.1.1 整合资源92

4.1.2 代码阅读工具93

4.2 Boot Loader概述94

4.2.1 Boot Loader概念94

4.2.2 Boot Loader在嵌入式系统中的必要性95

4.2.3 Boot Loader的启动流程96

4.2.4 Boot Loader如何固化97

4.3 AT91RM9200的启动机制98

4.3.1 片内启动98

4.3.2 片外启动101

4.3.3 3种启动场景102

4.4 Boot Loader的移植103

4.4.1 Loader和Boot104

4.4.2 Uboot的移植108

4.5 Uboot的3种启动方式无关性设计114

4.5.1 背景介绍115

4.5.2 重映射的理论模型115

4.5.3 Uboot的不合理性分析116

4.5.4 解决方案116

4.6 Boot Loader深入分析119

4.6.1 将ELF文件转换为BIN119

4.6.2 Uboot源代码分析123

4.6.3 Uboot的命令机制129

4.6.4 Uboot的source实现133

本章总结139

第5章 Linux内核移植140

5.1 嵌入式操作系统的选择140

5.2 Linux 2.6 介绍142

5.3 Makefile体系144

5.4 内核的移植150

5.4.1 基本移植151

5.4.2 出现的问题155

5.5 内核映像格式159

5.5.1 生成过程160

5.5.2 zImage自解压引导过程163

5.6 Boot Loader与内核的通信机制168

5.6.1 基本模型168

5.6.2 tagged list组织方式169

5.6.3 Boot Loader实现173

5.6.4 Linux内核实现179

本章总结186

第6章 文件系统187

6.1 概述187

6.2 库191

6.2.1 库的概述191

6.2.2 库的命名191

6.2.3 库的制作方法192

6.3 一个最简单的根文件系统193

6.4 基本功能完备的根文件系统201

6.4.1 修改现有的文件系统映像201

6.4.2 从零开始制作根文件系统204

6.4.3 网络功能213

6.5 嵌入式混合文件系统——EFS226

6.5.1 问题提出226

6.5.2 系统设计方案226

6.5.3 组件实现229

6.5.4 系统集成设计231

6.5.5 辅映像制作236

本章总结237

第7章 应用程序238

7.1 应用开发环境的建立238

7.1.1 嵌入式Linux的GDB调试环境建立238

7.1.2 嵌入式Linux的NFS开发环境建立239

7.1.3 嵌入式Linux的TFTP开发环境建立241

7.1.4 嵌入式Linux的DHCP开发环境建立242

7.2 串行/网络数据网关244

7.2.1 基本原理244

7.2.2 数据帧的设计245

7.2.3 网络异常情况的处理245

本章总结246

参考文献247