《Linux设备驱动开发具体解释(第3版)》(即《Linux设备驱动开发具体解释:基于最新的Linux 4.0内核》)网购链接

《Linux设备驱动开发具体解释:基于最新的Linux 4.0内核》

china-pub   

spm=a1z10.3-b.w4011-10017777404.30.kvceXB&id=521111707813&rn=4cf013961288ab7c4dfd2016aeb21fa8&abbucket=5">天猫

     dangdang   京东

China-pub 8月新书销售榜

《Linux设备驱动开发具体解释(第3版)》(即《Linux设备驱动开发具体解释:基于最新的Linux 4.0内核》)网购链接

推荐序一

  技术日新月异,产业斗转星移,滚滚红尘,消逝的事物太多,新事物的诞生也更迅猛。众多新生事物如灿烂烟花,转瞬即逝。当我们仰望星空时,在浩如烟海的专业名词中寻找,赫然发现,Linux的生命力之旺盛顽强,斗志之昂扬雄壮,令人称奇。

它正以摧枯拉朽之势迅速占领包含server、云计算、消费电子、工业控制、仪器仪表、导航娱乐等在内的众多应用领域,并逐步占领很多WINCE、VxWorks的传统嵌入式市场。

  Linux所及之处,所向披靡。这与Linux的社区式开发模式,迅速的迭代不无关系。Linux每2~3月更新一次版本号。吸纳新的体系架构、芯片支持、驱动、内核优化和新特性。这使得Linux总是可以在第一时间内迎合用户的需求,高速地适应瞬息万变的市场。由Linux以及环绕着Linux进行产品研发的众多企业和爱好者构成了一个庞大的Linux生态圈。而本书,无疑给这个庞大的生态圈注入了养料。

  然而,养料的注入应该是持续不断的。

至今。Linux内核的底层BSP、驱动框架和内核实现发生了很多变更,本书涵盖了这些新的变化,这将给予开发人员很多其它新的帮助。内核的代码不断重构并最优化,而本书也无疑是一次重大的重构。

  生命不息,重构不止。

  周立功

  推荐序二

  在翻译了《Understanding the Linux Kernel》和《Linux Kernel Development》这两本书后,每当有读者询问怎样学习Linux内核时,我都不敢贸然给出建议。

如此庞大的内核。各个子系统之间的关系错综复杂,代码不断更新和迭代,究竟该从何入手?你的出发点是哪里?你想去的彼岸又是哪里?对应的学习方法都不同。

  一旦踏入Linux内核领域,要精通Linux内核的精髓。差点儿没有捷径可走。虽然通往山顶的路有无数条,但每条路上都布满荆棘,也许时间和毅力才是斩荆披棘的利器。

  从最初到如今,Linux内核的版本号更新达上千个,代码规模不断增长,平均每一个版本号的新增代码有4万行左右。在源码的10个主要子文件夹(arch、init、include、kernel、mm、IPC、fs、lib、net、drivers)中,驱动程序的代码量呈线性增长趋势。

  从软件project角度来看内核代码的变化规律,Linux的体系结构相对稳定,子系统数变化不大。平均每一个模块的复杂度呈下降趋势,但系统总体规模和复杂性分别呈超线性和接近线性增长趋势。drivers和arch等模块的高速变化是引起系统复杂性添加的主因。那么。在代码量最多的驱动程序中。有什么规律可循?最根本的又是什么?

  本书很多其它的是关于Linux内核代码背后机理的解说,呈现给读者的是一种思考方法。让读者可以在思考中举一反三。

虽然驱动程序仅仅是内核的一个子系统,但Linux内核是一种总体结构,牵一发而动全局。对Linux内核其它相关知识的掌握是开发驱动的基础。本书的内容包含中断、定时器、进程生命周期、uevent、并发、编译乱序、运行乱序、等待队列、I/O模型、内存管理等,实例代码也被大幅重构。

  明代著名的思想家王明阳有句名言“知而不行。是为不知;行而不知,可以致知”。因此在研读本书时,你一定要亲身实践。在实践之后要提升思考,如此,你才可以越过代码本身而看到内核的深层机理。

  陈莉君

  西安邮电大学

媒体评论

  十多年前,我在海外一家路由器公司从事底层软件开发时。一本《Linux Device Driver》(LDD)使我受益匪浅。

近年来,我在从事基于ARM的嵌入式操作系统教学时发现,非常多Linux设备驱动中的新技术,比方Device Tree、sysfs等。在LDD3中均没有涉及。而市面上的翻译书晦涩难懂。有的还不如英文原书好理解。

宋宝华是我尊敬的技术人员。十年如一日,在Linux内核及设备驱动领域潜心耕耘,堪称大师。

本书不管从汉语的遣词造句,案例的深入浅出,还是对前沿技术的掌握。对难点技术丝丝入扣的分析,都体现出了强烈的“工匠精神”,堪称经典。值得推荐。

  ——Xilinx前大中华区大学计划经理、慕客信CEO  谢凯年

  设备驱动程序是连接计算机软件和硬件的纽带和桥梁。开发人员在嵌入式操作系统的开发移植过程中。有将近70%~80%的精力都用在了驱动程序的开发与调试方面。这就对设备驱动程序开发人员提出了极高的要求。

开发人员不仅要同一时候具备软件和硬件的知识和经验,并且还要不断地学习、更新自己,以便跟上嵌入式系统日新月异的发展。研究前人的总结和动手实践是不断提高自己的有效途径。

虽然市面上已经有多种设备驱动的书籍,但本书在总结Linux设备驱动程序方面仍然非常具有特色。它用理论联系实际。尤其是提供了大量的实例。对读者深入地理解并掌握各种驱动程序的编写大有裨益。
  ——飞思卡尔半导体(中国)有限公司数字网络软件技术方案部总监  杨欣欣博士

  一位优秀的设备驱动开发project师须要具备多年嵌入式软件和硬件开发经验的积累,本书针对Linux设备驱动开发相关的设计思想、框架、内核,深入浅出,结合代码,从理论到实践进行重点解说。

毫无疑问。本书可谓一把通向设备驱动大师殿堂之门的金钥匙,它将激发你的味蕾。带你“品尝”嵌入式设备驱动开发这道“美味佳肴”,掩卷沉思,意味深长。

  ——ARM中国在线社区经理   宋斌

  作者长期从事嵌入式Linux开发和教学工作,擅长Linux驱动开发。并跟踪开源软件和嵌入式处理器技术的最新发展。撰写本书。书中内容新奇有用。作者针对ARM和移动便携式设备的兴起,在书中加入了ARM Linux 设备树和Linux电源管理系统架构及驱动的内容,书中关于Linux设备驱动的软件架构思想的章节也非常有特色。
  ——中国软件行业协会嵌入式系统分会副理事长 何小庆

封面:

《Linux设备驱动开发具体解释(第3版)》(即《Linux设备驱动开发具体解释:基于最新的Linux 4.0内核》)网购链接

上一篇:Python 基础教程


下一篇:Servlet+JSP+JavaBean开发模式(MVC)介绍