《嵌入式Linux驱动开发教程》[39M]PDF|百度网盘|亲测有效
《嵌入式Linux驱动开发教程》[39M]PDF|百度网盘|亲测有效

嵌入式Linux驱动开发教程 pdf下载

isbn:9787121313592

作者: 华清远见嵌入式学院

出版社 电子工业出版社
出版年 2017-06-01
ISBN 9787121313592
装帧 精装
评分 0.0(豆瓣)
限时特惠 00:00:00
活动结束后恢复原价
纸质书参考价 ¥8
电子版限时价 ¥0.00 省 8 元

选择版本

不满意全额退款
发货失败双倍赔偿
邮箱即时发送

内容简介

本篇主要提供嵌入式Linux驱动开发教程电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com



商品参数

内容介绍

        本书结合大量实例,在基于ARM Cortex-A9四核处理器Exynos4412的硬件教学平台和PC机上,全面详细讲解了Linux设备驱动开发。主要内容包含开发环境的搭建,内核模块,字符设备驱动框架,高级I/O,中断和时间管理,互斥和同步,内存和DMA,Linux设备模型,外设的驱动实例,总线类设备驱动,块设备驱动,网络设备驱动和内核调试技巧。对每一个知识点都有一个对应的典型实例,大多数实例既可以在上面说到的嵌入式平台上运行,也可以在PC机上运行。



内容介绍

作者介绍

华清远见嵌入式培训中心,是国内成立较早、规模较大的专业嵌入式培训机构。为满足快速增长的移动开发领域对Android等主流嵌入式操作系统研发人才的需求,华清远见在多年高端嵌入式专业培训和丰富的企业内训实施经验的基础上,于2004年正式成立华清远见3G学院,学院充分整合行业经验及专业领域的企业合作资源优势,打造出专业、科学的实训体系,帮助合作院校时刻紧跟行业用人需求的新趋势,引导毕业生在知识结构上更好地实现与企业真实需求的对接,从而有效提高其就业竞争优势,顺利进入专业研发领域。欢迎访问华清远见教育集团官方网站:http://www.hqyj.com及3G学院官方网站:http://www.3g-edu.org获取更新资讯。




目录

目    录

第1章  概述    1

第2章  内核模块    6

2.1  第一个内核模块程序    7

2.2  内核模块的相关工具    10

2.3  内核模块一般的形式    11

2.4  将多个源文件编译生成一个内核模块    13

2.5  内核模块参数    15

2.6  内核模块依赖    17

2.7  关于内核模块的进一步讨论    20

2.8  习题    21

第3章  字符设备驱动    23

3.1  字符设备驱动基础    24

3.2  字符设备驱动框架    30

3.3  虚拟串口设备    35

3.4  虚拟串口设备驱动    35

3.5  一个驱动支持多个设备    39

3.6  习题    45

第4章  高级I/O操作    46

4.1  ioctl设备操作    47

4.2  proc文件操作    56

4.3  非阻塞型I/O    58

4.4  阻塞型I/O    60

4.5  I/O多路复用    65

4.6  异步I/O    69

4.7  几种I/O模型总结    73

4.8  异步通知    74

4.9  mmap设备文件操作    83

4.10  定位操作    88

4.11  习题    90

第5章  中断和时间管理    92

5.1  中断进入过程    93

5.2  驱动中的中断处理    98

5.3  中断下半部    101

5.3.1  软中断    102

5.3.2  tasklet    104

5.3.3  工作队列    106

5.4  延时控制    108

5.5  定时操作    109

5.5.1  低分辨率定时器    109

5.5.2  高分辨率定时器    112

5.6 习题    114

第6章  互斥和同步    116

6.1  一种典型的竞态    117

6.2  内核中的并发    117

6.3  中断屏蔽    118

6.4  原子变量    119

6.5  自旋锁    120

6.6  读写锁    122

6.7  顺序锁    123

6.8  信号量    125

6.9  读写信号量    127

6.10  互斥量    127

