Ar USB klaviatūros tik siunčia signalus ar jie juos perimina?

Turinys:

Ar USB klaviatūros tik siunčia signalus ar jie juos perimina?
Ar USB klaviatūros tik siunčia signalus ar jie juos perimina?

Video: Ar USB klaviatūros tik siunčia signalus ar jie juos perimina?

Video: Ar USB klaviatūros tik siunčia signalus ar jie juos perimina?
Video: Keyboard Shortcuts For Linux Bash Terminal - YouTube 2024, Balandis
Anonim
Daugelis iš mūsų niekada nedaro daug dėmesio mūsų klaviatūroms tol, kol jie gerai dirba, tačiau jei jūs tam tikrą laiką nustosite galvoti apie tai, ar jie siunčia signalus tik į mūsų kompiuterius, ar yra aktyvus darbas "atgal" ir "atgal" ? Šiandien "SuperUser" Q & A įrašas turi atsakymą į įdomų skaitytojo klausimą.
Daugelis iš mūsų niekada nedaro daug dėmesio mūsų klaviatūroms tol, kol jie gerai dirba, tačiau jei jūs tam tikrą laiką nustosite galvoti apie tai, ar jie siunčia signalus tik į mūsų kompiuterius, ar yra aktyvus darbas "atgal" ir "atgal" ? Šiandien "SuperUser" Q & A įrašas turi atsakymą į įdomų skaitytojo klausimą.

Šiandieninė klausimų ir atsakymų sesija pateikiama su "SuperUser" - "Stack Exchange", bendruomenės valdoma Q & A grupių asociacija.

Klausimas

"SuperUser" skaitytuvas "Ne Mo" nori žinoti, ar USB klaviatūros siunčia signalus tik tuo atveju, jei jie juos gauna:

A USB keyboard does not need to receive any signals from a computer, just power, right? Or does it need to receive signals as well as send them?

Ar USB klaviatūros siunčia signalus tik tuo atveju, ar jie juos gauna?

Atsakymas

"SuperUser" autoriai "LawrenceC" ir "Dmitrijus Grigorjevas" atsakė už mus. Pirmiausia "LawrenceC":

From the “Device Class Definition for Human Interface Devices (HID)” specification:

To change the keyboard LEDs, the keyboard accepts a command to do so. So it is not an “input-only” device (meaning it only outputs data to the host). That being said, there is a negotiation and enumeration process with all USB devices that require a back-and-forth conversation between the host and the device. You cannot have a “read-only” USB device. Even before USB, the computer’s keyboard controller would accept commands because it did a few things besides read the keyboard (reference):
To change the keyboard LEDs, the keyboard accepts a command to do so. So it is not an “input-only” device (meaning it only outputs data to the host). That being said, there is a negotiation and enumeration process with all USB devices that require a back-and-forth conversation between the host and the device. You cannot have a “read-only” USB device. Even before USB, the computer’s keyboard controller would accept commands because it did a few things besides read the keyboard (reference):
Image
Image

Vėliau atsakymas iš Dmitry Grigorjevas:

Any USB device regardless of its class requires bidirectional communication to function. Every USB device (or function in terms of USB specifications) is represented as a set of endpoints which can be thought of as buffers which accept or receive data. However, even endpoints which can only send data wait for a special packet called a token before they can reply:

The gray boxes represent the USB host while the white boxes represent USB functions (chart source).
The gray boxes represent the USB host while the white boxes represent USB functions (chart source).

Even so-called interrupt transfers are done in this way, with the USB host polling connected devices using token packets. What differs between regular (bulk) transfers and interrupt transfers is that the polling time is small and guaranteed in the latter case. Still, all transfers are initiated by the host.

Ar turite ką nors įtraukti į paaiškinimą? Garsas išjungtas komentaruose. Norite skaityti daugiau atsakymų iš kitų "Tech-savvy Stack Exchange" vartotojų? Patikrinkite visą diskusijų temą čia.

Vaizdo kreditas: Lukas Jonesas ("Flickr")

Rekomenduojamas: