文章分类 - 国嵌课程笔记-专业体系2-精通嵌入式/第4季-内核驱动奥秘多-下学期
摘要:章节一.输入子系统模型解析一.为何需要输入子系统1.回顾之前按键驱动的代码,总结其大致流程如下(1)注册字符设备驱动(2)实现系统调用相关的的驱动函数(3)实现硬件相关的函数,以便获取硬件数据并传送到用户空间2.输入设备诸如键盘,鼠标,按键之类的给PC输入数据的外设,都称之为输入设备。3.在Linu...
阅读全文
摘要:一.网卡驱动架构分析1.Linux网络子系统从上到下依次如下图:(1)系统调用接口主要是响应用户空间的系统请求,为应用程序提供访问网络子系统的统一方法。(2)协议无关接口虽然网络子系统有很多协议,但是我们不必要为了用具体的某一种协议而建立一套相对应的访问接口,也就是说我们可以用一套统一的接口访问不同...
阅读全文
摘要:一.tty驱动程序架构1.概念解析:在Linux系统中终端是一种字符设备,用tty简称各种终端设备2.包括(1)串口终端:对应物理串口,一般是/dev/ttyS*,比如ttySAC0(2)控制终端:输出设备就是控制台终端(console),但实际上/dev/console是一个虚拟设备,他需要映射到...
阅读全文
摘要:一.总线模型1.随着技术的进步,对热插拔的要求以及可移植性的要求越来越高,从Linux2.4开始虽然有了模型但是正式提出是在Linux2.6。2.关键词是总线,驱动,设备3.总线能够感知设备的插拔:(1)插入新设备的时候知道有设备插入,那么就去总线上已有的驱动里面查找能够处理该新设备的驱动,一旦匹配...
阅读全文
摘要:一.混杂设备1.隶属于字符设备2.主设备号是103.内核利用次设备号来区分具体的设备4.所有的混杂设备形成一个链表二.描述混杂设备用struct miscdevice。主要是前三项。我们只需要初始化前三项,后面的交给内核自己处理,不用理会。三.注册混杂设备用同样都是遵循先分配,然后初始化,最后注册的...
阅读全文

浙公网安备 33010602011771号