基本信息
书名:嵌入式Linux驱动开发教程
定价:69.00元
作者:华清远见嵌入式学院 编著
出版社:电子工业出版社
出版日期:2017-06-01
ISBN:9787121313592
字数:640000
页码:400
版次:1
装帧:平装-胶订
开本:16开
商品重量:
编辑推荐
暂无相关内容
目录
第1章 概述1第2章 内核模块62.1 个内核模块程序72.2 内核模块的相关工具2.3 内核模块一般的形式112.4 将多个源文件编译生成一个内核模块132.5 内核模块参数152.6 内核模块依赖172.7 关于内核模块的进一步讨论202.8 习题21第3章 字符设备驱动233.1 字符设备驱动基础243.2 字符设备驱动框架303.3 虚拟串口设备353.4 虚拟串口设备驱动353.5 一个驱动支持多个设备393.6 习题45第4章 高级I/O操作464.1 ioctl设备操作474.2 proc文件操作564.3 阻塞型I/O584.4 阻塞型I/O604.5 I/O多路复用654.6 异步I/O694.7 几种I/O模型总结734.8 异步通知744.9 mmap设备文件操作834. 定位操作884.11 习题90第5章 中断和时间管理925.1 中断进入过程935.2 驱动中的中断处理985.3 中断下半部15.3.1 软中断25.3.2 tasklet45.3.3 工作队列65.4 延时控制85.5 定时操作95.5.1 低分辨率定时器95.5.2 高分辨率定时器1125.6 习题114第6章 互斥和同步1166.1 一种典型的竞态1176.2 内核中的并发1176.3 中断屏蔽1186.4 原子变量1196.5 自旋锁1206.6 读写锁1226.7 顺序锁1236.8 信号量1256.9 读写信号量1276. 互斥量1276.11 RCU机制1286.12 虚拟串口驱动加入互斥1306.13 完成量1346.14 习题135第7章 内存和DMA1377.1 内存组织1387.2 按页分配内存1397.3 slab分配器1427.4 不连续内存页分配1447.5 per-CPU变量1457.6 动态内存实例1467.7 I/O内存1477.8 DMA原理及映射1557.8.1 DMA工作原理1557.8.2 DMA映射1577.9 DMA统一编程接口1607. 习题164第8章 Linux设备模型1668.1 设备模型基础1678.2 总线、设备和驱动1718.3 平台设备及其驱动1768.3.1 平台设备1768.3.2 平台驱动1788.3.3 平台驱动简单实例1798.3.4 电源管理1828.3.5 udev和驱动的自动加载1838.3.6 使用平台设备的LED驱动1848.3.7 自动创建设备节点1908.4 Linux设备树1938.4.1 Linux设备树的由来1938.4.2 Linux设备树的目的1948.4.3 Linux设备树的使用1958.4.4 使用设备树的LED驱动2028.5 习题204第9章 字符设备驱动实例2059.1 LED驱动2069.2 基于中断的简单按键驱动2099.3 基于输入子系统的按键驱动2139.4 ADC驱动2229.5 PWM驱动2319.6 RTC驱动239第章 总线类设备驱动243.1 I2C设备驱动244.1.1 I2C协议简介244.1.2 Linux I2C驱动246.1.3 I2C设备驱动实例251.2 SPI设备驱动258.2.1 SPI协议简介258.2.2 Linux SPI驱动259.2.3 SPI设备驱动范例264.3 USB设备驱动268.3.1 USB协议简介268.3.2 Linux USB驱动271.3.3 USB设备驱动实例274.4 PCI设备驱动283.4.1 PCI协议简介283.4.2 Linux PCI驱动287.4.3 PCI设备驱动实例288.5 习题296第11章 块设备驱动29811.1 磁盘结构29911.2 块设备内核组件30011.3 块设备驱动核心数据结构和函数30111.4 块设备驱动实例30811.5 习题316第12章 网络设备驱动31712.1 网络层次结构31812.2 网络设备驱动核心数据结构和函数31912.3 网络设备驱动实例32712.4 DM9000网络设备驱动代码分析33312.5 NAPI34012.6 习题343第13章 内核调试技术34413.1 内核调试方法34513.1.1 内核调试概述34513.1.2 学会分析内核源程序34613.1.3 调试方法介绍34613.2 内核打印函数35013.2.1 内核镜像解压前的串口输出函数35013.2.2 内核镜像解压后的串口输出函数35213.2.3 内核打印函数35313.3 获取内核信息35713.3.1 系统请求键35713.3.2 通过/proc接口35813.3.3 通过/sys接口35913.4 处理出错信息36213.4.1 oops信息36213.4.2 panic36413.4.3 通过ioctl方法36613.5 内核源码调试36713.6 习题369第14章 搭建开发环境37014.1 准备Linux开发主机37114.2 安装串口相关软件37514.2.1 安装串口驱动37514.2.2 安装串口终端软件PuTTY37614.2.3 安装串口终端软件minicom37714.3 安装TFTP和NFS服务器37914.4 准备Linux内核源码38114.5 在目标板上运行Linux系统38214.6 源码浏览及编辑器环境386习题答案388参考文献389
内容提要
本书结合大量实例,在基于ARM Cortex-A9四核处理器Exynos4412的硬件教学平台和PC机上,全面详细讲解了Linux设备驱动开发。主要内容含开发环境的搭建,内核模块,字符设备驱动框架,高级I/O,中断和时间管理,互斥和同步,内存和DMA,Linux设备模型,外设的驱动实例,总线类设备驱动,块设备驱动,网络设备驱动和内核调试技巧。对每一个知识点都有一个对应的典型实例,大多数实例既可以在上面说到的嵌入式平台上运行,也可以在PC机上运行。
文摘
暂无相关内容
作者介绍
华清远见嵌入式培训中心,是成立较早、规模较大的专业嵌入式培训机构。为满足快速增长的移动开发领域对Android等主流嵌入式操作系统研发人才的需求,华清远见在多年高端嵌入式专业培训和丰富的企业内训实施经验的基础上,于2004年正式成立华清远见3G学院,学院充分整合行业经验及专业领域的企业合作资源优势,打造出专业、科学的实训体系,帮助合作院校时刻紧跟行业用人需求的新趋势,引导毕业生在知识结构上更好地实现与企业真实需求的对接,从而有效提高其就业竞争优势,顺利进入专业研发领域。欢迎访问华清远见教育集团官方网站:http://www.hqyj.com及3G学院官方网站:http://www.3g-edu.org获取更新资讯。
这本《正版嵌入式Linux驱动开发教程》是一本真正站在读者角度编写的书籍。作为一名多年的嵌入式从业者,我深知驱动开发的重要性,也尝试过阅读一些相关的技术文档和书籍,但很多时候都觉得云里雾里,难以消化。这本书的出现,像一股清流,让我找回了学习的乐趣和信心。作者在组织内容上非常用心,从基础理论的铺垫,到各种驱动类型的详细介绍,再到实际的调试技巧和案例分析,层层递进,逻辑严谨。我尤其喜欢书中对Linux内核API的讲解,作者并没有简单地复制文档,而是结合实际开发场景,解释了每个API的用途、参数以及注意事项,这对于理解和正确使用内核API至关重要。书中关于驱动调试的章节也给了我很大的启发,例如如何使用kprobes、ftrace等工具来定位问题,这些都是我在实际工作中非常需要的技能。而且,这本书的排版和图示也很清晰,易于阅读和理解。我可以说,这本书是我近年来读过的最实在、最有价值的嵌入式技术书籍之一,它真正帮助我解决了许多在驱动开发中遇到的难题,并且提升了我整体的开发水平。
评分作为一名有多年开发经验的工程师,我一直在寻找一本能够系统性梳理嵌入式Linux驱动开发知识体系的书籍。《正版嵌入式Linux驱动开发教程》恰恰满足了我的需求。它不仅仅是一本操作手册,更是一本深入剖析原理的书籍。作者在讲解过程中,展现了对Linux内核机制的深刻理解,并将其转化为通俗易懂的语言。书中对于Linux内核中的锁机制、同步机制、内存分配策略等核心部分的讲解,让我对驱动开发的健壮性和稳定性有了更深的认识。此外,书中对于平台驱动、总线驱动、设备驱动等不同类型的驱动模型进行了详细的对比和分析,让我能够根据不同的硬件特性选择最合适的驱动开发方式。更难得的是,这本书还包含了对内核版本更新带来的影响以及如何进行内核移植的讨论,这些都是实际开发中非常重要的考量因素。阅读这本书,就像是与一位经验丰富的导师进行了一场深入的交流,它不仅解答了我现有的疑问,更让我看到了未来技术发展的一些方向。对于想要深入理解嵌入式Linux驱动开发,并提升自己开发功底的工程师来说,这本书绝对是不可多得的参考。
评分这本书简直是打开了我新世界的大门!之前对嵌入式Linux驱动开发一直是一知半解,总觉得它高深莫测,遥不可及。但自从拿到这本《正版嵌入式Linux驱动开发教程》后,我的感觉彻底改变了。作者的讲解方式非常清晰易懂,就像一位经验丰富的老朋友,耐心地一步步引导我。书中从最基础的概念讲起,比如Linux内核的架构、设备模型的理解,到具体的驱动编写,例如字符设备、块设备、网络设备等等,都进行了详尽的阐述。我尤其喜欢书中对每一个知识点都配有大量的实例代码,而且这些代码不是那种简单地堆砌,而是逻辑清晰,注释到位,让我能轻易地理解每一行代码的作用。更重要的是,作者还非常注重实操性,书中很多内容都结合了实际的硬件平台,比如树莓派,这让我能够很快地将理论知识转化为实践,亲手去验证和调试。以前总是在网上零散地搜集资料,碎片化的知识让我头疼不已,但这本书就像一本宝典,将所有重要的知识点串联起来,形成了一个完整的知识体系。每次学习完一个章节,我都能感觉到自己的进步,对嵌入式Linux驱动开发有了更深层次的理解和认识。这本书绝对是我嵌入式学习道路上的一笔宝贵财富,我强烈推荐给所有对嵌入式Linux驱动开发感兴趣的朋友们!
评分我是一名跨专业转行到嵌入式领域的学生,之前对Linux系统和驱动开发可以说是零基础。在茫茫的书海中,我选择了《正版嵌入式Linux驱动开发教程》,事实证明这是一个无比正确的决定。这本书的叙述风格非常温和,就像一位循循善诱的老师,不会让我感到压迫感。它从最最基础的概念讲起,比如Linux的Shell命令、文件系统,然后一步步深入到内核空间,讲解进程、线程、中断等概念,再到最终的驱动编写。每一个环节的过渡都非常自然,让我能够很好地理解知识点之间的联系。书中关于GPIO、LED、按键等简单驱动的编写,让我第一次体会到了驱动开发的乐趣。而当进入到更复杂的章节,比如I2C、SPI驱动的开发时,作者也提供了非常详尽的解释和代码示例,并且会将开发过程中可能遇到的坑都提前指出,让我少走了很多弯路。这本书最让我感动的是,它不仅仅是教我“怎么做”,更重要的是教我“为什么这么做”,让我理解背后的原理。读完这本书,我感觉自己对嵌入式Linux驱动开发有了一个全面的认识,也更有信心去面对未来的挑战。
评分说实话,我本来对市面上琳琅满目的技术书籍有些免疫,总觉得很多都是“雷声大雨点小”。但《正版嵌入式Linux驱动开发教程》这本书,彻底刷新了我的认知。它不像一些书籍那样,只是罗列概念,而是真正地把“为什么”和“怎么做”讲透了。作者在讲解过程中,没有回避那些复杂和容易出错的地方,而是直面它们,并提供了非常实用的解决思路和调试技巧。我特别欣赏书中关于内核模块加载与卸载、中断处理、内存管理等核心内容的阐述,这些都是驱动开发中最关键也最容易让人头疼的部分,但通过作者的讲解,我感觉豁然开朗。书中对于各种Linux设备驱动模型的分析也非常深入,比如 I2C、SPI、USB 等,并辅以实际的驱动开发示例,让我能够清晰地理解如何在不同的硬件接口上实现驱动。而且,书中还涉及了一些高级话题,比如设备树、驱动的性能优化等,这让我看到了更广阔的发展空间。总的来说,这本书不仅能帮助初学者快速入门,也能让有一定基础的开发者受益匪浅。它提供的不仅仅是知识,更是一种解决问题的能力和开发思路。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有