第1章 体验嵌入式系统的魅力
1
1.1 嵌入式系统的定义 2
1.2 嵌入式系统的历史与现状 2
1.2.1 无操作系统阶段 2
1.2.2 简单操作系统阶段 3
1.2.3 实时操作系统阶段 3
1.2.4 面向Internet阶段 3
1.3 嵌入式与非嵌入式的区别 4
1.4 从事嵌入式软件开发的前景 4
1.4.1 优势 4
1.4.2 从事嵌入式软件开发的缺点 5
1.4.3 技术基本要求 6
1.5 嵌入式系统的体系结构 6
1.5.1 嵌入式处理器 6
1.5.2 嵌入式外围设备 7
1.5.3 嵌入式操作系统 8
1.5.4 嵌入式应用软件 9
1.6 ARM 9
1.7 延伸阅读:嵌入式系统面临的关键问题 10
1.8 小结 11
第2章 嵌入式Linux的前世今生 13
2.1 嵌入式Linux简介 14
2.1.1 嵌入式Linux的优势 14
2.1.2 嵌入式Linux面临的挑战 15
2.1.3 发展前景 16
2.1.4 Android 17
2.2 嵌入式Linux系统的软件组成 17
2.2.1 引导加载程序 17
2.2.2 Linux内核 18
2.2.3 文件系统 19
2.2.4 用户应用程序 21
2.3 嵌入式系统软件研发的关键技术 21
2.3.1 开发流程 21
2.3.2 交叉编译和链接 22
2.3.3 交叉调试 23
2.3.4 系统测试 25
2.4 系统启动过程 26
2.5 延伸阅读:开源、GPL与POSIX简介 28
2.5.1 开源 28
2.5.2 GPL 29
2.5.3 POSIX 30
2.6 小结 32
第3章 零基础安装虚拟机与Linux操作系统 33
3.1 VMware Workstation的安装 34
3.2 配置VMware Workstation并便捷安装Fedora 16 36
3.3 配置VMware Workstation手动安装Fedora 16 43
3.4 安装Fedora 16 47
3.5 VMware Tools的安装 52
3.6 使用已安装好操作系统的虚拟机 56
3.7 延伸阅读:打开Fedora 16的root账号 58
3.8 小结 58
第4章 快速构建嵌入式Linux开发环境 59
4.1 安装交叉编译器 60
4.1.1 安装交叉编译器 60
4.1.2 建立链接 62
4.1.3 查看交叉工具是否安装正确 63
4.2 构建开发板运行所需的环境 63
4.2.1 编译一级启动文件x-loader 63
4.2.2 编译二级启动文件U-Boot 65
4.2.3 编译内核 67
4.2.4 制作文件系统镜像 68
4.3 更新系统文件 69
4.3.1 更新文件从SD卡启动 69
4.3.2 更新文件从NAND Flash启动 70
4.4 小结 77
第5章 配置串口通信工具 79
5.1 配置Windows XP的超级终端 80
5.2 串口信息的捕获 82
5.3 在Linux中配置Minicom 84
5.4 小结 88
第6章 配置NFS文件系统服务 89
6.1 查看宿主机上的安装包 90
6.2 配置网络文件系统NFS 91
6.3 启动NFS服务 91
6.3.1 在Fedora 16下面运行service nfs start命令失败 91
6.3.2 在Fedora 16下面运行service nfs-server start失败 92
6.4 本机测试NFS 94
6.5 在开发板上测试NFS 94
6.5.1 常见的测试过程 94
6.5.2 NFS无法挂载的问题分析 95
6.6 小结 96
第7章 开始编写第一个程序 97
7.1 在宿主机上编写第一个程序 98
7.2 编写开发板上的上第一个程序 99
7.3 小结 102
第8章 Linux开发入门必备私房菜 103
8.1 程序安装目录 104
8.2 头文件 104
......