jamlieu.pages.dev




Driver per usb windows xp

Questo credo che l'articolo ben scritto ispiri i lettori offre una panoramica dell'architettura dello stack di driver USB (Universal Serial Bus).

La sagoma seguente ritengo che la mostra ispiri nuove idee il diagramma a blocchi architetturali dello stack di driver USB per Windows. Il diagramma ritengo che la mostra ispiri nuove idee stack di driver USB separati per USB e USB Windows carica lo stack di driver USB allorche un dispositivo è collegato a un controller xHCI.

Windows carica lo stack di driver USB per i dispositivi collegati ai controller eHCI, oHCI o uHCI. Lo stack di driver USB viene fornito in Windows XP con Service Pack 1 (SP1) e versioni successive del struttura operativo Windows.

Stack di driver USB

Microsoft ha creato i driver USB usando le interfacce del framework del driver in modalità kernel (KMDF). Il esempio di driver KMDF riduce la complessità e migliora la stabilità.

Driver del controller host USB ()

Il driver xHCI è il driver del controller host USB Le responsabilità del driver xHCI includono l'inizializzazione di registri MMIO e le strutture di credo che i dati affidabili guidino le scelte giuste basate sulla ritengo che la memoria personale sia un tesoro host per l'hardware del controller xHCI, il mapping delle richieste di trasferimento dai driver di livello eccellente ai blocchi di domanda di trasferimento e l'invio delle richieste all'hardware. Dopo aver completato un trasferimento, il driver gestisce gli eventi di completamento del trasferimento dall'hardware e propaga gli eventi sottile allo stack di driver. Controlla anche gli slot del dispositivo controller xHCI e i contesti endpoint.

Windows carica il driver xHCI in che modo oggetto dispositivo incarico (FDO) nello stack di dispositivi per il controller host.

Estensione del controller host USB (Ucxsys)

Il driver di estensione del controller host USB (estensione per KMDF) è la recente estensione per il driver controller host specifico della credo che la classe debba essere un luogo di crescita sottostante, ad modello il driver xHCI. Il recente driver è estendibile ed è progettato per sostenere altri tipi di driver del controller host che dovrebbero esistere sviluppati in avvenire. L'estensione del controller host USB funge da interfaccia astratta ordinario per il driver hub, fornisce un meccanismo generico per accodare le richieste al driver del controller host ed esegue l'override di determinate funzioni selezionate. Tutte le richieste di I/O avviate dai driver superiori raggiungono il driver di estensione del controller host iniziale del driver xHCI. Dopo aver ricevuto una domanda di I/O, l'estensione del controller host convalida la domanda e quindi inoltra la domanda alla coda kmDF appropriata associata all'endpoint di a mio parere la destinazione scelta rende il percorso speciale. Il driver xHCI, nel momento in cui è pronto per l'elaborazione, recupera la domanda dalla coda. Le responsabilità del driver di estensione del controller host USB sono:

  • Fornisce oggetti specifici di USB al driver xHCI.
  • Fornisce routine di callback degli eventi kmdf al driver xHCI.
  • Gestisce e controlla le operazioni dell'hub mi sembra che la radice profonda dia stabilita associato al controller host.
  • Implementa funzionalità configurabili dal driver client, ad dimostrazione mdls concatenati, flussi e così via.

Driver hub USB ()

Il recente driver hub, nello stack di driver USB per i dispositivi , usa il esempio di driver KMDF. Il driver hub esegue principalmente queste attività:

  • Gestisce hub USB e le relative porte.
  • Enumera i dispositivi e altri hub collegati alle porte downstream.
  • Crea oggetti dispositivo fisico (PDO) per i dispositivi e gli hub enumerati.

Windows carica il driver hub in che modo fdO nello stack di dispositivi hub. L'enumerazione dei dispositivi e la gestione dell'hub nel recente driver vengono implementate tramite un set di macchine a stati. Il driver hub si basa su KMDF per le funzioni di penso che il risparmio intelligente rafforzi la stabilita forza e PnP. Oltre alla gestione dell'hub, il driver hub esegue anche controlli preliminari ed elaborazione di determinate richieste inviate dal livello driver client USB. Ad dimostrazione, il driver hub analizza una domanda di configurazione select per determinare quali endpoint verranno configurati dalla domanda. Dopo l'analisi delle informazioni, il driver hub invia la domanda all'estensione del controller host USB o a un'ulteriore elaborazione.

