高等院校嵌入式人才培养规划教材

嵌入式Linux操作系统

分享 推荐 0 收藏 4 阅读 4.7K
华清远见嵌入式学院 , 孙天泽 (主编) 978-7-115-21108-8

关于本书的内容有任何问题,请联系 左仲海

1、教材考虑了高职学生的专业基础知识水平和学校教学实际要求,内容上进行了压缩,按照学校开课方式设置知识模块,增加教学实例,并提供相应的素材。
¥28.00 ¥23.80 (8.5 折)
立即购买 申请样书
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要

  本书介绍了操作系统的几大组成部分,并以Linux操作系统为例说明了各功能的实现。
  全书共分10章,内容包括嵌入式Linux操作系统概念,Linux系统安装与使用,操作系统的存储管理、进程管理、文件管理、设备管理等几个核心模块,其中涉及对Linux内核代码的部分分析介绍。在本书最后一章,综合介绍了开发嵌入式Linux系统的全过程,包括建立开发环境、编译Bootloader、编译内核、部署根文件系统等全过程。
  本书可作为高职高专院校“嵌入式操作系统”课程的教材,也可供嵌入式Linux爱好者参考使用。

目录

目 录

第 1章 嵌入式Linux操作系统简介 1
1.1 操作系统 1
1.2 嵌入式系统 3
1.3 嵌入式操作系统 3
1.4 嵌入式Linux基础 5
1.4.1 Linux发展概述 5
1.4.2 Linux作为嵌入式操作系统的优势 6
1.4.3 Linux发行版本 7
1.4.4 如何学习Linux 7
1.5 Linux安装 8
1.5.1 基本概念 8
1.5.2 硬件需求 9
1.5.3 安装准备 10
1.5.4 安装过程 10
1.6 Linux文件及文件系统 16
1.6.1 文件类型及文件属性 16
1.6.2 文件系统类型介绍 18
1.6.3 Linux目录结构 18
思考题 20

第 2章 Linux操作系统使用与系统配置 21
2.1 Linux基本命令 21
2.1.1 用户系统相关命令 22
2.1.2 文件目录相关命令 27
2.1.3 压缩打包相关命令 36
2.1.4 比较合并文件相关命令 38
2.1.5 网络相关命令 42
2.2 Linux系统服务 46
2.2.1 独立运行的服务 46
2.2.2 xinetd设定的服务 47
2.2.3 设定服务命令的常用方法 47
思考题 48

第3章 嵌入式Linux编程环境 49
3.1 Linux编辑器vi的使用 49
3.1.1 vi的模式 49
3.1.2 vi的基本流程 50
3.1.3 vi各模式的功能键 51
3.2 gcc编译器 52
3.2.1 gcc编译流程解析 52
3.2.2 gcc编译选项分析 54
3.3 gdb调试器 57
3.3.1 gdb使用流程 57
3.3.2 gdb基本命令 60
3.4 Make工程管理器 63
3.4.1 Makefile基本结构 64
3.4.2 Makefile变量 64
3.4.3 Makefile规则 67
3.4.4 Make管理器的使用 68
3.5 使用autotools 68
3.5.1 autotools使用流程 69
3.5.2 使用autotools所生成的Makefile 72
思考题 73

第4章 存储管理 74
4.1 进程虚存空间的管理 74
4.1.1 进程的虚存区域 75
4.1.2 虚存空间的映射和虚存区域的建立 77
4.2 内存空间/地址类型 78
4.3 分页机制与MMU 79
4.4 高速缓存 81
4.5 内存区域zone 82
4.6 获得内存页面 85
4.7 slab分配器 89
4.8 kmalloc 92
4.9 高端内存 93
4.10 虚拟内存的申请和释放 94
思考题 96

