图书介绍

基于项目驱动的嵌入式Linux应用设计开发PDF|Epub|txt|kindle电子书版本网盘下载

基于项目驱动的嵌入式Linux应用设计开发
  • 刘志强主编;王晓强,庄旭菲,李文静副主编 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302435624
  • 出版时间:2016
  • 标注页数:441页
  • 文件大小:74MB
  • 文件页数:454页
  • 主题词:Linux操作系统-程序设计-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

基于项目驱动的嵌入式Linux应用设计开发PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 嵌入式系统概述及项目分析1

1.1 嵌入式Linux系统概述1

1.1.1 嵌入式Linux简介1

1.1.2 嵌入式系统中使用Linux的优势1

1.2 农业信息采集控制系统总体分析设计2

1.2.1 农业信息采集控制系统介绍2

1.2.2 农业信息采集控制系统硬件设计3

1.2.3 农业信息采集控制系统软件设计9

习题111

第2章 嵌入式Linux开发环境12

2.1 项目目标12

2.2 Linux Shell与常用命令12

2.2.1 Linux Shell简介12

2.2.2 Linux常用命令与使用14

2.3 Linux文本编辑器vi37

2.3.1 vi编辑器简介37

2.3.2 vi的操作模式38

2.3.3 命令模式命令39

2.3.4 底行模式命令40

2.4 Shell脚本编程41

2.4.1 Shell脚本的建立与执行41

2.4.2 变量41

2.4.3 命令的执行顺序44

2.4.4 命令替换45

2.4.5 算术运算45

2.4.6 Shell特殊字符46

2.4.7 位置参数47

2.4.8 条件测试48

2.4.9 控制流结构50

2.5 嵌入式Linux开发工具56

2.5.1 编译工具gcc56

2.5.2 工程管理Makefile62

2.5.3 调试工具gdb66

2.5.4 交叉编译工具链70

2.6 嵌入式Linux开发环境搭建71

2.6.1 安装Linux操作系统71

2.6.2 超级终端minicom89

2.6.3 网络文件系统NFS90

2.6.4 简单文件传输协议TFTP92

2.6.5 安装交叉编译工具94

习题296

第3章 嵌入式Linux系统移植97

3.1 项目目标97

3.2 Bootloader移植97

3.2.1 Bootloader简介97

3.2.2 Bootloader启动流程98

3.2.3 Bootloader的工作模式98

3.2.4 常用Bootloader介绍99

3.2.5 U-Boot工程简介100

3.2.6 U-Boot源码结构100

3.2.7 U-Boot的编译101

3.2.8 U-Boot的移植104

3.2.9 U-Boot的使用112

3.3 嵌入式Linux内核移植113

3.3.1 Linux内核结构113

3.3.2 Linux内核配置116

3.3.3 嵌入式Linux内核移植123

3.4 嵌入式Linux文件系统移植136

3.4.1 Linux文件系统介绍136

3.4.2 常见的嵌入式文件系统138

3.4.3 嵌入式系统存储设备及其管理机制140

3.4.4 Busybox141

3.4.5 嵌入式Linux文件系统移植142

习题3149

第4章 嵌入式Linux驱动开发150

4.1 项目目标150

4.2 Linux设备驱动程序概述150

4.2.1 驱动程序介绍150

4.2.2 内核态和用户态151

4.2.3 设备文件151

4.3 模块的构造与运行153

4.3.1 Linux的模块化机制153

4.3.2 模块操作相关命令153

4.3.3 内核模块的程序结构155

4.3.4 内核模块编译和运行155

4.4 内核调试技术157

4.4.1 打印调试157

4.4.2 查询调试158

4.4.3 使用strace命令进行调试158

4.5 字符设备驱动160

4.5.1 确定设备号160

4.5.2 字符设备的注册与注销161

4.5.3 cdev结构体163

4.5.4 创建字符设备节点164

4.5.5 设备驱动程序接口165

4.5.6 交互数据169

4.5.7 一个简单的字符设备驱动实例169

4.5.8 设备I/O端口和I/O内存的访问175

4.6 项目驱动开发实例177

4.6.1 LED设备驱动开发177

4.6.2 矩阵键盘驱动开发183

4.6.3 温湿度传感器驱动开发192

4.6.4 大气压力传感器应用程序202

4.6.5 直流电机驱动开发206

4.6.6 继电器开关驱动开发212

习题4216

第5章 嵌入式Linux文件编程217

5.1 项目目标217

5.2 文件编程概述217

5.2.1 文件描述符217

5.2.2 系统调用217

5.2.3 应用程序编程接口218

5.3 基于文件描述符的文件I/O操作218

