基于ARM的嵌入式Linux开发与应用
作者: 马小陆
出版社:西安电子科技大学出版社
- 西安电子科技大学出版社
- 9787560640266
- 100470
- 0046177997-7
- 工学
- 计算机科学与技术
- TP332
- 无线电电子学、电讯技
- 本科
本书内容丰富,实用易懂,系统架构和知识点原理叙述清晰,实例过程详尽。本书既可作为各高等院校嵌入式Linux有关专业的教学用书,也可作为从事嵌入式Linux系统开发的技术人员的参考书。
第1章 嵌入式Linux基础知识
1.1 嵌入式Linux系统概述
1.1.1 计算机的发展与嵌入式系统定义
1.1.2 Linux
1.1.3 嵌入式Linux系统结构
1.2 Linux操作系统安装
1.2.1 安装虚拟机VMware
1.2.2 在虚拟机VMware中安装ubuntu11.04操作系统
1.2.3 安装VMwaretools
1.2.4 Windows系统与VMware下的Linux系统之间的文件共享设置
1.3 Linux基础
1.3.1 Linux目录结构
1.3.2 Linux文件属性
1.3.3 Shell命令
1.4 交叉开发环境
1.4.1 交叉编译
1.4.2 交叉开发环境
1.4.3 宿主机与目标机之间的通信方式
本章小结
第2章 嵌入式Linux编程环境
2.1 编辑器vi
2.1.1 编辑器vi简介
2.1.2 vi用法
2.2 编译器gcc
2.2.1 编译器gcc简介
2.2.2 gcc的编译过程
2.2.3 gcc常用用法
2.3 调试器gdb
2.3.1 调试器gdb简介
2.3.2 gdb用法
2.3.3 gdb使用实例
2.4 make和Makefile
2.4.1 make和Makefile概述
2.4.2 make命令
2.4.3 Makefile文件内容
2.5 Linux编程库
2.6 Shell编程基础一
2.6.1 建立和运行Shell脚本
2.6.2 Shell中的变量
2.6.3 Shell中的test命令
2.6.4 Shell中的流程控制语句
2.6.5 Shell程序中的函数
本章小结
第3章 嵌入式Linux开发C语言基础
3.1 嵌入式Linux下C语言基础知识
3.1.1 数据类型
3.1.2 常用的ASCII字符
3.1.3 关键字和标识符
3.1.4 变量存储类型
3.1.5 C语言中定义的五个内存空间
3.1.6 运算符
3.2 C语言输入/输出函数
3.2.1 输出函数
3.2.2 输入函数
3.3 C语言控制语句
3.3.1 条件语句
3.3.2 分支语句
3.3.3 循环控制语句
3.4 C语言数组和指针
3.4.1 数组
3.4.2 字符数组和字符串
3.4.3 指针
3.4.4 指针与数组
3.5 C语言函数
3.5.1 函数定义
3.5.2 函数声明
3.5.3 函数使用
3.5.4 函数的参数传递
3.5.5 数组在函数与函数间的传递
3.5.6 指针函数
3.5.7 函数指针
3.5.8 递归函数
3.6 C语言自定义数据类型
3.6.1 结构体
3.6.2 联合体
本章小结
第4章 嵌入式Linux系统编程
4.1 I/O
4.1.1 文件I/O
4.1.2 标准I/O
4.2 进程
4.2.1 进程相关的命令
4.2.2 进程控制相关的函数
4.2.3 线程
4.2.4 进程通信
4.3 网络编程
4.3.1 网络编程中的c/s模式
4.3.2 socket编程简介
4.3.3 socket编程相关函数介绍
4.3.4 socket编程实例
4.3.5 服务器功能扩展
4.3.6 I/O的处理方式
本章小结
第5章 ARM基础知识
5.1 ARM简介
5.1.1 ARM公司简介
5. 1.2.ARM主流芯片系列
5.1.3 ARM芯片特点
5.1.4 ARM微处理器应用选型
5.2 RealView开发工具
5.2.1 RealView开发工具简介
5.2.2 RealView使用
5.3 ARM编程模型
5.3.1 ARM数据和指令类型
5.3.2 处理器工作模式
5.3.3 寄存器组织
5.3.4 异常
5.3.5 流水线技术
本章小结
第6章 ARM开发基础
6.1 ARM汇编
6.1.1 ARM汇编指令格式
6.1.2 分支指令
6.1.3 数据处理指令一
6.1.4 存储/装载指令
6.1.5 寄存器和存储器交换指令
6.1.6 PSR传送指令
6.1.7 ARM处理器的寻址方式
6.2 基于ARM汇编的GPIO接口编程.
6.2.1 $3C2440GPIO寄存器介绍
6.2.2 GPIO使用举例
6.3 ARMC语言编程
6.3.1 ATPCS规则
6.3.2 C语言中内联汇编
6.3.3 C语言中内嵌汇编
6.3.4 汇编调用C函数
6.4 基于ARMc语言的GPIO接口编程..
6.5 ARM异常处理流程
6.6 基于ARM软中断异常的编程
6.6.1 ARM软中断指令SWI
6.6.2 ARM软中断编程框架
6.6.3 ARM软中断异常实例
6.7 基于ARM中断异常的按键接口编程
6.7.1 $3C2440中断控制器
6.7.2 按键中断使用举例
6.8 串口接口编程
6.8.1 串行通信和并行通信
6.8.2 $3C2440的串口模块
6.8.3 串口使用实例
本章小结
第7章 嵌入式Linux系统构建
7.1 嵌入式引导程序
7.1.1 嵌入式引导程序概述
7.1.2 Bootloader的主要任务与框架结构
7.1.3 u-boot代码分析
7.1.4 u-boot编译
7.1.5 u-boot移植
7.1.6 自己编写u-boot
7.2 嵌入式Linux内核
7.2.1 Linux内核简介
7.2.2 Linux内核的发展
7.2.3 Linux内核配置
7.2.4 Linux内核的编译流程
7.2.5 Linux内核的启动过程
7.3 嵌入式Linux根文件系统构建
7.3.1 Linux文件系统
7.3.2 嵌入式闪存文件系统
7.3.3 构建嵌入式Linux根文件系统的原理一
7.3.4 Busybox
7.3.5 构建嵌入式Linux根文件系统实例一
本章小结
第8章 嵌入式Liunx内核开发
8.1 Linux设备驱动基本原理
8.1.1 概述一
8.1.2 驱动程序和应用程序的区别
8.1.3 设备文件
8.1.4 Linux设备驱动程序模块
8.2 驱动程序相关的Shell命令
8.3 驱动程序的框架
8.4 字符设备驱动程序的框架
8.4.1 cdev结构体
8.4.2 cdev结构体操作函数
8.5 字符设备的主体
8.6 驱动程序的并发机制
8.7 驱动阻塞机制
8.8 驱动异步I/O机制
8.9 驱动多路复用I/O机制
8.10 驱动中断机制
8.11 驱动定时器机制
本章小结
第9章 嵌入式Linux驱动应用实例
9.1 硬件平台
9.2 GPIO接口驱动
9.3 IIC接口驱动
9.3.1 IIC概述
9.3.2 IIC总线的数据传输格式
9.3.3 IIC总线的写时序
9.3.4 IIC总线的读时序
9.3.5 基于S3C2440的IIC总线驱动程序设计
9.3.6 基于S3C2440的IIC总线驱动程序测试
9.4 看门狗接口驱动
9.4.1 S3C2440时钟模块
9.4.2 看门狗定时器
9.4.3 看门狗定时器驱动程序
9.4.4 看门狗定时器测试程序
9.5 ADC接口驱动
9.5.1 S3C2440ADC模块
9.5.2 ADC模块使用的步骤
9.5