第5章 操作系统进程 97
5.1 进程的基本概念 97
5.2 Linux系统进程 98
5.2.1 Linux进程基础 98
5.2.2 进程描述符 100
5.2.3 进程的状态与转换 102
5.2.4 进程队列指针 105
5.2.5 进程队列的全局变量 107
5.3 Linux进程的创建 108
5.4 Linux进程相关的系统调用 111
5.4.1 execve()系统调用 112
5.4.2 wait()系统调用 116
5.4.3 exit()系统调用 116
5.5 Linux的进程调度 117
5.6 实时Linux 118
思考题 119

第6章 进程间通信 121
6.1 什么是进程间通信 121
6.2 互斥与同步 122
6.3 信号量 123
6.3.1 什么是信号量 123
6.3.2 信号量的内核实现 124
6.3.3 信号量的使用 128
6.4 共享内存 130
6.4.1 什么是共享内存 130
6.4.2 共享内存的内核实现 131
6.4.3 共享内存的使用 131
6.5 消息队列 134
6.5.1 什么是消息队列 134
6.5.2 消息队列的内核实现 134
6.5.3 消息队列的使用 135
6.6 管道 138
6.6.1 什么是管道 138
6.6.2 管道的内核实现 139
6.6.3 管道的读写规则 140
思考题 141

第7章 中断与系统调用 142
7.1 什么是中断 142
7.2 嵌入式平台硬件中断特点 143
7.3 Linux内核中断机制概述 144
7.4 编写中断处理程序ISR 146
7.4.1 中断处理系统结构 146
7.4.2 注册中断处理函数 147
7.4.3 中断标志flags 149
7.4.4 ISR上下文 149
7.5 Tasklet机制 149
7.6 上半部和下半部 152
7.6.1 上半部和下半部的设计 152
7.6.2 中断处理程序的不可重入性 152
7.7 工作队列 153
7.8 系统调用 154
7.8.1 初始化系统调用 154
7.8.2 system_call函数 156
7.8.3 参数的传递与验证 159
思考题 160

第8章 文件管理 161
8.1 磁盘的物理组织 161
8.2 文件和目录 162
8.2.1 文件的分类 162
8.2.2 目录 163
8.2.3 文件系统 164
8.3 虚拟文件系统 164
8.3.1 虚拟文件系统概述 164
8.3.2 VFS超级块 165
8.3.3 文件控制块 169
8.3.4 VFS的目录项 175
8.3.5 文件对象 177
8.3.6 主要数据结构间的关系 180
8.4 文件系统注册与卸载 181
8.4.1 和文件系统相关的数据结构 181
8.4.2 文件系统类型注册函数 184
8.4.3 挂载文件系统 184
8.4.4 文件系统卸载 185
思考题 185

第9章 设备管理 186
9.1 设备及设备管理的功能 186
9.1.1 设备分类 186
9.1.2 设备管理 187
9.2 I/O内核子系统 187
9.2.1 I/O系统的基本功能 188
9.2.2 I/O空间 188
9.2.3 I/O控制方式 192
9.3 Linux设备驱动程序 193
9.3.1 设备管理 194
9.3.2 Linux字符设备 194
9.3.3 Linux块设备 195
9.3.4 Linux网络接口 196
9.3.5 Linux设备文件 196
9.3.6 Linux设备注册与注销 198
9.3.7 操作I/O端口 199
9.3.8 Linux逻辑I/O与设备驱动程序的接口 200
思考题 204

第 10章 嵌入式Linux的构建 205
10.1 嵌入式开发环境的搭建 205
10.1.1 嵌入式交叉编译环境的搭建 205
10.1.2 超级终端和Minicom配置及使用 207
10.1.3 下载映像到开发板 212
10.1.4 编译嵌入式Linux内核 215
10.1.5 Linux内核目录结构 218
10.1.6 制作文件系统 218
10.2 Bootloader介绍 221
10.2.1 U-Boot概述 224
10.2.2 U-Boot的常用命令 225
10.3 嵌入式Linux根文件系统构建 231
10.3.1 根文件系统目录结构 231
10.3.2 FHS目录结构 232
10.3.3 文件存放规则 235
思考题 235

参考文献 236

读者评论

赶紧抢沙发哦!

我要评论

同系列书

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部