Er der en faktisk USB-kommunikationsprotokol?

Jan 29, 2025
Hardware
UCACHED INDHOLD

De fleste af os tænker aldrig meget over vores USB-enheder, vi tilslutter dem bare og glemmer dem. Men hvad hvis du er den nysgerrige type, der vil vide mere om, hvordan USB fungerer? Dagens SuperUser Q & A-indlæg har svarene på en nysgerrig læsers spørgsmål.

Dagens spørgsmål og svar-session kommer til os med tilladelse fra SuperUser - en underinddeling af Stack Exchange, en community-driven gruppe af Q&A websteder.

Foto med tilladelse til Evilelka Kowalski (Flickr) .

Spørgsmålet

SuperUser-læser-smeeb vil vide, om der virkelig er en egentlig USB-kommunikationsprotokol:

Ifølge Wikipedia, USB :

  • Definerer kabler, stik og kommunikationsprotokoller, der bruges i en bus til forbindelse, kommunikation og strømforsyning mellem computere og elektroniske enheder.

Men er der en faktisk USB-kommunikationsprotokol ? Min forståelse er, at:

  1. Du tilslutter en USB-enhed til en maskine (f.eks. Ubuntu eller enhver form for Linux).
  2. Linux finder enhedsdriveren til denne enhed på en eller anden måde ( bonus, hvis du ved det! ) og indlæser det.
  3. Enheden er nu tilsluttet under / dev / theDevice .
  4. Brugerplads-apps kan nu læse og skrive til / dev / theDevice og driveren håndterer input og output på lavt niveau til den underliggende enhed / hardware.

Så vidt jeg kan vide, er a USB-kommunikationsprotokol vises ikke nogen steder i denne strøm. Hvis min forståelse er korrekt, er USB kun kablet og den elektriske forbindelse mellem pc'en og enheden.

Tager jeg fejl her? Implementerer USB faktisk en slags lavt niveau protokol, der understreger strømmen ovenfor? Hvis ja, hvad er det, og hvordan fungerer det med en 30.000 fods visning?

Er der en egentlig USB-kommunikationsprotokol?

Svaret

SuperUser-bidragydere RedGrittyBrick og projectdp har svaret til os. Først op, RedGrittyBrick:

Ja ( se USB-protokoller ).

Som jeg forstår det, definerer USB-specifikationen et komplekst sæt lagprotokoller og enhedsprofiler.

For eksempel kan USB-enheder overholde skabeloner på højt niveau som masselagring, tastatur, human interface-enhed osv. Og administreres af en generisk enhedsdriver. Nogle USB-enheder kan kommunikere på et lavere niveau, så operativsystemets USB-understøttelse på lavt niveau kan genkende, at enhedsspecifikke drivere på højere niveau er nødvendige.

Efterfulgt af svaret fra projectdp:

Spørgsmål

Er der en USB-kommunikationsprotokol på lavt niveau i aktion, og hvad er den?

Svar

Ja der er. USB-specifikationen inkluderer USB-protokollen, der definerer den måde, bussen bruges på et bitniveau. Dette ville være protokollen på lavt niveau, der ligger til grund for protokollerne på højere niveau (dvs. masselagring, HID osv.).

For detaljer om hvordan USB-protokollen fungerer, dette OSDev wiki er nyttigt. Her er en anden interessant beskrivelse ved hjælp af sekvensdiagrammer til at beskrive de forskellige datatransaktioner pr. USB-protokollen.

Bonus spørgsmål

Hvordan finder og indlæser Linux enhedsdriveren til den pågældende enhed?

Bonussvar

På Linux, når du bruger en USB-aktiveret kerne, registreres en fungerende USB-enhed via hardware og kerne på grund af USB-specifikationen. På hardwaresiden udføres detekteringen af ​​USB Host Controller. Så i kernen overtager Host Controller Driver og oversætter bitene på lavt niveau på ledningen til USB-protokollformateret information. Disse oplysninger bliver derefter befolket i usbcore-driveren i kernen.

Jeg omskrev fra dette fremragende Opensourceforu-artikel , som har meget mere detaljer og klarhed om dit spørgsmål i Linux-sammenhæng.

Sørg for at tjekke resten af ​​den livlige diskussion via trådlinket, der er delt nedenfor!


Har du noget at tilføje til forklaringen? Lyd fra i kommentarerne. Vil du læse flere svar fra andre teknisk kyndige Stack Exchange-brugere? Tjek den fulde diskussionstråd her .

.indgangsindhold .indgangsfod

USB Protocol

What Is HART Protocol?

How To Reverse Engineer A USB Protocol For Linux

Fun And Easy USB - How The USB Protocol Works

HTC Vive USB Protocol Reverse Engineering

Dmitriy Kostiuk | How To Get Yourself Into The Usb Protocol Without Pain

What Is The USB Type-C Signal Plan? How Does Orientation Independence Happen?

About The Data Center 3.0, A Protocol Analysis Software For USB, I2C, And SPI

What Is RS232 And What Is It Used For?


Hardware - Mest populære artikler

Hvad er en “Surveillance” eller “NAS” harddisk?

Hardware Apr 28, 2025

mike mols / Shutterstock Kapacitet er ikke det eneste, der adskiller en harddisk fra en anden. Ja, de drejer alle sammen fade, der bruger magneti..


Hvad er Apples W1-chip?

Hardware Jan 24, 2025

UCACHED INDHOLD Det har taget et stykke tid, men Bluetooth-hovedtelefoner og øretelefoner er endelig gode . Producenter har løst de fleste af de problemer, der er..


Sådan installeres Chrome OS fra et USB-drev og kører det på enhver pc

Hardware Jul 27, 2025

Google understøtter kun officielt kørsel af Chrome OS på Chromebooks , men lad ikke det stoppe dig. Du kan placere open source-versionen af ​​Chrome OS på et ..


Sådan indstilles et mål i Google Kalender til iOS og Android

Hardware Apr 26, 2025

UCACHED INDHOLD Tidligere på denne måned tilføjede Google en målfunktion til Google Kalender-apps til iOS og Android. Mål finder automatisk fritid i din kalender og ..


Sådan tilføjes og ændres verdensure på Apple Watch

Hardware Jan 14, 2025

Når du opretter dit Apple Watch første gang, har du måske ikke et par verdensure på det. Du kan ændre verdensure på dit Apple Watch, men du skal bruge din iPhone til at gøre ..


Hvorfor skal du slutte en pc til dit tv (rolig, det er nemt!)

Hardware Jul 11, 2025

Det er helt enkelt at tilslutte en pc til dit tv. Alt, hvad du normalt har brug for, er et HDMI-kabel, og så kan du få adgang til alle medietjenester, streaming-sider og pc-spil -..


IBMs Jeopardy Playing Computer Watson viser fordelene, hvordan det gøres [Video]

Hardware Aug 24, 2025

UCACHED INDHOLD Tidligere på ugen tog IBMs deres Jeopardy med at spille supercomputer Watson for at spille en øvelsesrunde med to menneskelige (og dygtige) spillere. Watson tår..


Begynder: Gruppér lignende apps ved hjælp af mapper på din iOS 4 iPhone eller iPod Touch

Hardware Sep 27, 2025

UCACHED INDHOLD Har du mange apps på din iPhone eller iPod Touch og er træt af at bevæge dig gennem skærme for at få den, du har brug for? Her ser vi på en ny funktion i iOS 4, der la..


Kategorier