日期:2014-05-16  浏览次数:20709 次

《linux设备驱动开发详解(第2版)》出版热销散分100感谢读者
08年2月第一版出版的时候在http://topic.csdn.net/u/20080223/23/4d5dab13-bade-4eb5-b4e5-39df7fca3e0f.html散分过,第2版10年11月出版了,继续散分。
china-pub网址:http://www.china-pub.com/53821

Linux设备驱动开发详解(第2版)(前一版狂销3万册,畅销书最新升级)



  * 定价 :¥88.00
  * 会员价 : ¥66.00(75折)
  * 校园优惠价 :¥66(75折) (马上了解)

基本信息

  * 作者: 宋宝华  
  * 出版社:人民邮电出版社
  * ISBN:9787115236579
  * 上架时间:2010-11-3
  * 出版日期:2010 年11月
  * 开本:16开
  * 页码:632
  * 版次:2-1
  * 所属分类: 计算机 > 操作系统 >
  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版在2008年初出版以后,受到广大读者的支持和厚爱,从几年的市场和读者反馈看,在第1版中还存在一些不足,主要是以下几方面。
·没有现成的开发环境,读者需要从头到尾构建,而构建需要花费很长的时间,许多时候会不成功,加之配套光盘中的实例没有Makefile,更加大了操作的难度。
·没有配套的开发板,大量的基于S3C2410的实例读者身边如果没有可以直接运行的平台,就无法亲身体验这些驱动。
·个别内容实用性不强或过于陈旧,也有个别知识点的讲解语言晦涩,读者不易理解,如platform驱动。
·一些知识点内容不够完整,如input驱动、USB UDC和gadget驱动、SPI驱动、ASoC驱动等。
鉴于此,作者针对以上问题对第1版内容进行修订,推出了第2版。新版中对全书超过40%的内容进行了修订。这些修订,一些是对过时内容的删除,一些是对讲解不清的知识点的修正,一些是对重点内容的增强,一些则是有用知识点的增加,其目的是为读者提供一套更加准确和完整的全方位、立体式Linux设备驱动学习平台。第2版相对第1版的主要改动如下。
(1)直接提供VirtualBox虚拟机,该虚拟机上已包含了书中所需的开发环境和源代码,读者不再需要安装环境即可进行实验,书中详细介绍了各个实验的步骤。
(2)提供了专门的配套学习板——基于三星S3C6410 SoC的LDD6410(Linux Device Drivers6410),使得书中的各种真实设备驱动实例有了实验的依托。
(3)全面升级内核至Linux 2.6.28.6,根据Linux内核APl的变更情况更新了书中的所有内容,如I2C驱动的体系结构、网络NAPI的接口等,并对delayed_work等较新的内核机制进行了介绍。
(4)删除了过时的内容,如传统的按键驱动、SAA7113H启动、传统的IDE驱动等,同时新增了大量内容,包括Linux内核的编码风格、 Linux内核的移植、Android驱动、USBUDC和gadget驱动、ALSASoC驱动、input驱动、SPI驱动、基于sysfs的设备驱动、Linux设备驱动的固件加载、Linux性能调优工具、Linux设备驱动的电源管理、Linux驱动的分层设计思想、主机驱动与设备驱动分离设计思想等。
(5)在块设备驱动方面,删除了RAMDISK驱动实例,而新增了更加简单易懂的vmem』isk、类似于globalmem和globalfifo驱动。
(6)对许多关键知识点的讲解进行了语言调整和内容增强,以便读者能更好地理解,例如,以专门章节讲解platform驱动等。
全书总体结构仍然与第1版一致,共分4篇23章,内容安排如下。
第1篇(第1~3章)主要讲解Linux设备驱动的基础。
第1章主要讲解设备驱动的作用,并从无操作系统的设备驱动引出了Linux操作系统下的设备驱动以及全书所用实验环境的安装方法。
第2章系统地讲解了一个Linux驱动工程师应该掌握的硬件知识,使读者打下Linux设备驱动开发的硬件基础。本章涵盖了各种类型的CPU、存储器和常见的外设,并讲解了硬件时序分析方法和仪器使用方法。
第3章将Linux设备驱动放在Linux 2.6内核背景中进行讲解,说明Linux内核的基本原理和编程方法,为编写Linux设备驱动打下软件基础。
第2篇(第4~12章)主要讲解Linux设备驱动编程的基础理论、字符设备驱动、设备驱动设计中涉及的并发控制、同步等问题以及Linux驱动的工程化。
第4、5章分别讲解Linux内核模块和Linux设备文件系统。
第6—9章以虚拟设备globalmem和globalfifo为主线讲解了字符设备驱动的编写方法,并讲解了并发控制、阻塞与非阻塞、异步I/O等高级控制功能。
.第10、11章分别讲解Linux驱动编程中所涉及的中断和定时器,内核和I/O操作处理方法。
globalmem和globalfifo驱动与真实项目中看到的驱动有一些不同,第12章详细讲解Linux设备驱动的工程化问题,让读者了解真实的驱动要考虑的诸多问题。
第3篇(第13—21章)深刻剖析复杂设备驱动的体系架构,每一章都给出了具体的实例,涉及的设备包括块设备、终端设备、I2C适配器与I2C设备、网络设备、PCI设备、USB主机控制器、USB设备、UDC、gadget、LCD设备、Flash设备等。本篇的讲解抽象与具体相结合,先以模板的形式给出各种设备驱动的设计框架,然后用具体实例设备的驱动填充对应的模板。
第4篇(第22—23章)详细讲解了Linux设备驱动和内核的调试和移植方法。
第22章讲解了Linux设备驱动的开发环境构建以及借助printk、oops、/proc、strace、仿真器进行驱动调试的方法,最后介绍了Linux的性能调优工具。
第23章讲解了开发可移植驱动程序以及借助芯片范例程序、demo板驱动和其他操作系统驱动等现成代码进行Linux驱动快速移植的方法,最后介绍了如何在一块新的SoC和电路板上构建Linux。
本书的结构及内容参见附图。
最后,再次对广人读者以及所有为本书提出过宝贵意见、为本书的诞生奉献过力量的人们表示最诚挚的谢意!读者朋友可继续通过本书专用网址http://www.linuxdriver.cn与作者和编辑团队进行交流。
本书服务QQ:1275822672
服务E-mail:book@Linuxdriver.cn
读者可以邮件咨询索取相关资料
宋宝华
2010年6月于上海浦东

↓展开全部内容
媒体评论回到顶部↑
设备驱动程序是嵌入式操作系统的重要模块,也是难点之一,Linux没备驱动程序更以复杂和繁多而著名,本书的作者集多年授课和开发的经验,