Respostas:
O sistema operacional faz interface com o firmware de um controlador incorporado que faz parte da ACPI ( Advanced Configuration and Power Interface ).
A Wikipedia define como:
Em um computador, a ACPI (Advanced Configuration and Power Interface) fornece um padrão aberto que os sistemas operacionais podem usar para descobrir e configurar os componentes de hardware do computador, executar o gerenciamento de energia (por exemplo) colocando componentes não utilizados no modo de suspensão e monitorando o status . Lançado pela primeira vez em dezembro de 1996, o ACPI visa substituir o Advanced Power Management (APM), a MultiProcessor Specification e a Plug and Play BIOS (PnP). [1] A ACPI coloca o gerenciamento de energia sob o controle do sistema operacional, em oposição ao sistema centralizado no BIOS anterior, que dependia de firmware específico da plataforma para determinar as políticas de gerenciamento e configuração de energia.
Internamente, a ACPI anuncia os componentes disponíveis e suas funções para o kernel do sistema operacional usando listas de instruções ("métodos") fornecidas pelo firmware do sistema (UEFI) ou BIOS, que o kernel analisa. O ACPI executa as operações desejadas (como a inicialização dos componentes de hardware) usando uma máquina virtual mínima incorporada.
A resposta é, então, que um circuito ou micro-chip está embutido na placa-mãe, que contém um micro sistema operacional que disponibiliza alguns serviços através do firmware do computador - UEFI ou BIOS. Ele controla muitos aspectos do gerenciamento de energia e dispositivos.
O sistema operacional do computador possui um driver de sistema dedicado à interface com a ACPI. Uma vez ativado, o ACPI assume o controle exclusivo de todos os aspectos do gerenciamento de energia e da configuração do dispositivo.
Em muitos aspectos, o ACPI é um sistema operacional por trás do sistema operacional, exceto pelo fato de ser fornecido com a placa-mãe e não estar sob seu controle. Houve vozes comparando-o a um cavalo de Tróia e chamando-o de risco à segurança. Ele pode estar desativado, mas alguns computadores podem não inicializar sem ele, e o gerenciamento avançado de energia também é desativado.
Para obter mais informações sobre seu uso no Windows, consulte o artigo Design de hardware do subsistema de bateria e energia .
Como complemento da outra resposta, como o software em execução no computador sabe qual é o nível da bateria? Ele pede a bateria.
A maioria das baterias de laptop são baterias inteligentes que possuem seu próprio microcontrolador ou ASIC "medidor de combustível", com o qual o host pode se comunicar através do SMBus. As pessoas fizeram engenharia reversa de alguns exemplos.
O SMBus pode ou não ser exposto diretamente ao sistema operacional de uma maneira que permita ao administrador consultá-lo diretamente. Existem vários programas como o OpenHardwareMonitor ou Speccy ou lm-sensores que podem interrogar o barramento para descobrir o hardware.
De maneira mais geral, todos os chips de computador possuem documentação que informa aos projetistas e programadores o que eles fazem e como configurá-los para fazê-lo. O acesso de baixo nível a esses chips pode ser feito lendo e gravando diretamente nos registros do chip.
Os chips mais complicados podem vir com um programa de software chamado 'driver' que permite acesso de alto nível ao sistema operacional ou mesmo a outros aplicativos. O seu telefone inteligente, por exemplo, possui uma API (Interface de programação de aplicativos) que permite acessar grande parte do hardware, GPS, acelerômetro, bateria, câmera do telefone, etc. Ao escrever um "aplicativo", você pode acessar esses dispositivos de hardware usando a API assim como o sistema operacional pode (embora o sistema operacional geralmente tenha acesso mais extenso do que um programa em execução no 'espaço do usuário').
Essas interfaces são muito bem definidas para que, quando você fizer uma chamada de função ao chip de hardware, ela responderá com as informações solicitadas. O chip do controlador de bateria é apenas um exemplo dessa infraestrutura genérica.
Quem escreve o código do sistema operacional obtém a documentação do chip e escreve o software para se comunicar com o chip e recuperar as informações desejadas.
Portanto, da próxima vez que você carregar um 'driver' (ou é feito automaticamente) para um disco rígido externo, pen drive USB ou qualquer outra coisa, você entenderá um pouco mais sobre como as coisas acontecem 'sob o capô'.