Skip to content

USB

总线机制

硬件中断与根集线器(Root Hub)报告: USB 控制器(主机控制器,如 xHCI)检测到端口状态变化,向 CPU 发送中断。

分配地址: 内核的 USB 核心层(USB Core)通过默认地址 0 与设备通信,并为其分配一个唯一的 Address(1-127)。

获取描述符(Descriptors):

设备描述符: 询问“你是谁?”(VID/PID,厂商和设备 ID)。

配置描述符: 询问“你能做什么?”(几个接口?几个端点?是存储设备还是网卡?)。

匹配驱动: 内核根据描述符中的信息(如 Class ID 为 08h 代表大容量存储),在驱动库中寻找匹配的驱动程序(如 usb-storage 驱动)。

创建设备节点: 在 Linux 中,udev 会在 /dev/ 下创建对应的节点(如 /dev/sdb)。此时,初始化完成,设备进入“就绪”状态。

USB 控制器

驱动框架