首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有明确的方法将Linux内核中的驱动程序源代码与设备本身联系起来?

是否有明确的方法将Linux内核中的驱动程序源代码与设备本身联系起来?
EN

Unix & Linux用户
提问于 2016-07-13 05:28:29
回答 1查看 162关注 0票数 3

Linux内核的源代码包含了/drivers目录下许多设备的驱动程序源。有时,通过查看源代码注释,就可以得到驱动程序编写的设备的提示。但是,很多时候,我不知道任何设备或家庭的设备,司机的目标。是否有可能将驱动程序追溯到相应的设备?

EN

回答 1

Unix & Linux用户

发布于 2016-07-13 15:55:43

这取决于写入驱动程序的设备的类型。一个简单但常见的例子是PCI设备

PCI设备使用PCI配置空间中的一系列寄存器来标识自己。因此,例如,网卡将识别它是哪种类型的卡与一系列的注册值,Linux内核可以读取。

用于PCI设备的设备驱动程序导出一个PCI ID表,该表描述驱动程序本身可以控制哪些设备。这个is表是在Linux内核中注册的。Linux内核可以遍历连接到系统的每个设备,从设备获取PCI ID,然后检查为该ID注册了哪个驱动程序。这是为特定PCI硬件选择驱动程序的方式。

我编写了一个关于Linux网络栈的全面的博客帖子 (调优、优化、监视等等)。在那篇博客文章的开头,我遍历了igb Linux网络驱动程序代码(带有实际的代码示例),并显示了igb驱动程序可以控制的设备的代码它导出PCI ID。

票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/295554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档