Почетна » како да » Постоји ли актуални УСБ комуникацијски протокол?

    Постоји ли актуални УСБ комуникацијски протокол?

    Већина нас никада није много размишљала о нашим УСБ уређајима, само смо их укључили и заборавили на њих. Али шта ако сте радознали тип који жели да зна више о томе како УСБ ради? Данашња постова за питања и одговоре СуперУсер имају одговоре на питања знатижељног читатеља.

    Данашња сесија питања и одговора долази нам захваљујући СуперУсер-у - подјела Стацк Екцханге-а, груписане од стране заједнице веб-локација за питања и одговоре.

    Фотографија љубазношћу Евилелке Ковалски (Флицкр).

    Питање

    СуперУсер читач смееб жели да зна да ли заиста постоји УСБ комуникациони протокол:

    Према Википедији, УСБ:

    • Дефинише каблове, конекторе и комуникационе протоколе који се користе у сабирници за повезивање, комуникацију и напајање између рачунара и електронских уређаја.

    Али да ли постоји стварна УСБ комуникациони протокол? Моје разумевање је да:

    1. Повежете УСБ уређај са машином (Убунту или било која врста Линука, на пример).
    2. Линук некако налази управљачки програм уређаја за тај уређај (бонус ако знате!) и учитава га.
    3. Уређај је сада повезан под / дев / тхеДевице.
    4. Апликације за кориснички простор сада могу читати и писати / дев / тхеДевице и управљачки програм рукује ниским нивоом улаза и излаза на основни уређај / хардвер.

    Колико могу да кажем, а УСБ комуникациони протокол не појављује се нигде у овом току. Ако је моје разумевање тачно, УСБ је само кабл и електрична веза између рачунара и уређаја.

    Да ли грешим овде? Да ли УСБ заиста имплементира некакав протокол ниског нивоа који наглашава проток изнад? Ако јесте, шта је то и како функционише на погледу од 30.000 стопа?

    Да ли постоји стварни УСБ протокол за комуникацију?

    Одговор

    СуперУсер сарадници РедГриттиБрицк и пројецтдп имају одговор за нас. Прво горе, РедГриттиБрицк:

    Да (погледајте УСБ протоколе).

    Колико ја разумем, УСБ спецификација дефинише комплексан скуп слојевитих протокола и профила уређаја.

    На пример, УСБ уређаји се могу прилагодити шаблонима високог нивоа као што су масовно складиштење, тастатура, људски интерфејс, итд. И њима управља генерички управљачки програм уређаја. Неки УСБ уређаји могу да комуницирају на нижем нивоу тако да подршка оперативног система на ниском нивоу може да препозна да су потребни виши нивои управљачких програма за одређени уређај..

    Следи одговор из пројецтдп:

    Питање

    Да ли постоји УСБ комуникациони протокол ниског нивоа и шта је то?

    Одговор

    Да, има. УСБ спецификација укључује УСБ протокол који дефинира начин на који се сабирница користи на разини бита. То би био протокол ниског нивоа који је у основи протокола вишег нивоа (тј. Масовно складиштење, ХИД, итд.).

    За детаље о томе како ради УСБ протокол, овај ОСДев вики је од помоћи. Ево још једног занимљивог описа који користи дијаграме секвенци за опис различитих трансакција података по УСБ протоколу.

    Бонус Куестион

    Како Линук проналази и учитава управљачки програм за тај уређај?

    Бонус Ансвер

    На Линуку када се користи кернел са омогућеним УСБ-ом, радни УСБ уређај ће бити детектован преко хардвера и кернела због УСБ спецификације. На страни хардвера, детекцију врши УСБ Хост Цонтроллер. Затим у језгру Хост Цонтроллер Дривер преузима и преводи ниске нивое битова на жицу у форматираној протоколу. Ове информације се затим попуњавају у усбцоре драјверу у кернелу.

    Парафразирао сам из овог одличног чланка Опенсоурцефору, који има много више детаља и јасноћу о вашем питању у Линук контексту.

    Обавезно проверите остатак живахне дискусије преко линка испод који се дели испод!


    Имате ли нешто да додате објашњењу? Звучи у коментарима. Желите ли прочитати више одговора од других технолошки паметних Стацк Екцханге корисника? Погледајте цео дискусију овде.