节选
本书是一本介绍Linux设备驱动开发理论、框架与实例的书,本书基于LDD6410开发板,以Linux 2.6版本内核为蓝本,详细介绍自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和I/O映射以及异步通知、阻塞I/O、非阻塞I/O等Linux设备驱动理论;字符设备、块设备、TTY设备、I2C设备、LCD设备、音频设备、USB设备、网络设备、PCI设备等Linux设备驱动的架构和框架中各个复杂数据架构和函数的关系,并讲解了Linux驱动开发的大量实例,使读者能够独立开发各类Linux设备驱动。 本书内容全面,实例丰富,操作性强,语言通俗易懂,适合广大Linux开发人员、嵌入式工程师参考使用。
相关资料
设备驱动程序是嵌入式操作系统的重要模块,也是难点之一,linux没备驱动程序更以复杂和繁多而著名,本书的作者集多年授课和开发的经验,以简洁的语言和丰富的实例讲述了这一技术,深入浅出,值得一读。
何小庆(北京麦克泰软件技术有限公司董事长)
“点亮led”,寥寥几行代码,你可以做到。本书从简单入手,循序渐进。那些难以触及的理论,如并发控制、中断、内存映射等,在阶梯式的代码叠加中被你逐步掌握。熟悉硬件规范后,你只需一步步按框架实践,便可开发出一个usb设备驱动。
陈莉君(西安邮电学院教授)
本书系统讲述了linux内核驱动的支撑技术,涉及内核编程方式、内核模块、设备文件系统、同步互斥机制等。本书针对具体硬件的真实外设。结合实际外设的硬件逻辑,讲解了常见类型驱动程序的编写方法和实现细节。对广大linux爱好者而言,是一本值得推荐的好书。
陈渝(清华大学副教授)
本书有一个非常突出的特点——实用,全书以大量实例来引导读者编写以及移植linux设备驱动,这些实例是作者多年linux设备驱动开发从业经验的总结,读者一定会从中受益。
郭淳学(中国软件行业学会嵌入式系统分会副理事长兼秘书长)
在linux内核源代码树的各个子系统中,设备驱动是最大的一个子树分支,目前最新的linux内核支持70多种设备驱动家族。linux下的驱动编程一直被认为是一门艺术,本书是通往linux设备驱动开发殿堂的钥匙。
史应生(红帽专家服务团队资深咨询顾问,rhca、rhcss中国第一人)
设备驱动是操作系统最具多样性和复杂性的部分。回想限入式系统教学之初,我几乎买遍了市面上的linux图书也没有找到一个模块化驱动的开发实例。本书语言通俗易懂,结构清晰,作者有丰富的培训和开发经验,是国内少有的驱动程序开发专著。
马忠梅(北京理工大学副教授)
如果说硬件是系统的躯体;软件是系统的灵魂,驱动就是连接躯体和灵魂的纽带,是系统运转的枢纽。本书旨在引导读者,消除读者对驱动开发的神秘感,同时也指出了老手常见的盲点与误区。更难得的是,本书通过大量开发实例生动、系统地讲解了linux设备驱动开发的方方面面。
向农(电子工程世界总编)
本书特色
荣获51cto网站主办的2009年度最佳技术图书奖,网友好评如潮
荣获zd.net技术网站主办的2009年度十佳it图书之一
首版销售达3万册,被china-pub评选进入2009年度技术图书畅销榜top50
2010版畅销书最新升级,基于最新linux内核和ldd6410平台,本年度最值得期待的驱动开发技术图书
内容简介
本书是一本介绍linux设备驱动开发理论、框架与实例的书,本书基于ldd6410开发板,以linux 2.6版本内核为蓝本,详细介绍自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和i/o映射以及异步通知、阻塞i/o、非阻塞i/o等linux设备驱动理论;字符设备、块设备、tty设备、i2c设备、lcd设备、音频设备、usb设备、网络设备、pci设备等linux设备驱动的架构和框架中各个复杂数据架构和函数的关系,并讲解了linux驱动开发的大量实例,使读者能够独立开发各类linux设备驱动。
本书内容全面,实例丰富,操作性强,语言通俗易懂,适合广大linux开发人员、嵌入式工程师参考使用。
目录
第1章 linux设备驱动概述及开发环境构建
1.1 设备驱动的作用辅
1.2 无操作系统时的设备驱动
1.3 有操作系统时的设备驱动
1.4 linux设备驱动
1.4.1 设备的分类及特点
1.4.2 linux设备驱动与整个软硬件系统的关系
1.4.3 linux设备驱动的重点、难点
1.5 linux设备驱动开发环境构建
1.5.1 pc上的linux环境
1.5.2 ldd6410开发板
1.5.3 工具链安装
1.5.4 主机端nfs和trip服务安装
1.5.5 源代码阅读和编辑