Спецификация USB.Rev1.0

       

Клиентское Программное Обеспечение


Клиентское программное обеспечение определяет то, что должны сделать передачи с функцией (Client software determines what transfers need to be made with a function.) Оно использует интерфейсы определенные соответствующей операционной системой, чтобы запросить IRPs.(It uses appropriate operating system specific interfaces to request IRPs.) Клиентское программное обеспечение  знает только необходимый набор каналов (то есть, интерфейс) для управления своей функцией. (Client software is only aware of the set of pipes (i.e., the interface) it needs to manipulate its function.) Клиент знает и твердо придерживается всех правил доступа к шине(all bus access) и ограничений пропускной способности как описано ранее для каждого типа передачи. Запросы, сделанные клиентским программным обеспечением представляются через интерфейс USBD.

Некоторые клиенты могут управлять функциями USB через другие интерфейсы класса устройства, определенные операционной системой и сами могут не обращаться напрямую к USBD. Однако, всегда имеется некоторый клиент на самом нижнем уровне(some lowest level client), который обращается к USBD, чтобы передать IRPs к USBD. Все представленные IRPs требуют твердо придержаться ранее оговоренного набора ограничений пропускных способностей, когда устройство было присоединено к шине и сконфигурировано. Если функция перемещает данные из не USB среды в USB, драйвер, который непосредственно управляет функциями аппаратных средств через память, или доступы Ввода - вывода, является самым низким клиентским программным обеспечением в USB среде, теперь взаимодействуя с USBD управляет этой функцией USB. (If a function is moved from a non-USB environment to USB, the driver that would have directly manipulated the function hardware via memory or I/O accesses is the lowest client software in the USB environment that now interacts with USBD to manipulate its USB function.)

После того, как клиентское программное обеспечение запросило передачу функции, и запрос обслужился, клиентское программное обеспечение получает сообщение о состоянии завершения IRP.(After client software has requested a transfer of its function and the request has been serviced, the client software gets notified of the completion status of the IRP.) Если передача содержит функцию передачи данных хостом, клиентское программное обеспечение может обращаться к данным в буфере данных, связанным с завершенным IRP. (If the transfer involved function to host data transfer, the client software can access the data in the data buffer associated with the completed IRP.)

Интерфейс USBD определен в Главе 10.



Содержание раздела