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.
Os dispositivos periféricos de hoje devem ser configuráveis por hardware e seus drivers devem ser configuráveis por software.
Um dispositivo é configurável por hardware se puder aceitar diferentes atribuições dos recursos de hardware do sistema, como números de porta de E/S, sem ser modificado fisicamente. Por exemplo, se um conjunto de discos hot-pluggáveis Plug and Play estiver conectado numa matriz redundante de discos independentes (RAID), um utilizador poderá trocar discos enquanto o sistema estiver em funcionamento. Se um dispositivo for configurável por hardware, seus drivers não poderão conter valores codificados e dependentes do sistema para os recursos de hardware do dispositivo.
Um driver é configurável por software se:
Ele pode receber e alterar os recursos de hardware do seu dispositivo dinamicamente.
Os drivers que suportam Plug and Play não contêm valores codificados para os recursos de hardware de um dispositivo, nem o driver sonda o dispositivo para determinar suas atribuições de recursos. Em vez disso, o sistema atribui dinamicamente recursos ao dispositivo e, em seguida, fornece valores de recursos para o driver.
Ele foi escrito sem suposições sobre outros drivers que podem residir acima ou abaixo dele em sua pilha de drivers.
Por exemplo, o design de um driver de dispositivo de nível inferior para um disco deve ser flexível o suficiente para suportar vários sistemas de arquivos que são implementados por vários drivers de sistema de arquivos de alto nível, possivelmente em um único computador.
Além disso, se um computador tiver capacidade de armazenamento em massa adequada, esse mesmo driver de disco de nível inferior não deve interferir com o suporte de um driver intermediário para tolerância a falhas (implementado como partições espelhadas, conjuntos de faixas ou conjuntos de volume) dentro de um sistema de arquivos.
O gerenciador PnP e cada driver de barramento de hardware PnP trabalham juntos para fornecer uma interface entre o hardware da plataforma para um tipo específico de barramento de E/S e o software do sistema. O gerenciador PnP cria uma árvore de dispositivos, com nós que representam todos os dispositivos no sistema, incluindo barramentos. Para cada dispositivo, o gerenciador PnP mantém duas listas:
Uma lista dos recursos de hardware que o dispositivo é capaz de usar.
Uma lista dos recursos de hardware que são realmente atribuídos ao dispositivo.
Os drivers de dispositivo ajudam o gerente PnP a criar essas listas, que são mantidas no registro. À medida que os dispositivos são adicionados e removidos do sistema, o gerenciador PnP reatribui recursos conforme necessário e atualiza as listas.
O componente da camada de abstração de hardware (HAL) do sistema, implementado como uma biblioteca de vínculo dinâmico, é responsável por parte do suporte em nível de hardware específico para a plataforma que é necessário para outros componentes do sistema, incluindo controladores em modo kernel.