《深入 Linux 设备驱动程序那和机制》读书笔记
这本书是我上个月从深圳图书馆借的到现在还没有怎么看过?
这本书已经比较旧了,左上角有有一些裂痕。
说了是电子工业出版社出版。
这本书出版于 2012 年到现在应该有 10 年的时间了。
这上面特别说明了一个图片说理。
作者大量使用七精心设计的图片来帮助清晰的理解一些复杂的概念流程和价格现在中文原创的图书中是很难能可贵的,所以这一点我也比较推崇,一图胜千言。
那和模块就像动态加载库一样,在 Windows 的下面是有一点节课第 Dynamic Link Library,在 Linux 下面就是动态加载裤 so 文件。
那和加载最多的命令就是 insmod。
那和模块就是 ko 结尾的模块文件,他文件组织形式上还是 ELF 格式?
字符设备驱动
Linux 设备驱动,大概分为三种字符设备,快设备和网络设备
那和针对没那设备都提供了对应的驱动模型框架,包括基本的那和设施和文件系统接口,这样设备驱动程序元,在写某类设备驱动程序 10 就有一套完整的驱动模型框架可以使用,从而可将大量的精力放在设备本身的操作上。
书,上面给了一幅图介绍了怎么分成的最上面是应用层,然后下面是系统调用系统调阳江那和氛围,用户空间和那和空间将操作系统分为那和空间和用户空间在内核空间下面是虚拟文件系统 DFS FX 之下呢,有通用快餐网络子系统,接下来就是字符设备驱动程序块设备驱动程序和网络设备驱动程序最底下就是硬件了。
其中制服设备就是这三类设备中最常见的也是相对容易比较理解的一种现实中,大部分的硬件都可以用字符设备驱动程序来控制这类硬件的特征就是在 I/O 传输过程中,以字符为单位,这种字符流的传输速度通常都比较缓慢,别说键盘,鼠标和打印机等设备。
接下来介绍就是比较重要的文件操作类,这是一个结构题里面比较常用的有 Open read,write 和 release。
设备号的构成和分配识别号是有主设备好好次设备号构成主设备好,用来定位对了设备驱动程序次设备号用来,这是由驱动程序自己使用。用来表示他所管理的若干那同类设备晕死了,从这个角度来看,设备号作为一种系统资源,必须仔细加以管理,以防止因设备浩宇驱动程序错误的对应关系所带来的混乱。
评论