请输入您要查询的百科知识:

 

词条 Linux设备驱动
释义

Linux设备驱动的定义

设备驱动最通俗的解释就是“驱使硬件设备行动”。驱动与底层硬件直接打交道,按照硬件设备的具体工作方式,读写设备的寄存器,完成设备的轮询、中断处理、DMA通信,进行物理内存向虚拟内存的映射等,最终让通信设备能收发数据,让显示设备能显示文字和画面,让存储设备能记录文件和数据。

Linux设备驱动的分类

(1)字符设备。

(2) 块设备。

(3) 网络设备。

字符设备指那些必须以串行顺序依次进行访问的设备,如触摸屏、磁带驱动器、鼠标等。块设备可以用任意顺序进行访问,以块为单位进行操作,如硬盘、软驱等。字符设备不经过系统的快速缓冲,而块设备经过系统的快速缓冲。但是,字符设备和块设备并没有明显的界限,如对于Flash设备,符合块设备的特点,但是我们仍然可以把它作为一个字符设备来访问。

Linux设备驱动的重点、难点

(1)编写Linux设备驱动要求工程师有非常好的硬件基础,懂得SRAM、Flash、SDRAM、磁盘的读写方式,UART、I2C、USB等设备的接口以及轮询、中断、DMA的原理,PCI总线的工作方式以及CPU的内存管理单元(MMU)等。

(2) 编写Linux设备驱动要求工程师有非常好的C语言基础,能灵活地运用C语言的结构体、指针、函数指针及内存动态申请和释放等。

(3)编写Linux设备驱动要求工程师有一定的Linux内核基础,虽然并不要求工程师对内核各个部分有深入的研究,但至少要明白驱动与内核的接口。尤其是对于块设备、网络设备、Flash设备、串口设备等复杂设备,内核定义的驱动体系架构本身就非常复杂。

(4) 编写Linux设备驱动要求工程师有非常好的多任务并发控制和同步的基础,因为在驱动中会大量使用自旋锁、互斥、信号量、等待队列等并发与同步机制。

Linux设备驱动图书

《Linux设备驱动开发详解》

作 者:宋宝华

出版社: 人民邮电出版社

出版时间: 2010年11月1日

ISBN: 9787115236579

开本: 16开

定价: 88.00元

内容简介

《Linux设备驱动开发详解(第2版)》是一本介绍Linux设备驱动开发理论、框架与实例的书,《Linux设备驱动开发详解(第2版)》基于LDD6410开发板,以Linux2.6 版本内核为蓝本,详细介绍自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和I/O映射以及异步通知、阻塞I/O、非阻塞I/O等Linux设备驱动理论;字符设备、块设备、TTY设备、I2C设备、LCD设备、音频设备、USB设备、网络设备、PCI设备等Linux设备驱动的架构和框架中各个复杂数据架构和函数的关系,并讲解了Linux驱动开发的大量实例,使读者能够独立开发各类Linux设备驱动。《Linux设备驱动开发详解(第2版)》内容全面,实例丰富,操作性强,语言通俗易懂,适合广大Linux开发人员、嵌入式工程师参考使用。

图书目录

第1篇 Linux设备驱动入门

第1章 Linux设备驱动概述及开发环境构建 2

第2章 驱动设计的硬件基础 21

第3章 Linux内核及内核编程 53

第2篇 Linux设备驱动核心理论

第4章 Linux内核模块 82

第5章 Linux文件系统与设备文件系统 92

第6章 字符设备驱动 118

第7章 Linux设备驱动中的并发控制 139

第8章 Linux设备驱动中的阻塞与非阻塞I/O 161

第9章 Linux设备驱动中的异步通知与异步I/O 176

第10章 中断与时钟 193

第11章 内存与I/O访问 213

第12章 工程中的Linux设备驱动 242

第3篇 Linux设备驱动实例

第13章 Linux块设备驱动 272

第14章 Linux终端设备驱动 304

第15章 Linux的I2C核心、总线与设备驱动 333

第16章 Linux网络设备驱动 363

第17章 Linux音频设备驱动 388

第18章 LCD设备驱动 440

第19章 Flash设备驱动 479

第20章 USB主机与设备驱动 507

第21章 PCI设备驱动 547

第4篇 Linux设备驱动调试、移植

第22章 Linux设备驱动的调试 564

第23章 Linux设备驱动的移植 602

参考文献 631

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/23 6:44:06