-
内容大纲
本书基于典型的ARM处理器和Linux嵌入式系统讲解嵌入式系统基本原理、软件架构和应用设计等相关知识。基于长期的嵌入式系统开发和教学经验,作者从嵌入式系统研发初学者角度出发,以掌握嵌入式系统设计需要的基础知识、软件架构、设计方法等为目标,将嵌入式系统的基础与原理、软件架构、实践编程方法和嵌入式系统实际应用开发结合起来,形成一套完整的嵌入式系统原理、设计与开发的教学内容。本书结构合理、层次清晰,易于理解和学习,主要内容包括:嵌入式系统基础,Linux操作系统基础与内核,Linux驱动程序结构、开发与典型驱动程序开发实例,Linux系统移植与应用程序开发实例等。
本书可供高等学校计算机、电子工程、自动化与控制类等专业的本科高年级学生作为教学参考书使用,也可供人工智能、机器人、智能网联汽车等相关专业方向的硕士研究生参考。 -
作者介绍
-
目录
第1章 嵌入式系统基础
1.1 嵌入式系统概述
1.1.1 嵌入式系统基本概念
1.1.2 嵌入式系统的分类
1.1.3 嵌入式系统的现状和趋势
1.2 嵌入式系统基础知识
1.2.1 嵌入式系统基本组成
1.2.2 嵌入式处理器概述
1.2.3 嵌入式操作系统概述
1.3 嵌入式可执行代码生成流程与代码结构
1.3.1 嵌入式可执行代码生成流程
1.3.2 嵌入式软件代码结构
1.4 嵌入式软件交叉开发模式
1.4.1 交叉开发模式概述
1.4.2 调试通信端口与协议
作业
第2章 ARM处理器体系架构
2.1 嵌入式处理器基础
2.1.1 处理器的结构
2.1.2 处理器指令执行过程
2.1.3 微处理器的体系结构
2.2 ARM体系架构与编程模型
2.2.1 ARM处理器体系架构概述
2.2.2 ARM编程模型
2.3 ARM处理器内存管理
2.3.1 内存映射
2.3.2 集成外设寄存器访问方法
2.4 ARM异常处理
2.4.1 ARM处理器异常类型
2.4.2 ARM处理器对异常的响应
2.4.3 ARM系统的中断编程机制
作业
第3章 Linux操作系统基础知识
3.1 操作系统基础知识
3.1.1 操作系统主要功能
3.1.2 嵌入式操作系统基本概念
3.2 嵌入式Linux简介
3.2.1 Linux内核版本与分类
3.2.2 Linux系统结构
3.2.3 嵌入式Linux特点
3.3 Linux文件系统
3.3.1 Linux文件系统基本作用
3.3.2 Linux常见文件系统简介
3.3.3 Linux文件系统框架
3.3.4 Linux文件操作函数
3.4 Linux模块机制
3.4.1 Linux模块概述
3.4.2 Linux模块代码结构
3.4.3 模块加载
3.4.4 模块卸载
作业
第4章 ARM体系结构的Linux内核
4.1 ARM-Linux内核简介
4.1.1 ARM-Linux内核和普通Linux内核的区别
4.1.2 ARM-Linux代码结构与内核组成
4.2 ARM-Linux进程管理与调度
4.2.1 进程的表示和生命周期
4.2.2 Linux进程创建、执行和销毁
4.2.3 Linux进程调度
4.3 ARM-Linux内存管理
4.3.1 内存管理基本概念
4.3.2 ARM-Linux存储机制
4.3.3 虚拟内存管理
4.4 ARM-Linux虚拟文件系统
4.4.1 虚拟文件系统介绍
4.4.2 虚拟文件系统数据结构
4.4.3 基于虚拟文件系统的文件I/O操作
4.5 ARM-Linux进程间通信
4.5.1 进程间通信的目的
4.5.2 进程间通信的方式
作业
第5章 Linux设备驱动程序结构
5.1 Linux设备驱动程序简介
5.1.1 Linux设备分类
5.1.2 设备文件与设备号
5.1.3 Linux设备驱动程序代码分布与特点
5.2 Linux内核设备模型
5.2.1 设备模型建立的目的
5.2.2 设备拓扑结构
5.2.3 设备模型
5.3 Linux设备驱动程序结构
5.3.1 Linux设备驱动程序分层思想
5.3.2 Linux总线设备驱动程序注册与注销
5.3.3 设备打开与关闭
5.3.4 设备操作函数
5.3.5 设备中断与轮询处理
5.4 platform总线与设备管理
5.4.1 platform总线的定义
5.4.2 platform总线设备重要数据结构与函数
5.4.3 platform总线设备驱动程序实例
5.5 设备树
5.5.1 设备树的基本概念及作用
5.5.2 DTS、DTB和DTC
5.5.3 DTS语法
5.5.4 设备与驱动程序的匹配
作业
第6章 字符设备驱动程序与应用实例
6.1 字符设备驱动程序结构分析
6.1.1 字符设备驱动程序框架
6.1.2 字符设备驱动程序组成
6.2 GPIO设备驱动程序实例—LED驱动程序
6.2.1 寄存器地址映射
6.2.2 修改设备树文件
6.2.3 LED驱动程序实例分析
6.3 基于platform总线的UART驱动程序实例
6.3.1 UART工作原理
6.3.2 LinuxUART驱动程序结构分析
6.3.3 I.MX6UUART驱动程序分析
作业
第7章 块设备驱动程序与应用实例
7.1 块设备驱动程序框架
7.1.1 块设备数据交换方式
7.1.2 块设备读写请求
7.2 块设备驱动程序数据结构与函数
7.2.1 gendisk数据结构与操作
7.2.2 request数据结构与操作
7.2.3 request_queue数据结构与操作
7.2.4 bio数据结构与操作
7.3 块设备管理与操作
7.3.1 块设备的注册与注销
7.3.2 块设备初始化与卸载
7.3.3 块设备操作
7.4 RAM驱动程序实例
7.4.1 SDRAM简介
7.4.2 基于请求队列的RAM驱动程序实例
作业
第8章 网络设备驱动程序与应用实例
8.1 Linux网络设备驱动程序框架
8.1.1 网络设备驱动程序框架
8.1.2 网络设备驱动程序重要数据结构
8.1.3 网络设备管理
8.1.4 网络设备数据收发
8.2 I.MX6ULL以太网驱动程序实例分析
8.2.1 I.MX6ULL网络外设设备树
8.2.2 I.MX6ULL网络驱动程序源码简析
8.2.3 fec_netdev_ops操作集
作业
第9章 Linux移植与系统启动
9.1 Linux系统启动与U-Boot
9.1.1 Bootloader的选择
9.1.2 U-Boot编译流程分析
9.1.3 I.MX6 U-Boot启动流程
9.2 Linux内核裁剪
9.2.1 内核配置过程分析
9.2.2 内核编译过程分析
9.2.3 内核启动过程分析
9.2.4 内核移植过程
9.3 Linux根文件系统移植
9.3.1 根文件系统概述
9.3.2 编译Busybox构建根文件系统
9.3.3 根文件系统的启动过程分析
作业
第10章 Linux应用编程与实例
10.1 程序、进程与线程
10.1.1 程序和进程
10.1.2 进程和线程
10.2 线程管理
10.2.1 线程创建
10.2.2 线程管理
10.2.3 一个实例
10.3 C-V2X OBU应用编程实例
10.3.1 C-V2X OBU功能分析与软件架构
10.3.2 应用程序设计
10.3.3 V2X消息接收线程
10.3.4 防撞预警线程
10.3.5 V2N通信线程
作业
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...