6.11  RCU机制    128

6.12  虚拟串口驱动加入互斥    130

6.13  完成量    134

6.14  习题    135

第7章  内存和DMA    137

7.1  内存组织    138

7.2  按页分配内存    139

7.3  slab分配器    142

7.4  不连续内存页分配    144

7.5  per-CPU变量    145

7.6  动态内存实例    146

7.7  I/O内存    147

7.8  DMA原理及映射    155

7.8.1  DMA工作原理    155

7.8.2  DMA映射    157

7.9  DMA统一编程接口    160

7.10  习题    164

第8章  Linux设备模型    166

8.1  设备模型基础    167

8.2  总线、设备和驱动    171

8.3  平台设备及其驱动    176

8.3.1  平台设备    176

8.3.2  平台驱动    178

8.3.3  平台驱动简单实例    179

8.3.4  电源管理    182

8.3.5  udev和驱动的自动加载    183

8.3.6  使用平台设备的LED驱动    184

8.3.7  自动创建设备节点    190

8.4  Linux设备树    193

8.4.1  Linux设备树的由来    193

8.4.2  Linux设备树的目的    194

8.4.3  Linux设备树的使用    195

8.4.4  使用设备树的LED驱动    202

8.5  习题    204

第9章  字符设备驱动实例    205

9.1  LED驱动    206

9.2  基于中断的简单按键驱动    209

9.3  基于输入子系统的按键驱动    213

9.4  ADC驱动    222

9.5  PWM驱动    231

9.6  RTC驱动    239

第10章  总线类设备驱动    243

10.1  I2C设备驱动    244

10.1.1  I2C协议简介    244

10.1.2  Linux I2C驱动    246

10.1.3  I2C设备驱动实例    251

10.2  SPI设备驱动    258

10.2.1  SPI协议简介    258

10.2.2  Linux SPI驱动    259

10.2.3  SPI设备驱动范例    264

10.3  USB设备驱动    268

10.3.1  USB协议简介    268

10.3.2  Linux USB驱动    271

10.3.3  USB设备驱动实例    274

10.4  PCI设备驱动    283

10.4.1  PCI协议简介    283

10.4.2  Linux PCI驱动    287

10.4.3  PCI设备驱动实例    288

10.5  习题    296

第11章  块设备驱动    298

11.1  磁盘结构    299

11.2  块设备内核组件    300

11.3  块设备驱动核心数据结构和函数    301

11.4  块设备驱动实例    308

11.5  习题    316

第12章  网络设备驱动    317

12.1  网络层次结构    318

12.2  网络设备驱动核心数据结构和函数    319

12.3  网络设备驱动实例    327

12.4  DM9000网络设备驱动代码分析    333

12.5  NAPI    340

12.6  习题    343

 

第13章  内核调试技术    344

13.1  内核调试方法    345

13.1.1  内核调试概述    345

13.1.2  学会分析内核源程序    346

13.1.3  调试方法介绍    346

13.2  内核打印函数    350

13.2.1  内核镜像解压前的串口输出函数    350

13.2.2  内核镜像解压后的串口输出函数    352

13.2.3  内核打印函数    353

13.3  获取内核信息    357

13.3.1  系统请求键    357

13.3.2  通过/proc接口    358

13.3.3  通过/sys接口    359

13.4  处理出错信息    362

13.4.1  oops信息    362

13.4.2  panic    364

13.4.3  通过ioctl方法    366

13.5  内核源码调试    367

13.6  习题    369

第14章  搭建开发环境    370

14.1  准备Linux开发主机    371

14.2  安装串口相关软件    375

14.2.1  安装串口驱动    375

14.2.2  安装串口终端软件PuTTY    376

14.2.3  安装串口终端软件minicom    377

14.3  安装TFTP和NFS服务器    379

14.4  准备Linux内核源码    381

14.5  在目标板上运行Linux系统    382

14.6  源码浏览及编辑器环境    386

习题答案    388

参考文献    389