Apa yang dilakukan alat manajemen daya di Linux? (acpi, pm-utils, dll ...)

21

Saya benar-benar bingung tentang alat manajemen daya yang tersedia untuk Linux: Saya memiliki Arch Linux dengan XFCE di laptop saya.

Panduan pada daftar wiki Arch Linux

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

untuk mengelola daya, suspensi, disk dan CPU, WiFi, dll.

Tapi saya tidak bisa mengerti apa hubungan mereka. Tampaknya mereka tidak saling membutuhkan (dependensi dicantumkan sebagai opsional) tetapi tidak jelas bagi saya apa artinya ini: apakah mereka bekerja bersama melakukan hal-hal yang berbeda atau apakah mereka saling alternatif atau bertentangan satu sama lain atau apa?


Saat ini saya hanya menginstal pm-utils(+ upower). Apakah saya juga membutuhkan acpidan / atau acpid? Dan bagaimana dengan laptop-mode-tools: apakah pengawas seperti ini dari semua alat lainnya? Jika demikian, haruskah saya mengonfigurasi hanya laptop-mode-toolsatau juga masing-masing alat lain secara terpisah? Bagaimana cara mereka berinteraksi lm-sensorsdan cpufreq?

Selain itu, ada Power Manager XFCE, yang tampaknya tidak terkait dengan salah satu alat di atas, karena berfungsi bahkan jika mereka tidak diinstal. Jadi pertanyaan saya sekali lagi, jika saya menginstal yang lain apakah mereka akan bertentangan dengan Power Manager XFCE? Dan bagaimana dengan opsi manajemen daya yang disertakan Xscreensaver? Apakah mereka bertentangan atau apakah mereka menimpa pengaturan di XFCE Power Manager (atau acpiatau pm-utils)?

Yang ingin saya lakukan adalah memiliki penggunaan energi yang efisien:

  • dapat pergi ke standby / penangguhan
  • jangan biarkan kipas berputar sepanjang waktu
  • jangan kepanasan / kerusakan CPU dan hard drive
  • matikan WiFi saat dalam keadaan standby / suspensi
  • dan lain-lain
rs028
sumber

Jawaban:

24
  • acpi hanyalah sebuah program kecil yang menampilkan informasi dasar ACPI.

  • acpid adalah daemon yang menangani acara ACPI - kebanyakan tombol power, tutup, baterai, dan hal-hal terkait. Misalnya, jika tombol daya ditekan, acpid berjalan shutdown. Ketika daya AC tersambung, acpid dapat menjalankan laptop-mode-toolsperintah yang sesuai. Jika Anda menggunakan systemd , maka itu menggantikan sebagian besar fungsi acpid .

  • cpufreq (sekarang usang) adalah seperangkat alat untuk menyesuaikan frekuensi CPU. Fungsionalitas inti adalah bagian dari kernel dan dapat diakses melalui /sys, dan perintah cpufreq hanya untuk kenyamanan, tetapi beberapa skrip mungkin memerlukannya.

  • cpufreqd (with the d ) adalah daemon ruang pengguna yang dapat digunakan sebagai pengganti untuk gubernur ruang kernel default (powersave, ondemand, kinerja). Tidak perlu - untuk sebagian besar penggunaan, gubernur standar sudah cukup.

  • cpupower adalah pengganti cpufreq - memungkinkan pengaturan pengaturan frekuensi CPU dari baris perintah.

  • laptop-mode-tools melakukan berbagai penyesuaian sistem setiap kali Anda mencolokkan atau mencabut daya AC ke laptop Anda - misalnya, waktu putar disk atau beralih gubernur cpufreq. Ini dipicu oleh acpid pada acara AC, dan tidak aktif sepanjang waktu.

    (Catatan: Beberapa pengaturan dalam alat mode-laptop mungkin benar-benar merusak kinerja dan / atau kewarasan; misalnya, ini menonaktifkan negosiasi otomatis Ethernet, yang IMHO hanya konyol.)

  • pm-utils menangani persiapan penangguhan ke memori dan / atau disk (menjalankan kait pra-penangguhan, memilih metode terbaik). Mereka tidak aktif sepanjang waktu.

    Dulu Anda membutuhkan pm-utils untuk menangguhkan mesin dengan bersih, tetapi pada mesin modern, pm-utils melakukan sangat sedikit karena ia hanya dapat memberitahu kernel untuk menangguhkan. Jika Anda menggunakan systemd , maka itu menggantikan pm-utils .

  • Selain itu, pm-utils hadir dengan perintah pm-powersave yang melakukan sebagian besar fungsi yang sama dengan alat mode-laptop . pm-powersave dipicu oleh naik ketika Anda pasang / cabut daya AC, dan melakukan berbagai penyesuaian.

  • systemd-logind memiliki fungsi untuk menangguhkan / berhibernasi, dan menangani peristiwa ACPI yang paling umum (sakelar tutup, tombol daya, dll.) Ini menggantikan acpid dan pm-utils pada kebanyakan sistem.

    (Tidak seperti pm-utils , systemd-logind tidak datang dengan kait pre-suspend atau solusi lain secara default, dan hanya menggunakan metode penangguhan kernel default. Ia mengharapkan bug driver diperbaiki di driver.)

  • upower adalah lapisan abstraksi untuk aplikasi desktop ke berbagai parameter daya. Program dapat menggunakannya untuk memeriksa status baterai, menyesuaikan cahaya latar, atau menangguhkan sistem tanpa harus peduli dengan platform tertentu. upower juga menggunakan PolicyKit untuk memungkinkan berbagai tindakan (menangguhkan, dll) tanpa memberikan hak root penuh. Itu bergantung pada pm-utils dan acpid . GNOME dan Xfce memerlukan upower untuk pengaturan "manajemen daya" mereka.

  • Xfce Power Manager mengontrol parameter seperti waktu poweroff tampilan, penskalaan CPU, kecerahan LCD, peristiwa ACPI ... (Fungsinya mirip dengan alat-alat mode acpid dan laptop , yang keduanya hanya memiliki satu konfigurasi sistem-lebar, sedangkan XfPM memungkinkan per Pengaturan-pengguna.) XfPM hanya mengelola kebijakan, tetapi mengandalkan upower untuk mekanisme yang sebenarnya. Juga, XfPM mengirimkan [rujukan?] Pemberitahuan seperti "Baterai lemah ".

