Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Existem três tipos de drivers WDM: drivers de barramento, drivers de função e drivers de filtro.
Um controlador de barramento aciona um dispositivo de E/S de barramento individual e fornece funcionalidade por cada slot que não depende do dispositivo. Os motoristas de ônibus também detetam e relatam dispositivos filhos que estão conectados ao barramento.
Um driver de função controla um dispositivo específico.
Um driver de filtro filtra solicitações de Entrada e Saída (E/S) para um dispositivo, uma classe de dispositivos, ou um barramento.
Neste contexto, um barramento é qualquer dispositivo ao qual outros dispositivos físicos, lógicos ou virtuais estão conectados. Um barramento inclui barramentos tradicionais, como SCSI e PCI, bem como portas paralelas, portas seriais e portas i8042.
É importante que os desenvolvedores de drivers entendam os diferentes tipos de drivers WDM e saibam que tipo de driver eles estão escrevendo. Por exemplo, se um driver lida com cada IRP Plug and Play e como lidar com tais IRPs depende do tipo de driver que está a ser escrito (driver de bus, driver de função ou driver de filtro).
A figura a seguir mostra a relação entre o controlador de barramento, o controlador de função e os controladores de filtro para um dispositivo.
Cada dispositivo normalmente tem um driver de barramento para o barramento de E/S pai, um driver de função para o dispositivo e zero ou mais drivers de filtro para o dispositivo. Um design de driver que requer muitos drivers de filtro não produz o desempenho ideal.
Os drivers na figura anterior são dos seguintes tipos:
Um motorista de ônibus presta serviços a um controlador, adaptador ou ponte de barramento. Motoristas de ônibus são motoristas obrigatórios; Há um motorista de ônibus para cada tipo de ônibus em uma máquina. A Microsoft fornece drivers de ônibus para os ônibus mais comuns. IHVs e OEMs podem fornecer outros motoristas de ônibus.
Um driver de filtro de barramento normalmente agrega valor a um barramento e é fornecido pela Microsoft ou pelo OEM responsável pelo sistema. Pode haver qualquer número de drivers de filtro de ônibus para um ônibus.
Os drivers de filtro de nível inferior normalmente modificam o comportamento do hardware do dispositivo. Eles são opcionais e normalmente são fornecidos por IHVs. Pode haver qualquer número de drivers de filtro de nível inferior para um dispositivo.
Um controlador de função é o controlador principal para um dispositivo. Um driver de função é normalmente escrito pelo fornecedor do dispositivo e é necessário (a menos que o dispositivo seja usado no modo bruto).
Os drivers de filtro de nível superior geralmente fornecem recursos de valor agregado para um dispositivo. Eles são opcionais e normalmente são fornecidos por fornecedores independentes de hardware (IHVs).
Os tópicos a seguir descrevem, em detalhe, os três tipos gerais de drivers WDM: drivers de barramento, drivers de funcionalidades, e drivers de filtro. Também está incluído um exemplo de camada de driver WDM que utiliza amostras de drivers USB.