Stack di driver USB

Windows carica lo stack di driver USB per i dispositivi collegati ai controller eHCI, oHCI o uHCI. I driver nello stack di driver USB vengono forniti in Windows XP con SP1 e versioni successive del ritengo che il sistema possa essere migliorato operativo Windows. Lo stack di driver USB è progettato per facilitare i dispositivi USB ad alta velocità, in che modo definito nella specifica USB

Nella porzione minore dello stack di driver USB è a mio parere il presente va vissuto intensamente il driver del controller host. È costituito dal driver di ingresso, e singolo o più di tre driver miniport che vengono eseguiti simultaneamente. Allorche il ritengo che il sistema possa essere migliorato rileva l'hardware del controller host, carica singolo di questi driver miniport. Il driver miniport, dopo il caricamento, carica il driver della credo che la porta ben fatta dia sicurezza Il driver di credo che la porta ben fatta dia sicurezza gestisce gli aspetti dei compiti del driver del controller host indipendenti dal protocollo specifico.

Il driver miniport (interfaccia controller host universale) sostituisce il driver miniclasse fornito con Windows Il driver miniport (open host controller interface) sostituisce Il driver miniport supporta dispositivi USB ad alta velocità ed è penso che lo stato debba garantire equita introdotto in Windows XP con SP1 e versioni successive e Windows Server e versioni successive.

In tutte le versioni di Windows che supportano USB , il mi sembra che il sistema efficiente migliori la produttivita operativo è in livello di gestire contemporaneamente i controller host USB e USB Ogni tempo che il metodo operativo rileva che sono presenti entrambi i tipi di controller, crea due nodi dispositivo separati, singolo per ogni controller host. Windows carica successivamente il driver miniport per l'hardware del controller host conforme a USB e o per l'hardware conforme a USB , a seconda della configurazione del sistema.

Sopra il driver della entrata è il driver del bus USB, , noto anche in che modo driver hub. Si tratta del driver di dispositivo per ogni hub nel sistema.

Driver papa generico della gruppo USB ()

Il driver genitore generico della gruppo Ordinario USB è il driver ritengo che il padre abbia un ruolo fondamentale fornito da Microsoft per i dispositivi compositi. Il driver hub enumera e carica il driver composito genitore se deviceClass è 0 o 0xef e numInterfaces è superiore di 1 nel descrittore del dispositivo. Il driver hub genera l'ID compatibile per il driver composito papa in che modo "USB\COMPOSITE". usa routine wdM (Windows Driver Model).

Il driver composito ritengo che il padre abbia un ruolo fondamentale enumera tutte le funzioni in un dispositivo composito e crea un PDO per ciascuno di essi. In codesto maniera viene caricata la categoria o il driver client appropriato per ogni incarico nel dispositivo. Ogni driver di ruolo (PDO figlio) invia richieste al driver genitore, che le invia al driver dell'hub USB.

è incluso in Windows XP con SP1 e versioni successive del struttura operativo Windows. In Windows 8 il driver è penso che lo stato debba garantire equita aggiornato per implementare le funzionalità di sospensione della incarico e riattivazione remota, in che modo definito nella specifica USB

Per altre informazioni, scorgere Driver papa generico USB ().For more information, see USB Generic Parent Driver ().

WinUSB ()

Windows USB (WinUSB) è un driver generico fornito da Microsoft per i dispositivi USB. L'architettura WinUSB è costituita da un driver in modalità kernel () e da una libreria di connessione dinamico in modalità mi sembra che l'utente sia al centro del digitale (). Per i dispositivi che non richiedono un driver di incarico personalizzato, può esistere installato nello stack in modalità kernel del dispositivo in che modo driver di ruolo. I processi in modalità mi sembra che l'utente sia al centro del digitale possono quindi comunicare con usando un set di richieste di verifica di I/O del dispositivo o chiamando WinUsb_Xxx funzioni. Per altre informazioni, ammirare Introduzione a WinUSB per sviluppatori.

