Linux驱动开发入门与实战

出版时间:2011-1  出版社:清华大学出版社  作者:郑强  页数:441  
Tag标签:无  

前言

Linux驱动程序开发是当前一个非常热门的领域,大多数基于Linux操作系统的嵌入式系统都需要编写驱动程序。随着嵌入式系统的广泛应用,出现了越来越多的硬件产品,必须有人不断地编写驱动使设备在Linux操作系统上工作。但是,Linux驱动程序开发相对较难,高水平的开发人员也比较少,所以导致驱动程序跟不上硬件发展的问题。基于这个原因,笔者编写了本书,希望借助本书能使驱动程序的开发更容易被开发人员所理解,从而迅速高效地开发出相关的驱动程序来。笔者结合自己多年的Linux驱动程序开发经验和心得体会,花费了一年多的时间写作本书。希望各位读者能在本书的引领下跨入Linux驱动开发大门,并成为一名驱动程序丌发高手。本书结合大量基础知识,全面、系统、深入地介绍了Linux驱动程序开发技术,并以大量实例贯穿于全书的讲解之中,使读者对驱动开发有一个深入的了解。学习完本书后,读者应该可以具备独立进行驱动程序开发的能力。

内容概要

  本书由浅入深,全面、系统地介绍了Linux驱动开发技术,提供了大量实例供读者实战演练。另外,作者在实例讲解中详细分析了各种重要的理论知识,让读者能够举一反三。本书共分3篇。第1篇介绍了Linux驱动开发概述、嵌入式处理器和开发板、构建嵌入式驱动程序开发环境、构建嵌入式Linux操作系统、第一个驱动程序、简单的字符设备驱动程序等内容;第2篇介绍了设备驱动中的并发控制、阻塞和同步机制、中断与时钟机制、内存访问等内容;第3篇介绍了设备驱动模型、RTC实时时钟驱动程序、看门狗驱动程序、IIC设备驱动程序、LCD设备驱动程序、触摸屏设备驱动程序、输入子系统驱动程序、块设备驱动程序、LISB设备驱动程序等内容。  作者专门为本书重点内容录制了教学视频,以提高读者的学习效率。另外,本书还赠送了大量的Linux拓展学习视频。这些视频和本书源代码需要读者自行下载,下载地址见封面提示。  本书重点突出,涉及面广,实用性强,从基本知识到核心原理,再到实例开发,几乎涉及Linux驱动开发的所有重要知识。本书适合所有想学习Linux驱动开发的入门人员阅读,也适合作为驱动工程师的参考书,对于Linux驱动开发的专业开发人员也有很高的参考价值。

作者简介

郑强,毕业于西南大学,获硕士学位。现任公司项目主管,长期从事嵌入式系统开发和设计。先后开发过十几个大中型项目,涉及GPS定位系统、刷卡系统、指纹识别、手机等产品。工作之余,热心于Flash游戏引擎开发和2D游戏开发。

书籍目录

第1篇 Linux驱动开发基础 第1章 Linux驱动开发概述  1.1 Linux设备驱动的基本概念   1.1.1 设备驱动程序概述   1.1.2 设备驱动程序的作用   1.1.3 设备驱动的分类  1.2 Linux操作系统与驱动的关系  1.3 Linux驱动程序开发   1.3.1 用户态和内核态   1.3.2 模块机制   1.3.3 编写设备驱动程序需要了解的知识  1.4 编写设备驱动程序的注意事项   1.4.1 应用程序开发与驱动程序开发的差异   1.4.2 GUNC开发驱动程序   1.4.3 不能使用C库开发驱动程序   1.4.4 没有内存保护机制   1.4.5 小内核栈   1.4.6 重视可移植性  1.5 Linux驱动的发展趋势   1.5.1 Linux驱动的发展   1.5.2 驱动的应用   1.5.3 相关学习资源  1.6 小结 第2章 嵌入式处理器和开发板简介  2.1 处理器的选择   2.1.1 处理器简述   2.1.2 处理器的种类  2.2 ARM处理器   2.2.1 A刚处理器简介   2.2.2 ARM处理器系列   2.2.3 ARM处理器的应用   2.2.4 ARM处理器的选型   2.2.5 ARM处理器选型举例  2.3 S3C2440开发板   2.3.1 S3C2440开发板简介   2.3.2 S32440开发板的特性  2.4 小结 第3章 构建嵌入式驱动程序开发环境  3.1 虚拟机和Linux安装   3.1.1 在windows上安装虚拟机   3.1.2 在虚拟机上安装Linux   3.1.3 设置共享目录  3.2 代码阅读工具Sorece Insight   3.2.1 Source Insighl简介   3.2.2 阅读源代码  3.3 小结 第4章 构建嵌入式Linux操作系统 第5章 构建第一个驱动程序 第6章 简单的字符设备驱动程序第2篇 Linux驱动开发核心技术第3篇 Linux驱动开发实用实战

章节摘录

