Możliwa duplikat:
Czy istnieje sposób, aby komputer wyglądał jak dysk USB na urządzeniu, które odczytuje zawartość z dysku USB?
Czy można używać komputera jako napędu zewnętrznego przez USB?
Jak mogę przełączyć USB komputera w tryb urządzenia i służyć jako dysk na kluczu do szybkiego przesyłania plików między komputerami bez specjalnego kabla? Próbowałem Ethernet, ale maksymalne, jakie otrzymuję, to 8 MB / s.
Wiem, że jest to możliwe, ponieważ mam wbudowane urządzenie Linux, które może łatwo przełączać się z trybu hosta na tryb hosta iz powrotem, ale jest to ARM i wierzę, że jego program do przełączania nie będzie działał na architekturze x86.
Mam Mac OS X 10.7 / Ubuntu Natty / Windows 7 dostępny na PC, nie obchodzi mnie, na której platformie to będzie.
Odpowiedzi:
Jest to możliwe, gdy obsługuje go Twój sprzęt . Kontrolery hosta PC nie. Czynią to układy USB używane w typowych wbudowanych urządzeniach ARM / Linux. To natychmiast wyjaśnia, dlaczego program przełączający nie może działać: wysyła określone polecenie do określonego sprzętu. Nawet jeśli możesz zhakować oprogramowanie, aby wysłać polecenie do kontrolera USB komputera, nadal go nie zrozumie. (Och, i jest część tego, że jest kompilowana dla ARM, a nie x86)
Napisałem kod bootloadera dla wbudowanego urządzenia ARM z takim układem USB. Te układy USB są dość niezależne; jak myślisz, jak robią 480 Mb / s na procesorze 200 MHz?
źródło
Możesz dostać jeden z nich. Musisz jednak napisać własne sterowniki.
źródło