« Отговор #4 -: Jun 28, 2015, 03:04 »
Всъщност, теоретично USB 3.0 позволява работата и в двата режима на един и същ порт без разкачане на устройства и реинициализация, дефинирано е като допълнение към USB протокола. Практически, никога не съм чувал това някъде да се ползва. А иначе засега при USB OTG единственото, което определя дали ще си в хост или slave режим е дали имаш напрежение на един от пиновете на кабела, точно толкова просто е. Това е и причината да има отделни OTG кабели и с кабела дето връзваш телефона към компютъра да не можеш да връзваш примерно външна флаш памет към телефона. Не знам дори USB контролера за OTG цели дали има два чипа дето обслужват host и slave "режимите", но може и да е така. Според мен проблемът това да става и на десктоп/лаптоп машините е предимно софтуерен - не е огромен проблем да се направи USB OTG контролер за десктоп машина примерно, след като такъв съществува на разни таблети и телефони. Обаче не е толкова лесно да представяш произволни устроиства като mass storage примерно или да ползваш клавиатурата и мишката им като HID устройства или да ползваш навързаната уебкамера и т.н. Бая мазане и кодене ще падне по операционната система, за да стане и това е сценарий, който вълнува прекалено малко хора, за да си оправдае усилията. При телефоните и таблетите има повече смисъл, но пък там хардуерът си е "фиксиран" - еди каква си NAND памет, еди каква си SD памет, правени от един и същ производител, с едни и същи характеристики, та няма безумно много частни случаи да се решават.
Теоретично също OTG отваря и security проблеми, защото DMA трансфери могат да се иницират от страна на хоста, макар че това не е толкова просто направено колкото с firewire, но все някой ще измисли как да се справи като хората и ще настъпят забавни моменти понеже няма десктоп/лаптоп система без USB контролер и ако масово въпросния има OTG наклонности и операционните системи са щедри, ще настъпи забава. В случаят с firewire, нещата са доста дебели - можеш да изчетеш цялата физическа памет на хоста, можеш да я модифицираш, а в нея има пароли, ключове разни. Доста хора се ошашкват примерно като видят за пръв път как се отключва заключена уиндоуска машина, стига да има firewire порт и без да знаеш паролата.