Catatan: Saya tidak sepenuhnya yakin apa hubungan antara XfPM, acpid, laptop-mode-tools, dan upower. Sepertinya saya XfPM menggantikan sebagian besar fungsi acpid / lmt, tetapi tidak semuanya.

grawity
sumber
terima kasih banyak atas penjelasannya. Biarkan saya melihat apakah saya mengerti: Xfce Power Manager adalah semacam 'GUI' yang bergantung pada upower, yang membutuhkan pm-utils dan juga acpid (walaupun acpid bukan ketergantungan tetapi ini mungkin merupakan masalah archlinux). pm-utils hanya menunda dan laptop-mode-tools melakukan penyesuaian lain, tetapi mereka tidak bertentangan karena mereka melakukan hal yang berbeda. Namun mereka berdua perlu acpid untuk mengetahui apa yang sedang terjadi. Dan akhirnya cpufreq (dan cpufreqd) mungkin tidak diperlukan karena kernel harus mengatasinya. Apakah ini kurang lebih benar?
rs028
@rsom: XfPM adalah GUI untuk menyesuaikan pengaturan, dan juga daemon yang memastikan pengaturan diterapkan. Selain itu, benar.
grawity
tetapi ia melakukannya dengan mengirimkan pesanan ke alat lain (semacam daemon tingkat yang lebih tinggi)? Juga bagaimana dengan pengaturan manajemen daya di Xscreensaver ? apakah mereka menimpa mereka dalam XfPM atau sebaliknya?
rs028
AFAIK, Xscreensaver tidak melakukan manajemen daya sendiri - ia hanya menetapkan parameter yang sesuai di server X11. (Coba xset q.) Mungkin saja Xfpm mengelola pengaturan yang sama, atau tidak mengelola layar sama sekali dan membiarkan screensaver melakukannya. (Saya menggunakan GNOME, yang memiliki program sendiri bernama "GNOME Screensaver", dan saya tidak tahu apakah Xscreensaver adalah standar Xfce ... Membaca sumber Xfpm mungkin akan memberikan jawaban terbaik.)
grawity
Saya pikir saya mengerti jauh lebih baik sekarang. terima kasih banyak.
rs028