当前位置: 首页 > 原创图书 >从实践中学嵌入式Linux应用程序开发(第2版)

从实践中学嵌入式Linux应用程序开发(第2版)
  • 图书名称 :    从实践中学嵌入式Linux应用程序开发(第2版)
  • 作       者 :    苗德行 冯建 刘洪涛 潘启勇
  • 出版单位 :    电子工业出版社
  • 丛书名称 :    高等院校嵌入式人才培养规划教材
  • 全书章节 :    共9章
  • 出版日期 :    2015年7月
编辑推荐

本书可作为大学院校电子、通信、计算机、自动化等专业的嵌入式Linux开发课程的教材,也可供嵌入式开发人员参考。学习本书应具有Linux C语言编程和Java编程的基本知识。

图书简介

      《从实践中学嵌入式Linux应用程序开发(第2版)》结合大量实例,讲解了嵌入式Linux应用程序设计各个方面的基本方法及必要的核心概念。主要内容包括搭建嵌入式Linux开发环境、嵌入式文件I/O编程、嵌入式Linux多任务编程、嵌入式Linux进程间通信、嵌入式Linux多线程编程、嵌入式Linux网络编程、嵌入式Linux设备驱动编程、Android应用编程、Android播放器项目设计等。重视应用是贯穿全书的最大特点,在各章和全书结尾分别设置了在项目实践中常见或类似的应用实例。

图书目录

第1章 搭建嵌入式Linux开发环境 1
1.1 构建嵌入式Linux交叉开发环境 2
1.1.1 搭建嵌入式交叉编译环境 2
1.1.2 配置主机交叉开发环境 6
1.2 Bootloader 10
1.2.1 Bootloader的种类 10
1.2.2 U-Boot编译与使用 12
1.2.3 U-Boot移植 24
1.3 Linux内核与移植 27
1.3.1 Linux内核结构 28
1.3.2 Linux内核配置与编译 29
1.3.3 Linux内核移植的简介 32
1.4 嵌入式文件系统构建 33
1.5 本章小结 37
1.6 本章习题 37
第2章 嵌入式文件I/O编程 38
2.1 Linux系统调用及用户编程接口(API) 39
2.1.1 Linux系统调用 39
2.1.2 用户编程接口(API) 39
2.1.3 系统命令 40
2.2 Linux文件I/O系统概述 40
2.2.1 虚拟文件系统(VFS) 40
2.2.2 Linux中的文件及文件描述符 41
2.3 底层文件I/O操作 42
2.3.1 基本文件操作 42
2.3.2 文件锁 46
2.3.3 多路复用 51
2.4 嵌入式Linux串口应用编程 57
2.4.1 串口编程基础知识 57
2.4.2 串口配置 58
2.4.3 串口使用 67
2.5 标准I/O编程 70
2.6 实验内容 79
2.6.1 文件读写及上锁 79
2.6.2 多路复用式串口操作 85
2.7 本章小结 89
2.8 本章习题 90
第3章 嵌入式Linux多任务编程 91
3.1 Linux下多任务机制的介绍 92
3.1.1 任务 92
3.1.2 进程 92
3.1.3 线程 98
3.2 进程控制编程 99
3.2.1 进程编程基础 99
3.2.2 Linux守护进程 110
3.2.3 Linux僵尸进程 117
3.3 实验内容 123
3.3.1 编写多进程程序 123
3.3.2 编写守护进程 127
3.4 本章小结 129
3.5 本章习题 130
第4章 嵌入式Linux进程间通信 131
4.1 Linux下进程间通信概述 132
4.2 管道通信 133
4.2.1 管道简介 133
4.2.2 无名管道系统调用 134
4.2.3 标准流管道 137
4.2.4 有名管道(FIFO) 139
4.3 信号通信 142
4.3.1 信号概述 142
4.3.2 信号发送与捕捉 144
4.4 信号量 153
4.4.1 信号量概述 153
4.4.2 信号量编程 154
4.5 共享内存 158
4.6 消息队列 163
4.7 实验内容 168
4.7.1 有名管道通信实验 168
4.7.2 共享内存实验 172
4.8 本章小结 176
4.9 本章习题 177
第5章 嵌入式Linux多线程编程 178
5.1 多线程编程 179
5.1.1 线程基本编程 179
5.1.2 线程之间的同步与互斥 182
5.1.3 线程属性 187
5.1.4 多线程实验 191
5.2 本章小结 196
5.3 本章习题 196
第6章 嵌入式Linux网络编程 197
6.1 TCP/IP协议概述 198
6.1.1 TCP/IP的分层模型 198
6.1.2 TCP/IP分层模型的特点 199
6.1.3 TCP/IP核心协议 200
6.2 网络编程基础 203
6.2.1 套接字(socket)概述 203
6.2.2 地址及顺序处理 204
6.2.3 套接字编程 210
6.2.4 编程实例 215
6.3 网络高级编程 218
6.4 广播与组播 225
6.5 实验内容--NTP协议的客户端实现 231
6.5.1 NTP协议的客户端实现 231
6.5.2 ARP断网攻击实验 238
6.6 本章小结 241
6.7 本章习题 242
第7章 嵌入式Linux设备驱动编程 243
7.1 设备驱动编程基础 244
7.1.1 Linux设备驱动概述 244
7.1.2 Linux内核模块编程 246
7.2 字符设备驱动编程 256
7.2.1 字符设备驱动编写流程 256
7.2.2 重要的数据结构 256
7.2.3 设备驱动程序主要组成 257
7.3 GPIO驱动程序实例 264
7.3.1 GPIO工作原理 264
7.3.2 GPIO驱动程序 266
7.4 按键驱动程序实例 275
7.4.1 Linux设备树 275
7.4.2 中断编程 278
7.4.3 按键工作原理 279
7.4.4 按键驱动程序 280
7.4.5 按键驱动的测试 281
7.5 本章小结 282
7.6 本章习题 282
第8章 Android应用编程 283
8.1 Android发展简史 284
8.2 Android应用开发环境 286
8.2.1 Android体系架构简介 286
8.2.2 搭建Android应用开发环境 287
8.2.3 编写第一个Android应用程序 291
8.3 Android的四大组件和Intent 295
8.3.1 Activity 295
8.3.2 Service 300
8.3.3 BroadcastReceiver 301
8.3.4 ContentProvider 302
8.3.5 Intent 303
8.4 表明Android常用图形界面组件 305
8.4.1 Android中的布局管理器 305
8.4.2 TextView 308
8.4.3 EditText 309
8.4.4 Button 311
8.4.5 ImageButton 313
8.4.6 ImageView 313
8.4.7 ProgressBar/SeekBar 313
8.5 本章小结 317
8.6 本章习题 317
第9章 Android播放器项目设计 318
9.1 简易音乐播放器应用的需求 319
9.2 界面设计 321
9.3 播放器控制和播放功能的实现 323
9.4 项目运行 328
9.5 本章小结 340
9.6 本章习题 340