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.
Um motorista de barramento presta serviços a um controlador, adaptador ou ponte de barramento (consulte a figura Possíveis camadas de driver ). A Microsoft fornece drivers de 'bus' para os 'buses' mais comuns, como PCI, PnP ISA, SCSI e USB. Outros motoristas de ônibus podem ser fornecidos por IHVs ou OEMs. Motoristas de ônibus são motoristas obrigatórios; Há um motorista de ônibus para cada tipo de ônibus em uma máquina. Um motorista de ônibus pode atender mais de um ônibus se houver mais de um ônibus do mesmo tipo na máquina.
As principais responsabilidades de um motorista de ônibus são:
Enumere os dispositivos em seu barramento.
Responda aos IRPs de Plug and Play e aos IRPs de gestão de energia.
Acesso multiplex ao ônibus (para alguns ônibus).
Administre 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 Objetos de Dispositivo e Pilhas de Dispositivos.) O método que um controlador de barramento utiliza para identificar dispositivos conectados depende do barramento específico.
Um controlador de barramento executa determinadas operações em nome dos dispositivos no seu barramento, incluindo aceder a registos de dispositivos para alterar fisicamente o estado de energia de um dispositivo. Por exemplo, quando o dispositivo entra em modo de repouso, o driver de barramento define os registos do dispositivo para colocá-lo no estado de energia adequado.
Um controlador de barramento não lida com requisições de leitura e escrita 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 é que o driver de barramento pai manipula 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 controlador de barramento pode ser implementado como um par controlador/minicontrolador, da mesma forma que um par de controlador de porta SCSI/minicontrolador de porta controla um adaptador de barramento de anfitrião SCSI (HBA). Em tais pares de driver, o minidriver é vinculado ao segundo driver, que é uma DLL.