FreeBSD Handbook/Administração/Configuração e Ajuste/Gerenciamento de Energia e Recursos
11.15 Gerenciamento de Energia e Recursos
editarÉ importante utilizar os recursos de hardware de maneira eficiente. Antes da ACPI ser introduzida, era difícil e inflexível para os sistemas operacionais gerenciar o uso de energia e propriedades térmicas de um sistema. O hardware era controlado pela BIOS e, assim, o usuário tinha menos controle e visibilidade sobre as configurações de gerenciamento de energia. A configurabilidade disponível era limitada pela Advanced Power Management(APM). Gerenciamento de Energia e Recursos é um dos principais componentes de um sistema operacional moderno. Por exemplo, você pode querer um sistema operacional para controlar os limites do sistema (e possívelmente alertar você) caso a temperatura do sistema aumentou de forma inesperada.
Nesta seção do Manual do FreeBSD, nós iremos fornecer informações sobre ACPI. Serão fornecidas referências para leitura adicional no final.
11.15.1 O que é ACPI?
editarAdvanced Configuration and Power Interface (ACPI) é um padrão escrito por um consórcio de vendedores para fornecer uma interface padrão para os recursos de hardware e gerenciamento de energia (daí o nome). É um elemento-chave no sistema operacional direcionado a configuração e gerenciamento de energia, ou seja: fornece mais controle e flexibilidade para o sistema operacional (SO). Nos sistemas modernos os limites de interfaces do atual Plug and Play eram “esticados” antes da introdução do ACPI. ACPI é o sucessor direto do APM (Advanced Power Management).
11.15.2 Deficiências de Advanced Power Management (APM)
editarA Advanced Power Management (APM) controla a facilidade de uso de energia de um sistema baseado em sua atividade. A APM BIOS é fornecido pelo sistema do vendedor e ele é específico para a plataforma de hardware. Um driver APM no SO mede o acesso ao Programa de Interface APM, que permite o gerenciamento dos níveis de potência. APM deve ainda ser usado para sistemas fabricados em ou antes do ano 2000. Existem quatro problemas principais no APM. Em primeiro lugar, o gerenciamento de energia é feito pelo (fornecedor específico) da BIOS e o sistema operacional não tem qualquer conhecimento da mesma. Um exemplo disto, é quando o usuário define os valores de tempo ocioso para um disco rígido no APM BIOS que, quando ultrapassados, ela (BIOS) seria a redução da rotação do disco rígido, sem o consentimento do SO. Em segundo lugar, a lógica do APM é embarcada na BIOS, e opera fora do âmbito do sistema operacional. Isto significa que os usuários só podem corrigir problemas em suas APM BIOS gravando uma nova ROM, o que é um procedimento muito perigoso, com potencial para deixar o sistema em um estado irrecuperável se houver falha. Em terceiro lugar, a APM é um fornecedor de tecnologia específica, o que significa que há um monte de paridade (duplicação de esforços) e falhas encontradas no fabricante da BIOS que não podem ser resolvidos em outros fabricantes. Por último mas não menos importante, a APM BIOS não possui espaço suficiente para implementar uma política sofisticada de energia, ou umA que pode se adaptar muito bem a finalidade da máquina.
Plug and Play BIOS (PNPBIOS) era inconfiável em muitas situações. PNPBIOS é a tecnologia 16-bit, assim o SO tem de usar 16 bits de emulação, a fim de obter uma "interface" com métodos PNPBIOS.
O driver APM do FreeBSD está documentado nesta seção do manual: apm(4)
11.15.3 Configurando ACPI
editarO driver acpi.ko é carregado por padrão na inicialização pelo loader(8) e não deve ser compilado no kernel. O raciocínio por trás disso é que os módulos são mais fáceis de trabalhar, dizem que se mudar para outro acpi.ko não é necessário reconstruir o kernel. Isto tem a vantagem de facilitar os testes. Outra razão é que inicializando o ACPI depois do sistema ter sido criado, muitas vezes não funciona bem. Se você estiver enfrentando problemas, você pode desabilitar o ACPI completamente. Este driver não deve e não pode ser descarregado, porque o sistema de ônibus usa para várias interações de hardware. ACPI pode ser desativado por configuração hint.acpi.0.disabled = "1" em /boot/loader.conf/ ou no prompt do loader(8).
Nota: ACPI e APM não podem coexistir e devem ser utilizados separadamente.O último a carga irá terminar se tiver avisos do driver estar executando outros.
ACPI pode ser usado para colocar o sistema em um modo de dormir com acpiconf(8) , a opção-s, e uma opção 1-5. A maioria dos usuários só precisa de 1 ou 3 (Suspender para RAM). Opção 5 vai fazer um soft-off, que é a mesma ação como:
# halt-p
Outras opções estão disponíveis através do sysctl(8). Confira as seções acpi (4) e acpiconf (8) do manual para mais informações.