da.phhsnews.com


da.phhsnews.com / Er der en faktisk USB-kommunikationsprotokol?

Er der en faktisk USB-kommunikationsprotokol?


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

Dagens Spørgsmål og Svar-sessions kommer til vores side med SuperUser-en underafdeling 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 ønsker at vide, om der virkelig er en egentlig USB-kommunikationsprotokol:

Ifølge Wikipedia, USB:

  • Defineres kabler, stik og kommunikation protokoller brugt 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 forbinder en USB-enhed til en maskine (f.eks. Ubuntu eller nogen form for Linux).
  2. Linux finder enhedsdriveren for den pågældende enhed på en eller anden måde ( bonus hvis du ved! Enheden er nu forbundet under
  3. / dev / theDevice . Brugerplads apps kan nu læses og skrives til
  4. / dev / theDevice og driveren håndterer input og output på lavt niveau til den underliggende enhed / hardware. Så vidt jeg kan fortælle, vises en

USB-kommunikationsprotokol ikke i dette flow. Hvis min forståelse er korrekt, er USB bare kablet og den elektriske forbindelse mellem pc'en og enheden. Har jeg fejl her? Implementerer USB faktisk en form for lavprotokol, der understreger strømmen ovenfor? Hvis det er tilfældet, hvad er det, og hvordan fungerer det med en 30.000 fods visning?

Er der en faktisk USB-kommunikationsprotokol?

Svaret

SuperUser-bidragsydere RedGrittyBrick og projectdp har svaret for os. Først op, RedGrittyBrick:

Ja (se USB-protokoller).

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

USB-enheder kan f.eks. niveau skabeloner som masselagring, tastatur, human interface enhed osv. og styres af en generisk enhedsdriver. Nogle USB-enheder kan kommunikere på et lavere niveau, så operativsystemets understøttede USB-understøttelse kan genkende, at der kræves enhedsspecifikke højere niveaudrivere.

Følges af svaret fra projektdp:

Spørgsmål

Er der en lavniveau USB-kommunikationsprotokol i aktion, og hvad er det?

Svar

Ja, der er. USB-specifikationen indeholder USB-protokollen, der definerer den måde, hvorpå 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 specifikationer om, hvordan USB-protokollen fungerer, er denne OSDev wiki hjælpsom. 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 Linux og indlæser enhedsdriveren til den pågældende enhed?

Bonus Svar

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å hardware side udføres detektionen af ​​USB Host Controller. Derefter i kernen overfører Host Controller Driveren og oversætter de lavtliggende bit på ledningen til USB-protokollformateret information. Denne information bliver så befolket i usbcore-driveren i kernen.

Jeg omskrevet fra denne fremragende Opensourceforu-artikel, som har meget mere detaljeret og klarhed om dit spørgsmål i Linux-konteksten.

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

Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Se hele diskussionsgruppen her.



Sådan ændres Windows 'standardvaluta fra dollar til euro

Sådan ændres Windows 'standardvaluta fra dollar til euro

Når man beskæftiger sig med valuta i Windows og Windows-programmer, f.eks. Excel, bruger Windows sit standard valutasymbol. Hvis du vil bruge et andet symbol (f.eks. Euro i stedet for dollar), er det nemt at ændre ved hjælp af en indstilling i vinduets kontrolpanel. Proceduren for ændring af denne indstilling er ens i Windows 7, 8 og 10 med Små forskelle i, hvordan du får adgang til kontrolpanelindstillingen.

(how-to)

8 værktøjer til oprettelse af perfekt størrelse billeder til sociale medier

8 værktøjer til oprettelse af perfekt størrelse billeder til sociale medier

Hvis du bruger sociale medier, ved du, hvad en skræmmende opgave det kan være at korrekt beskære, redigere og uploade et anstændigt udseende billede til dine Facebook-, Google+ og Twitter-konti. Hvert websted har et andet krav til billedets størrelse, og de fleste af dem har flere billeder som Facebook med et coverbillede og et profilbillede.Du k

(How-to)