- 博客(0)
- 资源 (38)
- 收藏
- 关注
嵌入式linux系统开发技术详解.pdf
对于想学习ARM和嵌入式Linux系统的还是挺有帮助的
目录如下:
第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 AT91RM9200 17
2.3.2 Samsung S3C2410 18
2.3.3 TI OMAP1510/1610系列 19
2.3.4 Freescale i.Max21 22
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 Makefile 48
3.2.1 GNU make 48
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 调试器GDB的使用技巧 60
3.5.1 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 主机开发环境配置 80
4.3.1 主机环境配置 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章 交叉开发工具链 94
5.1 工具链软件 94
5.1.1 相关软件工程 94
5.1.2 软件版本的匹配 95
5.1.3 工具链制作流程 97
5.2 制作交叉编译器 98
5.2.1 准备编译环境 98
5.2.2 编译binutils 99
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 编译gdbserver 106
第6章 Bootloader 108
6.1 Bootloader 108
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-Boot 133
6.4.1 烧写U-Boot到Flash 134
6.4.2 U-Boot的常用命令 134
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 Makefile 157
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章 内核调试技术 212
9.1 内核调试方法 212
9.1.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 处理出错信息 233
9.4.1 oops信息 233
9.4.2 panic 234
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 init系统初始化过程 253
10.3.1 inittab文件 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 配置编译Busybox 265
11.3 X11图形系统 270
11.3.1 X Windows介绍 270
11.3.2 Tiny-X介绍 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
11.6 MicroWindows图形系统 290
11.7 Linux下的网络应用 292
11.7.1 嵌入式设备的网络化 292
11.7.2 TCP/IP协议概述 292
11.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 Strace 316
12.2.3 Ltrace 316
12.2.4 LTT 317
12.3 系统性能测量工具 321
12.3.1 代码效率测量 321
12.3.2 LTP 324
12.3.3 LMbench 325
12.4 测量内存泄漏 326
12.4.1 mtrace 326
12.4.2 dmalloc 327
12.4.3 memwatch 328
12.4.4 YAMD 330
第13章 部署Linux系统 333
13.1 部署Linux系统概述 333
13.1.1 部署Linux系统的基本流程 333
13.1.2 部署Linux系统的关键问题 334
13.2 文件系统类型 335
13.2.1 EXT2/EXT3 335
13.2.2 JFS 337
13.2.3 cramfs 339
13.2.4 JFFS/JFFS2 340
13.2.5 YAFFS 341
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
2010-03-11
8086保护模式教程.rar
80x86保护模式系列教程
作者:李彦昌
--------------------------------------------------------------------------------
一.保护方式简介
二.分段管理机制
三.控制寄存器和系统地址寄存器
四.实模式与保护模式切换实例
五.任务状态段和控制门
六.控制转移
七.中断和异常
八.操作系统类指令
九.输入/输出保护
十.分页管理机制
十一.虚拟8086模式
2009-11-28
bios中断手册.rar
bios中断手册,系统编程用。。。备查
BIOS中断手册
1、显示服务(Video Service——INT 10H)
00H —设置显示器模式0CH —写图形象素
01H —设置光标形状0DH —读图形象素
02H —设置光标位置0EH —在Teletype模式下显示字符
03H —读取光标信息0FH —读取显示器模式
04H —读取光笔位置10H —颜色
05H —设置显示页11H —字体
06H、07H —初始化或滚屏12H —显示器的配置
08H —读光标处的字符及其属性13H —在Teletype模式下显示字符串
09H —在光标处按指定属性显示字符1AH —读取/设置显示组合编码
0AH —在当前光标处显示字符1BH —读取功能/状态信息
0BH —设置调色板、背景色或边框1CH —保存/恢复显示器状态
(1)、功能00H
功能描述:设置显示器模式
入口参数:AH=00H
AL=显示器模式,见下表所示
出口参数:无
2009-11-28
清华大学的数据结构教程及实现源码
清华大学的数据结构教程,c++语言描述。包含教程的ppt,还有课本所有的课后题答案。另外包含书中所有数据结构的实现源代码,是学习数据结构的不二资料!
2009-05-08
高级Bash 脚本编程指南.rar
本指南不期望读者有任何的脚本和编程的背景知识,但能引导你迅速提高到中高级水平的教程 . . . 所有这些只是 UNIX®浩瀚知识的一小部分. 本指南可做为shell脚本技术的教科书,自学指导书或是技术参考书。教程中的练习和很好的注释能激起读者积极参与,但前提是要认识到:只有真正动手去写脚本才是唯一真正学会脚本编程技术的方法.
2008-10-30
基于lucene和nutch的开源搜索引擎资料集合
其中内容均为前段时间研究开源搜索引擎时搜集参考的资料,非常齐全包含的内容有:
Computing PageRank Using Hadoop.ppt
Google的秘密PageRank彻底解说中文版.doc
JAVA_Lucene_in_Action教程完整版.doc
Java开源搜索引擎.doc
Linux下Nutch分布式配置和使用.pdf
Lucene+Nutch源码.rar
Lucene学习笔记.doc
nutch_tutorial.pdf
nutch二次开发总结.txt
nutch入门.pdf
nutch入门学习.pdf
Nutch全文搜索学习笔记.doc
Yahoo的Hadoop教程.doc
[硕士论文]_基于Lucene的Web搜索引擎实现.pdf
[硕士论文]_基于MapReduce的分布式智能搜索引擎框架研究.pdf
[硕士论文]_基于Nutch的垂直搜索引擎的分析与实现.pdf
一个例子学懂搜索引擎(lucene).doc
中文搜索引擎技术揭密.doc
九大开源搜索引擎介绍.txt
基于Nutch的搜索引擎技术.pdf
基于开源工具搭建小型搜索引擎.pdf
整合开源工具的小型搜索引擎构建.pdf
用_Hadoop_进行分布式并行编程.doc
2011-01-19
搜索引擎-原理、技术与系统
搜索引擎-原理、技术与系统
本书系统地介绍了互联网搜索引擎的工作原理、实现技术及其系统构建方案。全书分三篇共13章内容,从基本工作原理概述,到一个小型简单搜索引擎具体细节的实现,进而详细讨论了大规模分布式搜索引擎系统的设计要点及其关键技术;最后介绍了面向主题和个性化的Web信息服务,阐述了中文网页自动分类等技术及其应用。本书层次分明,由浅入深;既有深入的理论分析,也有大量的实验数据,具有学习和实用双重意义。
2010-10-26
sqlite中文手册
SQLite是一款轻型的数据库,它占用资源非常的低,同时能够跟很多程序语言相结合,但是支持的SQL语句不会逊色于其他开源数据库。
SQLite虽然很小巧,但是支持的SQL语句不会逊色于其他开源数据库,它支持的SQL包括:
ATTACH DATABASE
BEGIN TRANSACTION
comment
COMMIT TRANSACTION
COPY
CREATE INDEX
CREATE TABLE
CREATE TRIGGER
CREATE VIEW
DELETE
DETACH DATABASE
DROP INDEX
DROP TABLE
DROP TRIGGER
DROP VIEW
END TRANSACTION
EXPLAIN
expression
INSERT
ON CONFLICT clause
PRAGMA
REPLACE
ROLLBACK TRANSACTION
SELECT
UPDATE
2010-06-12
C+++GUI+Programming+with+Qt+4+中文版(第一章至第十章).pdf
C+++GUI+Programming+with+Qt+4+中文版(第一章至第十章).pdf,qt图形编程书籍,需要的朋友,请下载。
2010-05-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人