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.
O driver ACPI (Configuração Avançada do Windows e Interface do Power), Acpi.sys, é um componente de caixa de entrada do sistema operacional Windows. As responsabilidades de Acpi.sys incluem suporte para gerenciamento de energia e enumeração de dispositivo PnP (Plug and Play). Em plataformas de hardware que possuem um ACPI BIOS, o HAL faz com que Acpi.sys seja carregado durante a inicialização do sistema na base da árvore de dispositivos. Acpi.sys atua como a interface entre o sistema operacional e o ACPI BIOS. Acpi.sys é transparente para os outros drivers na árvore do dispositivo.
Outras tarefas executadas por Acpi.sys em uma plataforma de hardware específica podem incluir reprogramar os recursos para uma porta COM ou habilitar o controlador USB para ativação do sistema.
Dispositivos ACPI
O fornecedor da plataforma de hardware especifica uma hierarquia de namespaces ACPI no ACPI BIOS para descrever a topologia de hardware da plataforma. Para obter mais informações, consulte a hierarquia de namespace do ACPI.
Para cada dispositivo descrito na hierarquia de namespace do ACPI, o driver ACPI do Windows, Acpi.sys, cria um objeto de dispositivo de filtro (filter DO) ou um PDO (objeto de dispositivo físico). Se o dispositivo estiver integrado à placa do sistema, Acpi.sys criará um objeto de dispositivo de filtro, representando um filtro de barramento ACPI e o anexará à pilha de dispositivos imediatamente acima do PDO (driver de ônibus). Para outros dispositivos descritos no namespace ACPI, mas não no painel do sistema, Acpi.sys cria o PDO. Acpi.sys fornece gerenciamento de energia e funcionalidades PnP para a pilha de dispositivos com esses objetos. Para obter mais informações, consulte pilhas de dispositivos de um dispositivo ACPI.
Um dispositivo para o qual Acpi.sys cria um objeto de dispositivo é chamado de dispositivo ACPI. O conjunto de dispositivos ACPI varia de uma plataforma de hardware para outra e depende do BIOS do ACPI e da configuração da placa-mãe. Acpi.sys carrega um filtro de barramento ACPI somente para um dispositivo descrito no namespace ACPI e que está permanentemente conectado à plataforma de hardware (normalmente, esse dispositivo é integrado ao silício central ou soldado à placa do sistema). Nem todos os dispositivos de placa-mãe têm um filtro de barramento ACPI.
Todas as funcionalidades de ACPI são transparentes para drivers de nível superior. Esses drivers não devem fazer suposições sobre a presença ou ausência de um filtro ACPI em uma determinada pilha de dispositivos.
Acpi.sys e o ACPI BIOS dão suporte às funções básicas de um dispositivo ACPI. Para aprimorar a funcionalidade de um dispositivo ACPI, o fornecedor do dispositivo pode fornecer um driver de função WDM. Para obter mais informações, consulte Operação de um driver de função do dispositivo ACPI.
Um dispositivo ACPI é especificado por um bloco de definição nas tabelas de descrição do sistema no ACPI BIOS. O bloco de definição de um dispositivo especifica, entre outras coisas, uma região de operação, que é um bloco contíguo de memória do dispositivo usado para acessar dados do dispositivo. Somente Acpi.sys modifica os dados em uma região de operação. O driver de função do dispositivo pode ler os dados em uma região de operação, mas não deve modificar os dados. Quando chamado, um manipulador de região de operação transfere bytes da região de operação para o buffer de dados e vice-versa no Acpi.sys. A operação combinada do driver de função e do Acpi.sys é específica do dispositivo e é definida no BIOS do ACPI pelo fornecedor de hardware. Em geral, o driver de funções e Acpi.sys acessam áreas específicas em uma zona de operação para executar operações específicas do dispositivo e recuperar informações. Para obter mais informações, consulte Suporte a uma região de operação.
Métodos de controle ACPI
Os métodos de controle ACPI são objetos de software que declaram e definem operações simples para consultar e configurar dispositivos ACPI. Os métodos de controle são armazenados no ACPI BIOS e codificados em um formato de código de byte chamado AML (linguagem de máquina ACPI). Os métodos de controle de um dispositivo são carregados do firmware do sistema no namespace ACPI do dispositivo na memória e interpretados pelo driver ACPI do Windows, Acpi.sys.
Para invocar um método de controle, o driver do modo kernel para um dispositivo ACPI inicia uma solicitação de IRP_MJ_DEVICE_CONTROL , que é tratada por Acpi.sys. Para drivers carregados em dispositivos enumerados por ACPI, Acpi.sys sempre implementa o PDO (objeto de dispositivo físico) na pilha de driver. Para obter mais informações, consulte Avaliando métodos de controle ACPI.
Especificação de ACPI
A Especificação avançada de configuração e de interface de energia (especificação ACPI 6.4) está disponível no site do Fórum do Unified Extensible Firmware Interface.
A revisão 5.0 da especificação de ACPI introduz um conjunto de recursos para dar suporte a PCs móveis de baixa potência que são baseados em circuitos integrados do System on Chip (SoC) e que implementam o modelo de energia standby conectado. A partir do Windows 8, o driver ACPI do Windows, Acpi.sys, dá suporte aos novos recursos na especificação ACPI 5.0. Para obter mais informações, consulte o guia de design da ACPI do Windows para plataformas SoC.
Depuração de ACPI
Os integradores do sistema e os desenvolvedores de driver de dispositivo ACPI podem usar o depurador do Microsoft AMLI para depurar o código AML. Como a AML é uma linguagem interpretada, a depuração de AML requer ferramentas de software especiais.
Para obter mais informações sobre o depurador AMLI, consulte depuração de ACPI.
Compilador de ASL (linguagem de origem do Microsoft ACPI)
Para obter informações sobre como compilar o ASL (linguagem de origem ACPI) no AML (linguagem de computador) ACPI, consulte o compilador do Microsoft ASL.
A versão 5.0 do compilador do Microsoft ASL dá suporte a recursos na especificação ACPI 5.0.
O compilador ASL é distribuído com o WDK (Windows Driver Kit).
O compilador ASL (asl.exe) está localizado na Tools\<build>\<architecture>\ACPIVerify
pasta do WDK instalado, por exemplo, C:\Program Files (x86)\Windows Kits\10\Tools\10.0.22631.0\x64
.