Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Розробка драйвера, що розпізнає USB-пристрій як віртуальний COM-порт в системі Windows NT

Реферат Розробка драйвера, що розпізнає USB-пристрій як віртуальний COM-порт в системі Windows NT





ти пристрій з метою визначення його типу і параметрів, виконувати ініціалізацію і конфігурація пристрою.

Крім нульової точки, пристрої, зазвичай, мають додаткові кінцеві точки, які використовуються для обміну даними з хостом. Додаткові точки можуть працювати або тільки на прийом даних від хоста (вхідні точки, IN), або тільки на передачу даних хосту (вихідні точки, OUT).

Нульова точка пристрою доступна після того, як пристрій підключено до шини, включено і отримало сигнал скидання по шині (bus reset). Всі інші кінцеві точки після включення живлення або скидання знаходяться у невизначеному стані і недоступні для роботи до тих пір, поки хост не виконає процедуру конфігурування пристрою.

Специфікація шини визначає чотири різних типи передачі даних для кінцевих точок:

· керуючі передачі (Control Transfers) - використовуються хостом для конфігурування пристрою під час підключення, для управління пристроєм і отримання статусної інформації в процесі роботи. Протокол забезпечує гарантовану доставку таких посилок;

· передачі масивів даних (Bulk Data Transfers) - застосовуються при необхідності забезпечення гарантованої доставки даних від хоста до функції або від функції до хоста, але час доставки не обмежена;

· передачі по перериваннях (Interrupt Transfers) - використовують у тому випадку, коли потрібно передавати поодинокі пакети даних невеликого розміру. Кожен пакет потрібно передати за обмежений час. Операції передачі носять спонтанний характер і повинні обслуговувати не повільніше, ніж того вимагає пристрій;

· ізохронні передачі (Isochronous Transfers) - застосовуються для обміну даними в «реальному часі», коли на кожному часовому інтервалі потрібно передавати строго певну кількість даних, але доставка інформації не гарантована (передача даних ведеться без повторення при збоях, допускається втрата пакетів).

Канал (pipe) - це логічне з'єднання між кінцевою точкою пристрою і ПО хоста. Існує дві моделі каналів:

· потоковий канал (або просто потік, streaming pipe) - це канал для передачі даних, структура яких визначається клієнтським ПЗ. Потоки використовуються для передачі масивів даних, передачі даних по перериваннях і ізохронної передачі даних. Потік завжди односпрямований. Один і той же номер кінцевої точки може використовуватися для двох різних потокових каналів - введення і виведення. Передачі даних в потокових каналах підкоряються наступним правилам:

§ запити клієнтських драйверів для різних каналів, поставлені в певному порядку один щодо одного, можуть виконуватися в іншому порядку;

§ запити для одного каналу будуть виконуватися строго в порядку їх надходження;

§ якщо під час виконання якого-небудь запиту відбувається серйозна помилка (STALL), потік зупиняється;

· канал повідомлень (message pipe або control pipe) - це канал для передачі даних, структура яких визначається специфікацією USB. Канали цього типу двонаправлені і застосовуються для передачі керуючих посилок. Канали повідомлень строго синхронізовані - специфікація USB забороняє одночасну обробку декількох запитів: не можна починати передачу нового повідомлення, поки не завершена обробка попереднього. У разі виникнення помилки передача повідомлення може бути перервана хостом, після чого хост може почати передачу нового повідомлення.

Основними характеристиками каналів є:

§ смуга пропускання каналу;

§ використовуваний каналом тип передачі даних;

§ характеристики, відповідні кінцевій точці: напрямок передачі даних і максимальний розмір пакета.

Смуга пропускання шини ділиться між усіма встановленими каналами. Виділена смуга закріплюється за каналом, і якщо встановлення нового каналу вимагає такої смуги, яка не списується у вже існуючий розподіл, запит на виділення каналу відкидається. Архітектура USB передбачає внутрішню буферизацію всіх пристроїв, причому, чим більшою смуги пропускання вимагає пристрій, тим більше повинен бути його буфер. Шина USB повинна забезпечувати обмін з такою швидкістю, щоб затримка даних у пристрої, викликана буферизацією, не перевищувала декількох мілісекунд.

Канал повідомлень, пов'язаний з нульовою кінцевою точкою, називається Основним каналом повідомлень (Default Control Pipe або Control Pipe 0). Власником цього каналу є USBD, і він використовується для конфігурування пристрою. Основний канал повідомлень підтримує тільки керуючі передачі. Решта каналів (вони називаються клієнтськими каналами, Client Pipe) створюються в процесі конфігурування пристрою. Їх власниками є драйвери пристроїв. По клієнтських каналах мо...


Назад | сторінка 4 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Пристрій передачі даних, що містить п`ять каналів передачі
  • Реферат на тему: Вісокорівневе управління каналом передачі даних
  • Реферат на тему: Спостереження за передачею даних в мережі організації за допомогою засобів ...
  • Реферат на тему: Імітаційне моделювання процесу передачі даних по двох каналах
  • Реферат на тему: Модель системи передачі пакетів даних