插图:Linux操作系统分为用户态和内核态。用户态处理上层的软件工作。内核态用来管理用户态的程序,完成用户态请求的工作。驱动程序与底层的硬件交互,所以工作在内核态。Linux操作系统分为两个状态的原因主要是,为应用程序提供一个统一的计算机硬件抽象。工作在用户态的应用程序完全可以不考虑底层的硬件操作,这些操作南内核态程序来完成。这些内核态程序大部分是设备驱动程序。一个好的操作系统的驱动程序对用户态应用程序应该是透明的,也就是说,应用程序可以在不了解硬件工作原理的情况下,很好地操作硬件设备,同时不会使硬件设备进入非法状态。Linux操作系统很好的做到了这一点。一个值得注意的问题是:工作在用户态的应用程序不能因为一些错误而破坏内核态的程序。现代处理器已经充分考虑了这个问题。处理器提供了一些指令,分为特权指令和普通指令。特权指令只有在内核态下才能使用;普通指令既可以在内核态使用,也可以在用户态使用。通过这种限制,用户态程序就不能执行只有在用户态才能执行的程序了,从而起到保护的作用。另一个值得注意的问题是:用户态和内核态是可以互相转换的。每当应用程序执行系统调用或者被硬件中断挂起时,Linux操作系统都会从用户态切换到内核态。当系统调用完成或者中断处理完成后,操作系统会从内核态返回用户态,继续执行应用程序。

编辑推荐

《Linux驱动开发入门与实战》结合多媒体语音教学视频,全面、系统地介绍了Linux.备驱动开发从入门到应用实战的方方面面知识。内容涵盖Linux设备驱动开发的基础知识、核心技术及RTC实时时钟驱动、看门狗驱动、IIC设备驱动、LCD设备驱动、触摸屏设备驱动、输入子系统驱动、块设备驱动、USB设备驱动的开发过程、通过阅读《Linux驱动开发入门与实战》,可以系统地掌握Linux设备驱动程序的开发方法。ChinaUnix.net技术社区对本系列图书的支持!ChinaUnix.net是一个以讨论操作系统、软件开发、数据库技术、网络技术及服务器存储等技术为主的大型IT技术社区网站,ChinaUnix.net的宗旨是。给所有爱好IT技术、开源技术的朋友提供一个自由、开放和免费的交流空间。ChinaUnix.net的目标是建成中国最好的开源技术共享社区,为宣传和推动开源技术及自由软件在中国的应用发展做出贡献。由浅入深,全面、系统地介绍Linux驱动开发的基础与核心技术注重实战,重点阐述8种典型的Linux设备驱动程序的开发方法内容新颖:基于最新的Linux26.29内核,讲解最新的驱动设计方法内容全面:覆盖Linux驱动开发的基础知识、核心技术与典型应用分析深入:深入分析了Linux驱动的实现原理,提高读者的综合能力注重实战:介绍了看门狗、LCD、触摸屏等8种设备的驱动开发方法技巧性强:讲解时融入了作者多年的项目开发经验和开发技

图书封面

图书标签Tags

评论、评分、阅读与下载


    Linux驱动开发入门与实战 PDF格式下载


用户评论 (总计22条)

 
 

  •   内容丰富。不可缺少的驱动开发书
  •   这本书很不错,写得很详细,适合有一定linux基础的人看。
  •   适合入门,如果参加过嵌入式方向的培训,那么这本书是十分适合用于复习和加强的。
  •   很好的书,内容适合本人现阶段需求
  •   书的目录说得很好,内容一般,而且有些代码说得不透彻,感觉在百度里看到的一样!
  •   细细一品 值得拥有
  •   不错,用了2.6.29的内核,比较新。
  •   不通透;
  •   步骤很详尽,入门好书
  •   在西单就看见他了,比那本外文经典的还要详尽
  •   書中錯誤太多了。
  •   第一部分前4章内容属于打酱油内容,讲的很空泛,尤其构建根文件系统一节,这是写驱动的书写这些不痛不痒的有什么意思,要么你好好写教人家怎么用busybox构建根文件系统。第二部分描述一些驱动开发的基本内容,只是一些概念性的东西没什么可说的。第三部分驱动开发这个写的结构不怎么样。比如RTC实时时钟驱动的构架连个platform device和device以及platform driver和device driver是什么关系都不说明,哎总体很失望。
  •   不推荐买这本书,书中有很多的错别字,这是其一,说明编者的态度并不是放在技术上,而是放在了赚钱上,其二,书中的很多例子,不能很好的运行
  •   超级**的书,建议大家不要**
  •   很一般的书阿,希望亚马逊监督一下出版社,出版社对文学有严格的审查制度而且异常的敏感。为什么对计算机这些科学书籍如此马虎,对科学如此马虎,不得不说这是一个悲哀的民族,对屁事关注过度,对本该精益求精的事情却草草了事到处都是错别字,为什么......为什么....求解?不过还是喜欢亚马逊的服务,稍微舒坦点了
  •   从本书内从来看,作者是很有经验的工程师。我接触linux驱动差不多只有一个星期,先前在图书馆看到这本书,它注释很多,很容易看懂,非常适合初学者。
  •   内容新颖:基于最新的Linux26.29内核,讲解最新的驱动设计方法26.29内核是亮点
  •   内容重复拖沓,有些不必介绍的东西不止一遍的介绍,大部分的“...,所以...”语句前后根本构不成因果关系,甚至有些句子都不通顺,感觉作者语言功底很有问题,很多技术细节都是刚开始讲就马上结束,从不深入探讨,只适合扫盲。
  •   书不错哦,我正在观看中,很不错的一本书。
  •   入门不多,知识讲得比较多,讲解还可以,能够看懂。
  •   我现在读到第6章了,发现本书错别字特别多,而且前后有很多矛盾,比如第6页1.3.3节第一句话和29页的最后一句话就互相矛盾吗,虽然不影响使用,但也反映了编辑审查的太不严格了,漏洞太多,对所讲解的知识太宽泛,很多都是一笔带过,但是,作为一个入门书籍,也算是马马虎虎吧,我当小说读了!
  •   这次发货速度有点慢 用了三天时间 一般都是第二天到的 可能是因为库存点远的原因另外我的随书光盘没有 请客服人员帮助补发下
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7