Estensioni USB 2.0
Questa sezione descrive i comandi di estensione del debugger USB 2.0. Questi comandi visualizzano informazioni dalle strutture di dati gestite dai driver nello stack di driver USB 2.0. Per altre informazioni su questi tre driver, vedere Driver sul lato host USB in Windows.
I comandi di estensione del debugger USB 2.0 vengono implementati in Usbkd.dll. Per caricare i comandi Usbkd, immettere .load usbkd.dll nel debugger.
Albero USB 2.0
L'albero USB 2.0 contiene i nodi del dispositivo che rappresentano le unità di esecuzione nei dispositivi controller host EHCI insieme ai nodi figlio che rappresentano hub e dispositivi connessi. Questo diagramma mostra un esempio di albero USB 2.0.
Il diagramma mostra un dispositivo controller host fisico con due unità di esecuzione. Ogni unità di esecuzione viene visualizzata come nodo del dispositivo nell'albero dei dispositivi Plug and Play. Un'unità di esecuzione viene visualizzata come nodo controller host USB UHCI e l'altra unità di esecuzione mostra come nodo controller host USB EHCI. Ognuno di questi nodi ha un nodo figlio che rappresenta un hub radice USB. Ogni hub radice ha un singolo nodo figlio che rappresenta un dispositivo USB connesso.
Si noti che il diagramma non è un albero nel senso che non tutti i nodi derivano da un singolo nodo padre. Tuttavia, quando si usa il termine albero USB 2.0, si fa riferimento al set di nodi del dispositivo che rappresentano le unità di esecuzione nei dispositivi controller host EHCI insieme ai nodi per hub e dispositivi connessi.
Introduzione al debug USB 2.0
Per avviare il debug di un problema USB 2.0, immettere il comando !usb2tree . Il comando !usb2tree visualizza un elenco di comandi e indirizzi che è possibile usare per analizzare controller host, hub, porte, dispositivi, endpoint e altri elementi dell'albero USB 2.0.
Contenuto della sezione
- !usbkd.usbhelp
- !usbkd._ehcidd
- !usbkd._ehciep
- !usbkd._ehciframe
- !usbkd._ehciqh
- !usbkd._ehciregs
- !usbkd._ehcisitd
- !usbkd._ehcistq
- !usbkd._ehcitd
- !usbkd._ehcitfer
- !usbkd._ehciitd
- !usbkd.doesdumphaveusbdata
- !usbkd.isthisdumpasyncissue
- !usbkd.urbfunc
- !usbkd.usb2
- !usbkd.usb2tree
- !usbkd.usbchain
- !usbkd.usbdevobj
- !usbkd.usbdpc
- !usbkd.ehci_info_from_fdo
- !usbkd.usbdevh
- !usbkd.usbep
- !usbkd.usbfaildata
- !usbkd.usbhcdext
- !usbkd.usbdstatus
- !usbkd.usbhcdhccontext
- !usbkd.usbhcdlist
- !usbkd.usbhcdlistlogs
- !usbkd.usbhcdlog
- !usbkd.usbhcdlogex
- !usbkd.usbhcdpnp
- !usbkd.usbhcdpow
- !usbkd.hub2_info_from_fdo
- !usbkd.usbhuberr
- !usbkd.usbhubext
- !usbkd.usbhubinfo
- !usbkd.usbhublog
- !usbkd.usbhubmdevext
- !usbkd.usbhubmdpd
- !usbkd.usbhubpd
- !usbkd.usbhubs
- !usbkd.usblist
- !usbkd.usbpo
- !usbkd.usbpdos
- !usbkd.usbpdoxls
- !usbkd.usbpnp
- !usbkd.usbportisasyncadv
- !usbkd.usbportmdportlog
- !usbkd.usbportmddcontext
- !usbkd.usbportmddevext
- !usbkd.usbtriage
- !usbkd.usbtt
- !usbkd.usbtx
- !usbkd.usbusb2ep
- !usbkd.usbusb2tt
- !usbkd.usbver