nl.phhsnews.com


nl.phhsnews.com / Sturen USB-toetsenborden alleen signalen of ontvangen ze die ook?

Sturen USB-toetsenborden alleen signalen of ontvangen ze die ook?


De meesten van ons besteden nooit veel aandacht aan onze toetsenborden zolang ze goed werken, maar als u er niet meer aan denkt voor een moment, sturen ze alleen signalen naar onze computers of is er een actief heen-en-weer proces op het werk? De SuperUser Q & A-post van vandaag biedt het antwoord op de vraag van een nieuwsgierige lezer. De vraag- en antwoordsessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een door de gemeenschap gestuurde groep van Q & A-websites.

De vraag

SuperUser-lezer Ne Mo wil weten of USB-toetsenborden alleen signalen verzenden of deze ook ontvangen:

Een USB-toetsenbord hoeft geen signalen van een computer te ontvangen, alleen voeding, toch? Of moet het zowel signalen ontvangen als verzenden?

Sturen USB-toetsenborden alleen signalen of ontvangen ze deze ook?

Het antwoord

Bijdragers van SuperUser LawrenceC en Dmitry Grigoryev hebben het antwoord voor ons. Allereerst, LawrenceC:

Uit de specificatie "Device Class Definition voor Human Interface Devices (HID)":

Om het toetsenbord-LED's te wijzigen, accepteert het toetsenbord een opdracht om dit te doen. Het is dus geen "alleen-invoer" -apparaat (wat betekent dat het alleen gegevens naar de host uitvoert). Dat gezegd hebbende, is er een onderhandelings- en opsommingsprocedure met alle USB-apparaten die een heen en weer gesprek tussen de host en het apparaat vereisen. U kunt geen "alleen-lezen" USB-apparaat hebben. Zelfs vóór USB accepteerde de toetsenbordcontroller van de computer commando's omdat het een paar dingen deed behalve het toetsenbord (referentie) lezen:

Gevolgd door het antwoord van Dmitry Grigoryev:

Elk USB-apparaat, ongeacht zijn klasse, vereist bidirectionele communicatie naar functie. Elk USB-apparaat (of functie in termen van USB-specificaties) wordt weergegeven als een reeks eindpunten die kunnen worden beschouwd als buffers die gegevens accepteren of ontvangen. Zelfs eindpunten die alleen gegevens kunnen verzenden, wachten echter op een speciaal pakket dat een token wordt genoemd, voordat ze kunnen antwoorden:

De grijze vakjes vertegenwoordigen de USB-host terwijl de witte vakjes USB-functies (kaartbron) vertegenwoordigen.

Zelfs zo- zogeheten onderbrekingsoverdrachten worden op deze manier gedaan, waarbij de USB-host verbonden apparaten belt met tokenpakketten. Wat verschilt tussen reguliere (bulk) overschrijvingen en interruptoverdrachten, is dat de stemtijd in het laatste geval klein is en gegarandeerd. Alle transfers worden echter door de host gestart.

Heeft u iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden van andere technisch onderlegde Stack Exchange-gebruikers lezen? Bekijk hier de volledige discussiethread.


Image Credit: Luke Jones (Flickr)


Waarom installeert elke pc-game zijn eigen kopie van DirectX?

Waarom installeert elke pc-game zijn eigen kopie van DirectX?

DirectX maakt deel uit van het Windows-besturingssysteem. Dus waarom lijkt het erop dat elke pc-game die u installeert vanuit Steam, Origin of elders een eigen exemplaar van DirectX installeert? Wat is DirectX? DirectX is onderdeel van Microsoft Windows. Het is een groep API's (application programming interfaces) die ontwikkelaars kunnen gebruiken voor 3D-graphics, video, multimedia, geluid en gamepad-functies op Windows.

(how-top)

Hoe u de melding

Hoe u de melding "Is in de achtergrond uitvoeren" en "Batterij gebruiken" uitschakelt in Android Oreo

Als u een Nexus- of Pixel-apparaat met Oreo gebruikt, heeft u waarschijnlijk de "[Appnaam] wordt uitgevoerd op de achtergrond" -melding. Als je een Pixel 2 hebt, heb je deze melding misschien gezien, hoewel de woordenstroom iets anders is - er staat: "[naam van de app] gebruikt de batterij." Hoewel dit nuttig is, kan dit ook behoorlijk vervelend zijn.

(how-top)