学院首页>操作系统>Linux>Linux培训园地:Linux下设备完全驱动之四

Linux培训园地:Linux下设备完全驱动之四

作者: 来源: 添加时间:2006-5-26 14:13:35
比如,scanner.o模块对应的就是USB扫描仪的驱动;audio.o对应USB接口的扬声器驱动。从上面看来,Linux对USB设备的支持一般分为两个部分,首先通过通用的usbcore等模块驱动USB芯片,这样识别出USB设备;然后再通过具体的驱动程序驱动该设备。所以,常驻内存的USB驱动模块为usbcore、ehci-hcd和usb-uhci等。










# lsmodModule        Size  Used by    Not tainted... ...hid           22212   0  (unused)input          5888   0  [keybdev mousedev hid]ehci-hcd      20104   0  (unused)usb-uhci      26412   0  (unused)usbcore       79392   1  [hid ehci-hcd usb-uhci]... ...


在这些USB基础驱动模块已经加载的情况下,再插入优盘等USB设备才能被识别出来,系统将会自动加载相对应的驱动。如果插入优盘没有反应,那么可能是这些USB基础驱动没有加载,可以手动通过以下方式加载:

# modprobe usbcore# modprobe ehci-hcd # modprobe usb-uhci# modprobe hid   //如果是USB鼠标或键盘


USB存储设备的驱动

USB存储设备使用的非常广泛,例如优盘、移动硬盘、读卡器、数码相机等,它们都是在加载了USB的通用驱动后,再使用/lib/modules/2.XXX/kernel/drivers/usb/storage/usb-storage.o作为存储的驱动模块,该驱动会将存储设备模拟成SCSI设备。

需要注意的是,只有在系统加载了上面叙述的几种USB基础驱动后,该USB设备才可以被认出,然后系统会将它们模拟成SCSI设备(主要原因是系统允许SCSI设备热插拔),如SCSI硬盘、SCSI光驱等。

下面先来看一下这类存储设备还需要哪些配套驱动模块。这些模块分散在/lib/modules/2.XXX/kernel/drivers目录中:



第 2 页,共 2 页 [1] [2]
站内搜索