Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um motorista de ônibus atende um controlador de ônibus, um adaptador ou uma ponte (consulte a figura de Camadas de Driver Possíveis ). A Microsoft fornece drivers de barramento para a maioria dos barramentos comuns, como PCI, PnpISA, SCSI e USB. Outros motoristas de ônibus podem ser fornecidos por IHVs ou OEMs. Os motoristas de ônibus são indispensáveis; há um motorista de ônibus para cada tipo de ônibus em uma máquina. Um motorista de ônibus poderá atender mais de um ônibus se houver mais de um ônibus do mesmo tipo no computador.
As principais responsabilidades de um motorista de ônibus são:
Enumerar os dispositivos em seu barramento.
Responda aos IRPs plug e play e aos IRPs de gerenciamento de energia.
Acesso multiplex ao ônibus (para alguns ônibus).
Administrar genericamente os dispositivos em seu barramento.
Os motoristas de ônibus são essencialmente motoristas de função que também enumeram crianças.
Durante a enumeração, um controlador de barramento identifica os dispositivos no seu barramento e cria objetos de dispositivo para eles. (Para obter informações sobre objetos de dispositivo, consulte Device Objects e Device Stacks.) O método que um driver de barramento usa para identificar dispositivos conectados depende do barramento específico.
Um controlador de barramento executa determinadas operações em nome dos dispositivos em seu barramento, incluindo o acesso aos registros de dispositivo para alterar fisicamente o estado de energia de um dispositivo. Por exemplo, quando o dispositivo entra em suspensão, o motorista do ônibus define os registros de dispositivo para colocar o dispositivo no estado de energia do dispositivo adequado.
Um controlador de barramento não lida com solicitações de leitura e gravação para os dispositivos subordinados que estão conectados ao seu barramento. As solicitações de leitura e gravação em um dispositivo filho são tratadas pelo driver de função do dispositivo filho. Somente se o dispositivo filho estiver sendo usado no modo bruto o driver do barramento pai manipulará leituras e gravações para o dispositivo.
Como um driver de barramento atua como o driver de função para seu controlador, adaptador ou ponte, ele também gerencia a política de energia do dispositivo para esses componentes.
Um driver de barramento pode ser implementado como um par driver/minidriver, da mesma forma que um par de drivers de porta/miniport SCSI controla um HBA (Host Bus Adapter) SCSI. Nesses pares de driver, o minidriver é vinculado ao segundo driver, que é uma DLL.