Чи тільки USB-клавіатури надсилають сигнали, або вони також отримують їх?
Більшість з нас ніколи не замислюється над нашими клавіатурами, якщо вони працюють добре, але якщо ви припините думати про це на мить, то вони лише посилають сигнали на наші комп'ютери або є активний процес роботи вперед і назад ? Сьогоднішня стаття SuperUser Q&A має відповідь на запитання цікавого читача.
Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..
Питання
Читач від суперкористувача Ne Mo хоче знати, чи передають USB-клавіатури лише сигнали або вони також отримують їх:
USB-клавіатурі не потрібно отримувати будь-які сигнали від комп'ютера. Або потрібно отримувати сигнали, а також надсилати їх?
Чи розсилають USB-клавіатури лише сигнали або вони також отримують їх?
Відповідь
Співробітники суперкористувачів LawrenceC і Дмитро Григорьєв мають відповідь для нас. Спочатку, LawrenceC:
З специфікації "Визначення класу пристроїв для пристроїв інтерфейсу людини (HID)":
Щоб змінити світлодіоди клавіатури, клавіатура приймає команду для цього. Таким чином, він не є пристроєм «тільки для введення» (тобто він виводить дані лише на хост). Про це йдеться про процес переговорів і переліку з усіма USB-пристроями, які вимагають зворотної і вихідної розмови між хостом і пристроєм. Ви не можете мати USB-пристрій лише для читання. Навіть до USB, контролер клавіатури комп'ютера буде приймати команди, тому що він зробив кілька речей, крім читання клавіатури (посилання):
Далі відповідь Дмитра Григорьєва:
Будь-який пристрій USB, незалежно від його класу, потребує двонаправленого зв'язку. Кожен пристрій USB (або функція з точки зору специфікацій USB) представляється як набір кінцевих точок, які можна розглядати як буфери, які приймають або приймають дані. Проте навіть кінцеві точки, які можуть лише надсилати дані, чекають на спеціальний пакет, званий токеном, перш ніж вони можуть відповісти:
Сірі рамки являють собою вузол USB, а білі поля - функції USB (джерело графіка).
Навіть так звані передачі переривань виконуються таким чином, при цьому USB-хост опрацьовує підключені пристрої за допомогою пакетів маркерів. Відмінність між звичайними (масовими) переносами та передачею переривань полягає в тому, що час опитування невеликий і гарантований у останньому випадку. Проте всі перекази ініціює хост.
Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.
Кредит на зображення: Люк Джонс (Flickr)