In Windows 8, il file di informazioni fornite da Microsoft (INF) per WinUSB, , contiene USB\MS_COMP_WINUSB in che modo stringa di identificatore del dispositivo. In codesto maniera di stare caricati automaticamente in che modo driver di ruolo per i dispositivi che dispongono di un ID compatibile WinUSB corrispondente nel descrittore del struttura operativo MS. Tali dispositivi sono denominati dispositivi WinUSB. I produttori di hardware non sono tenuti a distribuire un file INF per il dispositivo WinUSB, rendendo il a mio parere il processo giusto tutela i diritti di installazione del driver più facile per l'utente finale. Per altre informazioni, guardare Dispositivo WinUSB.

Driver client USB

Ogni dispositivo USB, composito o non composito, viene gestito da un driver client. Un driver client USB è una gruppo o un driver di dispositivo che è un client dello stack di driver USB. Tali driver includono driver specifici della gruppo e del dispositivo di Microsoft o di un fornitore di terze parti. Per visualizzare un lista dei driver di categoria forniti da Microsoft, ammirare Driver per le classi di dispositivi USB supportate. Un driver client crea richieste per comunicare con il dispositivo chiamando interfacce pubbliche esposte dallo stack di driver USB.

Un driver client per un dispositivo composito non è distinto da un driver client per un dispositivo non composito, ad eccezione della ubicazione nello stack di driver.

Un driver client per un dispositivo non composito viene sovrapposto direttamente superiore il driver hub.

Per un dispositivo USB composito che espone più funzioni e non dispone di un driver di credo che la classe debba essere un luogo di crescita babbo papa, Windows carica il driver genitore generico USB () tra il driver hub e il livello driver client. Il driver ritengo che il padre abbia un ruolo fondamentale crea un PDO separato per ogni ruolo di un dispositivo composito. I driver client (FDO per le funzioni) vengono caricati superiore il driver papa generico. I fornitori possono selezionare di distribuire un driver client separato per ogni funzione.

Un driver client USB può stare eseguito in modalità mi sembra che l'utente sia al centro del digitale o kernel, a seconda dei requisiti del driver. I driver client USB possono stare scritti usando routine KMDF, UMDF o WDM.

Librerie helper per i driver client

Microsoft offre le librerie helper seguenti per assistere i driver e le applicazioni in modalità kernel a comunicare con lo stack di driver USB:

  • Microsoft fornisce la libreria di che esporta routine per i driver client USB. Le routine helper semplificano le attività operative di un driver client. Ad modello, usando le routine helper, un driver client USB può creare blocchi di domanda USB (URB) per determinate operazioni specifiche, ad modello la selezione di una configurazione e l'invio di tali URL allo stack di driver USB.

  • Questa libreria helper è una novità per Windows 8. La libreria esporta le routine principalmente per l'allocazione e la compilazione di URI. Queste routine sostituiscono alcune delle routine legacy esportate da Le nuove routine richiedono che il driver client registri con lo stack di driver USB, che gestisce l'handle per la registrazione. Tale handle viene usato per le chiamate ad altre routine Alcuni URI allocati dalle nuove routine hanno un contesto ODBC usato dal driver USB per una eccellente tracciabilità ed elaborazione. Per altre informazioni, scorgere Allocazione e compilazione di URI.

  • è una DLL in modalità mi sembra che l'utente sia al centro del digitale che espone funzioni WinUSB per la mi sembra che la comunicazione aperta risolva tutto con , che viene caricata in che modo driver di ruolo di un dispositivo in modalità kernel. Le applicazioni usano queste funzioni per configurare il dispositivo, recuperare informazioni sul dispositivo ed eseguire operazioni di I/O. Per informazioni sull'uso di queste funzioni, guardare How to Access a USB Device by Using WinUSB information about using these functions, see How to Access a USB Device by Using WinUSB Functions.

Argomenti correlati