2010-07-08 15 views
5

Qual è la differenza tra un driver (driver di periferica) e uno stack di driver? Continuo a sentire la gente parlare di "pile di autisti" ma non ne ho mai sentito parlare prima ... Grazie!driver di periferica e stack di driver

+0

Santa merda, Google indicizzato questa pagina entro 1 minuto di esso che è pubblicato. Questo è un buon SEO proprio lì! http://www.google.com/search?q=driver+stacks&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a – Marko

+4

@Marko: È assolutamente divertente quando qualcuno pubblica una domanda, uno dei commenti è "google it" e la domanda stessa è già il risultato principale su google per una combinazione di parole chiave pertinenti. –

+0

@Anon - Amen :) – Marko

risposta

5

Un autista è ... beh ... un autista.

Uno stack di driver si verifica quando i driver si collegano l'un l'altro, aggiungendo ciascuno un bit alla catena. Come, per esempio, i driver OpenGL o DirectX che utilizzano il driver della scheda video, che a sua volta utilizza PCI Express o AGP o qualsiasi driver per impostare risorse e pixel push e simili. Oppure i driver dei tuoi dispositivi USB che, ovviamente, devono utilizzare i driver USB per comunicare.

È tecnicamente possibile avere uno "stack" composto da un driver, ma quando la gente dice "stack", quasi sempre ne parla più di uno. O stanno solo cercando di sembrare che sappiano di cosa stanno parlando.

0

Lo stack Driver fa riferimento a una catena verticale teorica di driver ognuno dei quali esegue un lavoro specifico sulla linea dall'HW al codice utente o giù dal codice utente all'HW.

In Windows OS, i messaggi (con dati) per l'HW sono modellati in IRP (pacchetto di richiesta IO) che passano attraverso questa linea da un lato all'altro e nel modo in cui ogni driver li gestisce e fa il suo funzionamento.

Un esempio che renderà più semplice la comprensione è un driver principale in Windows chiamato "Function Driver" e per qualche motivo si desidera mettere un "Filtro Driver" sopra di esso per fare qualche piccolo lavoro come la modifica di alcuni dati dall'utente modalità prima che raggiunga il tuo driver principale. Potrebbe essere necessario se si dispone già di un driver funzionante che non si desidera o non è possibile modificare.

Vedi questo saggio sul driver Windows pila: https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/driver-stacks

Problemi correlati