图书介绍
嵌入式Linux应用开发菜鸟进阶2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- 梁旭辉主编 著
- 出版社: 北京:电子工业
- ISBN:9787121211874
- 出版时间:2013
- 标注页数:286页
- 文件大小:54MB
- 文件页数:299页
- 主题词:Linux操作系统-程序设计
PDF下载
下载说明
嵌入式Linux应用开发菜鸟进阶PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 嵌入式Linux系统简介1
1.1 嵌入式与Linux系统概述1
1.1.1 Linux操作系统及其发展1
1.1.2 Linux发行版本2
1.2 Windows与Linux文件系统的异同4
1.2.1 Linux文件系统类型4
1.2.2 Windows与Linux文件系统的相同点5
1.2.3 Windows与Linux文件系统的不同点5
1.3 Linux文件类型与属性7
1.3.1 Linux文件类型7
1.3.2 Linux文件属性7
1.4 嵌入式Linux常用命令及工具8
1.4.1 Linux常用命令8
1.4.2 嵌入式Linux常用工具9
小结10
第2章 搭建嵌入式Linux学习环境12
2.1 硬件开发平台12
2.1.1 mini2440开发板硬件资源12
2.1.2 外围设备14
2.2 软件开发平台搭建14
2.2.1 tftp服务器与nfs服务器搭建15
2.2.2 交叉编译工具16
2.2.3 uboot的移植17
2.2.4 Linux内核移植18
2.2.5 Linux根文件系统移植19
小结23
第3章 Linux应用程序学习24
3.1 Linux shell脚本24
3.1.1 语法24
3.1.2 变量25
3.1.3 shell脚本语句26
3.1.4 注释27
3.2 Linux下makefile的编写27
3.3 Linux文件编程28
3.3.1 文件与目录29
3.3.2 系统调用30
3.3.3 标准I/O库32
3.4 线程34
3.4.1 线程优点34
3.4.2 线程分类35
3.4.3 线程实现35
3.5 网络编程37
3.5.1 TCP/IP协议37
3.5.2 TCP和UDP38
3.5.3 套接字39
小结40
第4章 嵌入式Linux设备驱动开发基础41
4.1 嵌入式Linux设备驱动的概述41
4.1.1 Linux设备驱动的作用41
4.1.2 Linux设备驱动的分类及特点42
4.2 处理器与储存器42
4.2.1 处理器42
4.2.2 存储器43
4.3 接口45
4.3.1 串口46
4.3.2 I2C46
4.3.3 USB47
4.3.4 以太网接口48
4.4 Linux内核模块49
小结50
第5章 Linux设备驱动之并发与竞态51
5.1 并发及其管理51
5.2 自旋锁52
5.2.1 自旋锁API52
5.2.2 自旋锁基本使用模式53
5.2.3 其他自旋锁函数54
5.2.4 读者/写者自旋锁55
5.2.5 Linux内核自旋锁55
5.3 信号量与互斥体57
5.3.1 信号量57
5.3.2 互斥体62
5.4 原子操作64
5.4.1 原子整数操作64
5.4.2 原子位操作65
5.5 中断屏蔽65
小结66
第6章 Linux设备驱动中的阻塞与非阻塞I/O67
6.1 阻塞与非阻塞I/O67
6.1.1 休眠68
6.1.2 等待队列68
6.1.3 阻塞和非阻塞操作70
6.2 轮询操作70
6.2.1 轮询概述71
6.2.2 Linux应用程序中的轮询编程——select()71
6.2.3 Linux设备驱动中的轮询编程——poll()73
小结75
第7章 Linux设备驱动之时间、延迟及延缓操作76
7.1 Linux内核时间76
7.1.1 处理器特定的寄存器76
7.1.2 延迟操作77
7.2 内核定时器78
7.3 tasklet80
7.4 工作队列82
小结84
第8章 Linux设备驱动之内存分配与I/O访问85
8.1 内存空间与I/O空间85
8.2 内存管理85
8.3 内存分配88
8.3.1 kmalloc与vmalloc88
8.3.2 get_free_page和相关函数89
8.4 设备I/O端口和I/O内存的访问90
8.4.1 I/O寄存器和常规内存90
8.4.2 操作I/O端口(申请,访问,释放)91
8.4.3 操作I/O内存(申请,映射,访问,释放)92
8.4.4 像I/O内存一样访问端口93
8.4.5 ARM体系的I/O操作接口94
8.5 I/O内存的静态映射94
小结96
第9章 Linux设备驱动之中断处理97
9.1 Linux中断处理程序框架97
9.1.1 中断处理过程97
9.1.2 Linux中断处理程序的上半部与下半部机制99
9.2 Linux中断编程100
9.3 中断共享103
9.4 中断驱动的I/O104
小结104
第10章 Linux设备驱动工程开发技术105
10.1 自创建设备文件105
10.2 混杂设备驱动107
10.3 Linux设备模型109
10.3.1 kobject和kset数据结构110
10.3.2 sysfs文件系统113
10.3.3 总线、设备和驱动程序114
10.4 设备驱动分层思想120
小结121
第11章 Linux字符设备驱动122
11.1 字符设备驱动结构122
11.1.1 主、次设备号122
11.1.2 字符设备驱动的重要数据结构124
11.2 字符设备的注册和释放128
11.2.1 字符设备的注册129
11.2.2 字符设备的释放131
11.3 字符设备驱动的一些小技巧131
小结133
第12章 基于内存的简单字符设备134
12.1 简单字符驱动的数据结构134
12.1.1 定义字符设备驱动的设备数据结构134
12.1.2 定义file_operation结构和挂接相应的系统调用函数135
12.2 简单字符驱动设计136
12.2.1 字符设备驱动的加载与卸载137
12.2.2 字符设备驱动的打开与关闭139
12.2.3 字符设备驱动的读写函数140
12.2.4 字符设备驱动的llseek函数141
12.3 应用程序测试142
12.3.1 应用程序设计原理142
12.3.2 程序代码142
12.4 简单字符设备驱动运行效果143
12.4.1 makefile程序的编写143
12.4.2 字符设备驱动运行效果144
小结145
第13章 按键控制LED字符驱动146
13.1 按键和LED设备硬件接口和寄存器146
13.2 按键控制LED驱动原理147
13.3 按键控制LED驱动程序分析148
13.3.1 按键与LED集成在一个驱动中148
13.3.2 按键与LED驱动的实现156
13.4 按键控制LED驱动测试171
13.5 驱动程序的运行效果171
小结173
第14章 基于DS18B20传感器的驱动开发174
14.1 DS18B20温度传感器简介174
14.1.1 温度传感器的工作特点175
14.1.2 DS18B20的外部结构175
14.1.3 DS18B20的内部结构176
14.1.4 DS18B20的应用电路结构178
14.1.5 DS18B20的工作原理178
14.2 DS18B20温度传感器程序设计实现180
14.2.1 复位程序180
14.2.2 写1字节子程序182
14.2.3 读1字节子程序183
14.2.4 确定温度传感器的头文件和相应的数据结构185
14.2.5 确定驱动要实现的功能函数和file operation结构的挂接186
14.2.6 编写加载和卸载函数186
14.2.7 编写要实现的功能函数187
14.3 应用程序设计195
14.4 驱动运行效果197
14.4.1 makefile文件的编写197
14.4.2 应用程序运行效果图197
小结198
第15章 MP3播放器199
15.1 MP3播发器简介199
15.2 按键播放MP3的原理199
15.2.1 MP3播放器系统框架199
15.2.2 MP3音频驱动的移植201
15.3 MP3程序设计203
15.3.1 按键驱动程序设计203
15.3.2 MP3应用程序设计208
15.3.3 最终的程序代码215
15.4 MP3播放器的测试223
小结224
第16章 基于motion的动态图像检测系统开发225
16.1 动态图像检测系统简介225
16.2 系统框图和流程图225
16.2.1 系统框图226
16.2.2 系统设计技术227
16.3 动态监测系统程序分析228
16.3.1 motion动态图像采集系统移植228
16.3.2 温度采集系统231
16.3.3 动态图像控制系统231
16.3.4 远程监控服务系统239
16.3.5 SD卡存储系统248
16.4 系统测试运行效果图248
小结250
第17章 块设备驱动程序251
17.1 字符设备驱动与块设备驱动251
17.2 块设备驱动基本框架252
17.3 块设备在Linux系统中各层的调用关系252
17.4 块设备驱动的重要数据结构253
17.4.1 block_device_operations结构体254
17.4.2 gendisk结构体255
17.4.3 request与request_queue结构体255
17.4.4 块I/O256
17.4.5 块设备中各结构体之间的关系258
17.5 块设备驱动程序分析259
小结261
第18章 基于ramdisk的虚拟磁盘块设备驱动262
18.1 块设备驱动程序设计262
18.2 基于I/O调度器的块设备驱动程序设计262
18.3 没有I/O调度器的块设备驱动程序设计265
小结267
第19章 SD卡块设备驱动268
19.1 SD卡概述268
19.1.1 SD卡简介268
19.1.2 SD卡的引脚269
19.1.3 SD卡的内存组织270
19.2 SD卡寄存器271
19.2.1 CID寄存器271
19.2.2 SD总线协议272
19.2.3 SD卡指令和命令272
19.2.4 块读写操作274
19.3 SD卡设备驱动程序分析275
19.3.1 SD卡驱动程序的重要数据结构276
19.3.2 SD设备驱动分析278
19.3.3 SD卡驱动在mini2440开发板的开发与移植281
19.4 测试SD卡驱动程序283
19.4.1 系统设计思路与步骤283
19.4.2 系统测试结果285
小结286