我是一名新手Linux内核编程者。我想要开发一个程序来读取USB驱动器的信息,例如制造商名称、容量等。我了解描述符和它们的属性。但我不知道如何枚举连接到系统的USB驱动器。我正在寻找启动内核和USB端口之间连接的函数。这是否可能?
您不需要编写内核程序,事实上,为了读取设备信息,您甚至不需要设备驱动程序。USB系统在更新的2.6内核中有所不同,因此许多在线教程可能已经过时 - 但是您可以从这里开始:http://www.linux-usb.org/ 如果您确实想编写USB设备驱动程序,请参阅这篇Linux杂志教程。
你真的想要进行内核编程吗?有一个名为lsusb的实用程序,可以读取“USB驱动器信息,例如其制造商名称”,描述符等... 它还可以枚举所有USB设备。 lsusb的源代码可以在这里找到,例如http://www.google.com/codesearch#VKTEFMx6wp0/lsusb.c 如果你正在编写一个在内核模式下工作的USB驱动程序,我建议你阅读一些现有的USB驱动程序和USB驱动程序编程FAQ。