我是内核编程的新手,我有一个USB设备的dev_t值。
我想获取设备的详细信息,如供应商ID,产品ID或其他属性,这些属性会因设备而异。 我想在内核空间中执行此操作,而不将程序作为外部模块加载。
我遇到了一个libusb库,但据我所知,它被用在用户空间中。 是否有可能在内核空间也使用libusb,就像我的要求? 如果可能的话,如何导入和设置libusb以便我可以编译内核?
为这个任务编写一个可加载的内核模块会更好。 每当你发现一个bug时,你只需要对你的内核编译你的模块并加载它。 在内核中有一个为USB定义的框架,使用由内核提供的API来完成你正在寻找的东西。 除了libusb是一个用户空间库,在内核中没有用处。 在用户空间中,您还可以使用procfs / sysfs访问USB相关信息。