如何获取主要号码列表 -> 驱动程序协会

如何获取主要号码列表 -> 驱动程序协会

Linux 编程接口状态:

每个设备驱动程序注册其与特定主设备ID的关联,并且该关联提供设备专用文件和设备驱动程序之间的连接。

是否可以获得这些协会的名单?

答案1

Documentation/admin-guide/devices.txt在内核源代码中记录了分配过程并列出了所有分配的设备号。sd获取一大堆主要设备编号,因为它可以处理大量设备:major 8 涵盖/dev/sdato /dev/sdp,major 65 涵盖/dev/sdqto /dev/sdaf,66 /dev/sdagto/dev/sdav等等,一直到 135 for /dev/sdigto /dev/sdiv(总共 256 个磁盘设备) 。

答案2

Stephen Kitt 的答案中的链接提供了常见设备类型的表格。然而,某些系统(例如设备映射器)不会对其主编号进行硬编码,而是动态获取它们。

在这些情况下,您可以读取该/proc/devices文件以获取已注册的主编号表,以及驱动程序指定的描述字符串,该字符串应该为您指明正确的方向。

请注意,由于该值是动态注册的,因此它可能会在每次启动时发生变化,具体取决于驱动程序模块注册的顺序。

相关内容