理结构就是图4-5中的结构Hub也是逻辑设备但在图4-6中为了简化起见未被画出虽然USB系统中的工作都是从逻辑角度来看待的但主机必须对物理结构有个了解例如在处理Hub被移去的情况时当一个Hub被移出通过它与主机相连的设备也应一起被移去这是由其物理结构决定的关于Hub的更详细的讨论在第10章
操纵USB应用设备的客户软USB软件编程接口来操纵应用设备I/O的在运行
设备和客户软件的设计者就可以只关图4-7说明了在图4-6
图4-7 客户软件和应用间的关系
4.3 USB通信流
USB是为主机软件和它的USB应用设备间的通信服务的对客户与应用间不同的交互USB设备对数据流有不同的要求USB为此提供了更好的overall总线使用它允许各种不同的数据流相互独立地进入一个USB设备每种通信流都采取了某种总线访问方法来完成主机上的软件与设备之间的通信每个通信都在设备上的某个端点结束不同设备的不同端点用于区分不同的通信流
图4-8是图4-2的扩充它更详尽地描述了USB系统支持了逻辑设备层和应用层间的通信实际的通信流要经过好几个接口边界从第5章到第7章刻画了机械上电气上以及协议上的USB接口的定义第8章刻划了USB设备的编程接口通过此接口可从主机侧对USB设备进行控制第9章介绍了两个主机侧的通信接口
主机控制器的驱动程序(HCD)它位于USB主机控制器与USB系统软件之间主机控制器可以有一系列不同的实现而系统软件独立于任何一个具体实现一个驱动程序可以支持不同的控制器而不必特别了解这个具体的控制器一个USB控制器的实现者必须提供一个支持它自己的控制器的主机控制器驱动器HCD实现