Linux设备驱动开发
阐释了大量概念,也提供了众多的开发实例,并结合内核源代码进行了详细分析。

作者:[美]约翰·马德奥 著 李强 译

定价:149元

印次:1-1

ISBN:9787302619024

出版日期:2022.12.01

印刷日期:2022.12.09

图书责编:贾小红

图书分类:零售

电子书
在线购买
分享
内容简介
作者简介
前言序言
资源下载
查看详情 查看详情 查看详情

《Linux设备驱动开发》本书详细阐述了与Linux设备驱动开发相关的基本解决方案,主要包括Linux内核概念、regmap API应用、MFD子系统和syscon API、通用时钟框架、ALSA SoC框架、V4L2和视频采集、集成V4L2异步和媒体控制器框架、V4L2 API、Linux内核电源管理、PCI设备驱动、NVMEM框架、看门狗设备驱动、Linux内核调试技巧和**实践等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。 本书详细阐述了与Linux设备驱动开发相关的基本解决方案,主要包括Linux内核概念、regmap API应用、MFD子系统和syscon API、通用时钟框架、ALSA SoC框架、V4L2和视频采集、集成V4L2异步和媒体控制器框架、V4L2 API、Linux内核电源管理、PCI设备驱动、NVMEM框架、看门狗设备驱动、Linux内核调试技巧和**实践等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。

约翰·马德奥现居住在法国巴黎,他是一位嵌入式Linux和内核工程师。他的主要工作包括为物联网、自动化、运输、医疗保健、能源和军事等领域的公司开发设备驱动程序和板级支持包(Board Support Package,BSP)。John是LABCSMART公司的创始人兼首席顾问,该公司可为嵌入式Linux和Linux内核工程提供培训和服务。他是一位开源和嵌入式系统爱好者,始终坚信只有分享知识,我们才能学到更多。

前 言 Linux是世界上发展最快的操作系统之一,在过去的几年里,Linux内核得到了显著的发展,可以支持各种嵌入式设备,其子系统也得到了改进,并增加了许多新功能。 本书提供了有关Linux内核主题的较为全面的讨论(例如,市面图书中通常较少涉及的视频和音频框架,本书也有专门章节进行介绍)。我们将深入研究一些最复杂和最具影响力的Linux内核框架,如PCI、用于SoC的ALSA和Video4Linux2(V4L2),并在此过程中提供了一些专业技巧提示和最佳实践。 除此之外,本书还将讨论如何利用NVMEM和Watchdog(看门狗)等框架,以及如何处理特殊设备类型,如多功能设备(multi-function device,MFD)等。 通读本书之后,相信你能够编写非常实用可靠的设备驱动程序,并将它们与一些最复杂的Linux内核框架集成,包括V4L2和ALSA SoC。 本书读者 本书主要面向嵌入式爱好者和开发人员、Linux系统管理员和内核黑客。无论你是软件开发人员、系统架构师还是制造商(电子爱好者),只要你希望深入了解Linux驱动程序开发,那么本书就适合你。 内容介绍 本书共分为3篇14章,具体内容如下。 第1篇为“用于嵌入式设备驱动程序开发的内核核心框架”,包括第1~4章。 第1章为“嵌入式开发人员需要掌握的Linux内核概念”,详细介绍了内核锁API,Linux内核中的等待、感知和阻塞,工作延迟机制和Linux内核中断管理等。 第2章为“regmap API应用”,简要介绍了regmap及其数据结构、regmap和IRQ管理、链接IR...

目录
荐语
查看详情 查看详情
目    录

第1篇  用于嵌入式设备驱动程序开发的内核核心框架

第1章  嵌入式开发人员需要掌握的Linux内核概念 3

1.1  技术要求 3

1.2  内核锁API和共享对象 3

1.2.1  自旋锁 4

1.2.2  禁用中断与仅禁用抢占 8

1.2.3  互斥锁 8

1.2.4  try-lock方法 11

1.3  Linux内核中的等待、感知和阻塞 13

1.3.1  等待活动完成或状态改变 13

1.3.2  Linux内核等待队列 15

1.4  工作延迟机制 19

1.4.1  softIRQ 20

1.4.2  关于ksoftirqd 24

1.4.3  tasklet 25

1.4.4  工作队列 28

1.4.5  内核共享队列 31

1.4.6  新的工作队列 32

1.4.7  并发管理的工作队列 33

1.5  Linux内核中断管理 37

1.5.1  中断的状态 37

1.5.2  中断处理流程 38

1.5.3  设计中断处理程序 40

1.5.4  中断的标志 42

1.5.5  中断的返回值 44

1.5.6  关于中断的一些注意事项 45

1.5.7  上半部和下半部的概念 46

1.5.8  线程中断处理程序 48

1.5.9  请求一个上下文中断 53

1.5.10  使用工作队列延迟下半部 55

1.5.11  从中断处理程序中锁定 58

1.6  小结 61

第2章  regmap API应用 63

2.1  技术要求 63

2.2  regmap及其数据结... 查看详情

《Linux设备驱动开发》提供了有关Linux内核主题的较为全面的讨论(例如,市面图书中通常较少涉及的视频和音频框架,本书也有专门章节进行介绍)。我们将深入研究一些最复杂和**影响力的Linux内核框架,如PCI、用于SoC的ALSA和Video4Linux2(V4L2),并在此过程中提供了一些专业技巧提示和**实践。 查看详情