O que as ferramentas de gerenciamento de energia no Linux fazem? (acpi, pm-utils, etc.)

21

Estou realmente muito confuso sobre as ferramentas de gerenciamento de energia disponíveis para Linux: Eu tenho o Arch Linux com XFCE no meu laptop.

Os guias na lista de wiki do Arch Linux

  • acpi
  • acpid
  • pm-utils
  • cpufreq
  • laptop-mode-tools

para gerenciar energia, suspensão, discos e CPU, WiFi, etc.

Mas não consigo entender quais são as relações entre eles. Aparentemente, eles não precisam um do outro (as dependências são listadas como opcionais), mas não está claro para mim o que isso implica: eles trabalham juntos fazendo coisas diferentes ou são alternativos entre si ou conflitam entre si ou o quê?


No momento eu só tenho pm-utils(+ upower) instalado. Eu também preciso acpie / ou acpid? E o que dizer laptop-mode-tools: esse tipo de supervisor de todas as outras ferramentas? Nesse caso, devo configurar apenas laptop-mode-toolsou também cada uma das outras ferramentas separadamente? Como eles interagem lm-sensorse cpufreq?

Além disso, existe o XFCE Power Manager, que parece não estar relacionado a nenhuma das ferramentas acima, pois funciona mesmo se elas não estiverem instaladas. Portanto, minha pergunta é novamente: se eu instalar os outros, eles entrarão em conflito com o XFCE Power Manager? E as opções de gerenciamento de energia incluídas Xscreensaver? Eles entram em conflito ou substituem as configurações no XFCE Power Manager (ou acpiou pm-utils)?

Tudo o que quero realmente é ter um uso eficiente da energia:

  • poder entrar em espera / suspensão
  • não tem o ventilador funcionando o tempo todo
  • não superaqueça / danifique a CPU e o disco rígido
  • desativar o Wi-Fi no modo de espera / suspensão
  • et cetera
rs028
fonte

Respostas:

24
  • O acpi é apenas um pequeno programa que exibe informações básicas da ACPI.

  • O acpid é um daemon que lida com eventos da ACPI - principalmente botão liga / desliga , tampa, bateria e outras coisas relacionadas. Por exemplo, se o botão liga / desliga foi pressionado, o acpid é executado shutdown. Quando a energia CA está conectada, o acpid pode executar o laptop-mode-toolscomando apropriado . Se você usa o systemd , ele substitui a maioria das funcionalidades do acpid .

  • cpufreq (agora obsoleto) é um conjunto de ferramentas para ajustar a frequência da CPU. A funcionalidade principal faz parte do kernel e acessível através de /sys, e os comandos cpufreq são apenas para conveniência, mas alguns scripts podem exigir isso.

  • O cpufreqd (com o d ) é um daemon de espaço do usuário que pode ser usado como um substituto para os governadores de espaço do kernel padrão (powersave, ondemand, performance). Não é necessário - para a maioria dos usos, os governadores padrão são suficientes.

  • O cpupower é um substituto do cpufreq - ele permite definir as configurações de frequência da CPU na linha de comando.

  • O laptop-mode-tools faz vários ajustes no sistema sempre que você conecta ou desconecta a alimentação CA do seu laptop - por exemplo, tempos de rotação do disco ou troca de regulador cpufreq. É acionado por acpid em eventos de AC e fica inativo o resto do tempo.

    (Nota: algumas das configurações nas ferramentas do modo laptop podem realmente prejudicar o desempenho e / ou a sanidade; por exemplo, desabilita a negociação automática de Ethernet, que IMHO é simplesmente boba.)

  • O pm-utils lida com os preparativos da suspensão para a memória e / ou disco (executando ganchos de pré-suspensão, escolhendo o melhor método). Eles ficam inativos o resto do tempo.

    Você costumava precisar do pm-utils para suspender a máquina de maneira limpa, mas em máquinas modernas, o pm-utils faz muito pouco, pois pode dizer ao kernel para suspender. Se você usa o systemd , ele substitui o pm-utils .

  • Além disso, o pm-utils vem com um comando pm-powersave que executa a maioria das mesmas funções que as ferramentas do modo laptop . O pm-powersave é acionado pela upower quando você conecta / desconecta a energia CA e executa vários ajustes.

  • O systemd-logind possui funções para suspender / hibernar e lida com os eventos ACPI mais comuns (interruptor da tampa, botão liga / desliga, etc.) Substitui acpid e pm-utils na maioria dos sistemas.

    (Diferentemente do pm-utils , no entanto, o systemd-logind não vem com ganchos de pré-suspensão ou outras soluções alternativas por padrão e usa apenas o método de suspensão padrão do kernel. Espera que os bugs do driver sejam corrigidos nos drivers.)

  • upower é uma camada de abstração para aplicativos de desktop com vários parâmetros de energia. Os programas podem usá-lo para verificar o status da bateria, ajustar a luz de fundo ou suspender o sistema sem precisar se preocupar com a plataforma específica. O upower também usa o PolicyKit para permitir várias ações (suspender, etc.) sem conceder privilégios de root completo. Depende do pm-utils e do acpid . O GNOME e o Xfce requerem upower para suas configurações de "gerenciamento de energia".

  • O Xfce Power Manager controla parâmetros como tempo de desligamento da tela, escala da CPU, brilho do LCD, eventos ACPI ... (A função é semelhante às ferramentas acpid e laptop-mode , que possuem apenas uma configuração em todo o sistema, enquanto o XfPM permite O XfPM gerencia apenas a política, mas depende de upower para os mecanismos reais. Além disso, o XfPM envia [citações necessárias] notificações como "Bateria fraca".

Nota: Eu não sou inteiramente certo o que é a relação entre XfPM, acpid, laptop-mode-tools, e uPower. Parece-me que o XfPM substitui a maioria das funções acpid / lmt, mas não todas.

gravidade
fonte
muito obrigado pela sua explicação. Deixe-me ver se eu entendo: O Xfce Power Manager é um tipo de 'GUI' que depende de upower, que precisa de pm-utils e também de acpid (embora acpid não seja uma dependência, mas isso possa ser um problema do archlinux). O pm-utils apenas suspende e o laptop-mode-tools faz outros ajustes, mas eles não entram em conflito porque fazem coisas diferentes. No entanto, os dois precisam de conhecimento para saber o que está acontecendo. E, finalmente, o cpufreq (e o cpufreqd) provavelmente não são necessários porque o kernel deve cuidar disso. Isso é mais ou menos correto?
rs028
@rsom: O XfPM é uma GUI para ajustar as configurações e também um daemon que garante que as configurações sejam aplicadas. Fora isso, correto.
grawity
mas faz isso passando ordens para as outras ferramentas (uma espécie de daemon de nível superior)? E as configurações de gerenciamento de energia no Xscreensaver ? eles substituem os do XfPM ou vice-versa?
rs028
AFAIK, Xscreensaver não faz nenhum gerenciamento de energia por si só - simplesmente define os parâmetros apropriados no servidor X11. (Tente xset q.) Pode ser que o Xfpm simplesmente gerencie as mesmas configurações ou que não gere a tela e permita que o protetor de tela faça isso. (Estou usando o GNOME, que possui seu próprio programa chamado "GNOME Screensaver", e não sei se o Xscreensaver é o padrão do Xfce ... Ler a fonte do Xfpm talvez daria a melhor resposta.)
grawity
Eu acho que entendo muito melhor agora. muito obrigado.
rs028