5.3.1 文件的创建、打开和关闭218

5.3.2 文件的读写操作222

5.3.3 文件定位225

5.3.4 设备控制接口函数ioctl227

5.4 嵌入式Linux串口应用编程228

5.4.1 串口概述228

5.4.2 串口属性设置230

5.4.3 串口的使用240

5.5 农业信息采集控制系统GPS通信242

5.5.1 GPS概述242

5.5.2 GPS通信实现243

习题5249

第6章 嵌入式Linux时间编程250

6.1 项目目标250

6.2 时间类型250

6.3 常用时间函数251

6.3.1 返回时间函数251

6.3.2 时间转换函数251

6.3.3 时间格式化函数252

6.3.4 获取精确时间函数253

6.4 农业信息采集控制系统中时间的应用255

习题6255

第7章 进程控制程序设计256

7.1 项目目标256

7.2 进程控制概述256

7.2.1 进程及相关概念256

7.2.2 进程控制块和标识符257

7.2.3 进程调度258

7.2.4 进程同步互斥258

7.2.5 Linux下的进程管理常用命令259

7.3 Linux进程控制编程261

7.3.1 获取进程ID261

7.3.2 进程的创建261

7.3.3 进程终止264

7.3.4 进程等待265

7.3.5 exec函数族268

7.4 Linux守护进程270

7.4.1 守护进程的编写271

7.4.2 守护进程实例272

7.5 农业信息采集控制系统主程序设计273

7.5.1 农业信息采集控制系统主程序流程273

7.5.2 农业信息采集控制系统主程序274

习题7277

第8章 进程间通信278

8.1 项目目标278

8.2 进程间通信概述278

8.3 管道通信279

8.3.1 无名管道279

8.3.2 命名管道282

8.4 信号通信286

8.4.1 信号的定义286

8.4.2 信号来源287

8.4.3 信号的种类287

8.4.4 信号的处理288

8.4.5 信号的安装288

8.4.6 信号发送293

8.4.7 信号通信总结299

8.5 信号量通信300

8.5.1 信号量概述300

8.5.2 信号量的使用300

8.5.3 信号量控制函数301

8.5.4 信号量应用举例304

8.6 共享内存309

8.6.1 共享内存概述309

8.6.2 共享内存的操作309

8.6.3 共享内存应用311

8.7 消息队列315

8.7.1 消息队列概述315

8.7.2 消息队列操作315

8.8 农业信息采集控制系统中进程间通信的应用321

8.8.1 信号通信在农业信息采集系统中的应用321

8.8.2 管道在农业信息采集系统中的应用322

习题8324

第9章 多线程编程325

9.1 项目目标325

9.2 Linux多线程概述325

9.3 Linux多线程编程326

9.3.1 Linux线程的基本函数327

9.3.2 多线程实例分析328

9.3.3 修改线程的属性330

9.4 线程的并发访问333

9.4.1 互斥锁333

9.4.2 信号量线程控制335

9.5 农业信息采集控制系统多线程应用339

习题9341

第10章 嵌入式Linux网络编程343

10.1 项目目标343

10.2 TCP/IP概述343

10.2.1 OSI网络模型343

10.2.2 TCP/IP概述346

10.3 Linux网络编程概述356

10.3.1 套接字基础356

10.3.2 网络字节顺序转换358

10.3.3 多字节数据处理360

10.3.4 IP地址格式转换362

10.3.5 端口364

10.4 TCP socket编程365

10.4.1 常用函数介绍365

10.4.2 TCP网络编程流程373

10.5 UDP socket编程375

10.5.1 UDP socket编程主要函数376

10.5.2 UDP socket编程流程378

10.6 农业信息采集控制系统数据上传的实现379

10.6.1 基于TCP协议的农业信息采集控制系统数据上传379

10.6.2 基于UDP协议的农业信息采集控制系统数据上传386

习题10389

第11章 嵌入式GUI程序开发390

11.1 项目目标390

11.2 Qt编程基础390

11.2.1 Qt对象模型390

11.2.2 事件系统397

11.2.3 一个完整的Qt程序405

11.3 Qt/Embedded环境配置407

11.3.1 获得源码408

11.3.2 编译Qt-X11环境408

11.3.3 安装Qt/Embedded环境409

11.4 Qt Designer介绍411

11.5 农业信息采集控制系统设计415

11.5.1 窗口部件415

11.5.2 布局管理418

11.5.3 农业信息采集控制系统终端GUI设计420

11.5.4 农业信息采集控制系统GUI显示与控制的实现421

习题11426

附录A 农业信息采集控制系统源程序428

参考文献441

热门推荐