嵌入式Linux系统开发教程【全本

您所在的位置:网站首页 嵌入式Linux系统开发教程 嵌入式Linux系统开发教程【全本

嵌入式Linux系统开发教程【全本

#嵌入式Linux系统开发教程【全本| 来源: 网络整理| 查看: 265

前言

第1章 嵌入式系统概述

1.1 嵌入式系统

1.2 嵌入式操作系统

1.3 嵌入式Linux历史

1.4 嵌入式Linux开发环境

1.5 嵌入式Linux系统开发要点

第2章 ARM处理

2.1 ARM处理器简介

2.1.1 ARM公司简介

2.1.2 ARM处理器体系结构

2.1.3 Linux与ARM处理器

2.2 ARM指令集

2.2.1 ARM微处理器的指令集概述

2.2.2 ARM指令寻址方式

2.2.3 Thumb指令

2.2.4 Thumb-2指令

2.2.5 ThumbEE指令

2.3 典型ARM处理器简介

2.3.1 Atmel AT91RM9200

2.3.2 Samsung S3C2410

2.3.3 TI OMAP5 系列

2.3.4 Freescale i.Max6

2.3.5 Intel Xscale PXA系列

2.3.6 Cortex-A系列的Exynos4412

2.4 华清远见 FS4412开发板

2.4.1 华清远见 FS4412开发板介绍

2.4.2 众多的开发板供应商

2.5 习题

第3章 Linux编程环境

3.1 Linux常用工具

3.1.1 Shell简介

3.1.2 常用的Shell命令

3.1.3 编写Shell脚本

3.1.4 正则表达式

3.1.5 程序编辑器

3.2 Makefile

3.2.1 GNU make

3.2.2 Makefile规则语法

3.2.3 Makefile文件中变量的使用

3.3 二进制代码工具的使用

3.3.1 GNU Binutils工具介绍

3.3.2 Binutils工具软件使用

3.4 GCC编译器的使用

3.4.1 GCC编译器简介

3.4.2 GCC编译选项解析

3.5 调试器GDB的使用技巧

3.5.1 GDB调试器介绍

3.5.2 GDB调试命令

3.6 Linux编程库

3.6.1 Linux编程库介绍

3.6.2 Linux系统调用

3.6.3 Linux线程库

3.7 习题

第4章 交叉开发环境

4.1 交叉开发环境介绍

4.1.1 交叉开发概念模型

4.1.2 目标板与主机之间的连接

4.1.3 文件传输

4.1.4 网络文件系统

4.2 安装交叉编译工具

4.2.1 获取交叉开发工具链

4.2.2 主机安装工具链

4.3 主机开发环境配置

4.3.1 主机环境配置

4.3.2 串口控制台工具

4.3.3 TFTP服务

4.3.4 NFS服务

4.4 启动目标板

4.4.1 系统引导过程

4.4.2 内核解压启动

4.4.3 挂接根文件系统

4.5 应用程序的远程交叉调试

4.5.1 交叉调试的模型

4.5.2 交叉调试程序实例

4.6 实例:FS4412嵌入式开发环境搭建

4.6.1 开发主机安装

4.6.2 联调测试

4.7 习题

第5章 Bootloader

5.1 Bootloader 简介

5.1.1 Bootloader介绍

5.1.2 Bootloader的启动

5.1.3 Bootloader的种类

5.2 U-Boot简介

5.2.1 U-Boot介绍

5.2.2 U-Boot的常用命令

5.2.3 U-Boot的环境变量

5.2.4 U-Boot源码结构

5.3 U-Boot源码分析

5.3.1 配置编译

5.3.2 U-Boot启动过程

5.3.3 U-Boot与内核的关系

5.4 U-Boot移植实例

5.4.1 收集移植相关资源

5.4.2 选择U-Boot 源码版本

5.4.3 u-Boot 配置编译

5.4.4 串口能输出信息

5.4.5 移植网卡实现Ping和TFTP的功能

5.5 习题

第6章 配置编译内核

6.1 Linux内核特点

6.1.1 Linux内核版本介绍

6.1.2 Linux内核特点

6.2 配置编译内核源码

6.2.1 内核源码的下载方法和结构

6.2.2 内核配置系统

6.2.3 Kbuild Makefiles

6.2.4 内核编译

6.2.5 内核编译结果

6.3 内核配置选项

6.3.1 使用配置菜单

6.3.2 基本配置选项

6.3.3 驱动程序配置选项

6.4 习题

第7章 内核移植基础

7.1 移植内核源码

7.1.1 移植的基本工作

7.1.2 移植后的工作

7.2 Linux设备树

7.2.1 Linux设备树的由来

7.2.2 Linux设备树的目的

7.2.3 Linux设备树的使用

7.3 Linux内核启动过程分析

7.3.1 内核启动流程介绍

7.3.2 内核启动加载程序

7.3.3 内核主体程序入口

7.3.4 Linux系统初始化

7.3.5 初始化驱动模型

7.3.6 挂载根文件系统

7.4 习题

第8章 内核移植实例

8.1 基本内核移植

8.2 网卡驱动移植

8.2.1 网卡原理图分析

8.2.2 网卡驱动移植

8.2.3 以NFS挂载根文件系统

8.3 SD/eMMC驱动移植

8.4 USB主机控制器驱动移植

8.5 LCD驱动移植

8.6 习题

第9章 内核调试技术

9.1 内核调试方法

9.1.1 内核调试介绍

9.1.2 学会分析内核源程序

9.1.3 调试方法介绍

9.2 内核打印函数

9.2.1 内核映像解压前的串口输出函数

9.2.2 内核映像解压后的串口输出函数

9.2.3 printk

9.3 获取内核信息

9.3.1 系统请求键

9.3.2 通过/proc接口

9.3.3 通过/sys接口

9.4 处理出错信息

9.4.1 oops信息

9.4.2 panic

9.4.3 通过ioctl方法

9.5 内核源代码调试

9.6 习题

第10章 制作Linux根文件系统

10.1 根文件系统目录结构

10.2 init系统初始化过程

10.2.1 inittab文件

10.2.2 System V init启动过程

10.2.3 Busybox init启动过程分析

10.3 制作根文件系统

10.3.1 配置并编译Busybox

10.3.2 添加共享库文件和内核模块

10.3.3 添加其他目录和文件

10.4 固化根文件系统

10.4.1 制作image格式的initrd根文件系统镜像

10.4.2 固化ext2格式的根文件系统

10.5 习题

第11章 Qt移植

11.1 Qt源码配置、编译及安装

11.2 在根文件系统中添加Qt

11.3 安装Qt集成开发环境

11.4 添加ARM平台的构建环境

11.5 编写并运行Qt测试程序

11.6 习题

参考文献

附录 习题答案



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3