新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Linux操作系統(tǒng)的高級(jí)電源管理

Linux操作系統(tǒng)的高級(jí)電源管理

作者: 時(shí)間:2017-06-06 來(lái)源:網(wǎng)絡(luò) 收藏
  在Windows下我們已經(jīng)對(duì)系統(tǒng)的非常熟悉了,我們可以通過(guò)主板的高級(jí)模塊實(shí)現(xiàn)STR、STD等功能。對(duì)于筆記本電腦用戶使用高級(jí)方式,讓筆記本電腦處于休眠狀態(tài),節(jié)省電池就更加重要。上面說(shuō)的這些功能在Windows平臺(tái)下實(shí)現(xiàn)對(duì)于我們來(lái)說(shuō),可能都已經(jīng)不再是困難的事情。但如果換成恐怕就很少有人知道了,今天我們就來(lái)介紹一下在操作系統(tǒng)下的電源管理的實(shí)現(xiàn)。由于許多服務(wù)器都采用了,電源管理的重要性也就變得非常明顯了。

  在x86機(jī)器中,存在兩種電源管理方法:APM (Advanced Power Management,高級(jí)電源管理)和ACPI (Advanced Configuration and Power Interface,高級(jí)配置和電源接口)。APM是老標(biāo)準(zhǔn),而ACPI則提供了管理電腦和設(shè)備更為靈活的接口。Linux支持這兩種協(xié)議,不過(guò)有時(shí)還需要手工配置。另外,兩個(gè)標(biāo)準(zhǔn)不能同時(shí)運(yùn)行。缺省情況下Linux運(yùn)行ACPI。

  APM可以讓你把機(jī)器處于Suspend(懸掛) 或Standby(備用)狀態(tài),以及檢查電池容量。而ACPI還可以讓你把外設(shè)(如:顯示器、顯卡、PCI總線)單獨(dú)斷電,在節(jié)省電能方面有更多的控制。為了讓電源管理功能生效,需要在BIOS和Linux核心里要打開(kāi)它,并且在linux里加載必需的應(yīng)用軟件。

  檢查系統(tǒng)是否支持電源管理

  在較新的核心里,都包含了對(duì)ACPI和APM的支持。一般地,ACPI是激活的。使用dmesg來(lái)檢驗(yàn)一下:

  dmesg |egrep -i ‘(apm|acpi)’

  Kernel command line: vga=274 quiet console=ttyS3,9600acpi=no-idleoot=/dev/hda3

  ACPI: Core Subsystem version [20010208]

  ACPI: Subsystem enabled

  ACPI: System firmware supports: C2

  ACPI: plvl2lat=99 plvl3lat=1001

  ACPI: C2 enter=1417 C2 exit=354

  ACPI: C3 enter=-1 C3 exit=-1

  ACPI: Not using ACPI idle

  ACPI: System firmware supports: S0 S1 S4 S5

  另外,支持ACPI的系統(tǒng)也將增加/proc/ sys/acpi的目錄。如果它存在,就表示核心已經(jīng)加載ACPI驅(qū)動(dòng)。

  具體的應(yīng)用實(shí)例

  建議用最新的核心(如:2.4.5)。因?yàn)榕f的核心支持的特色較少,而2.2.x的核心就是支持ACPI,也只有極少的功能。

  1、Advanced Power Management

  APM應(yīng)用包含:apmd(APM的后臺(tái)服務(wù)程序)和其他的應(yīng)用程序(如APM)。建議到rpmfind.net找最新的適合你使用的版本,安裝和運(yùn)行OK后,我們可以試驗(yàn)APM命令了。

本文引用地址:http://2s4d.com/article/201706/349384.htm
  APM最簡(jiǎn)單的使用就是顯示機(jī)器里的電池容量。

  APM

  AC on-line, no system battery

  如果不支持APM,就顯示“No APM support in核心”。這時(shí),先檢查是否有/proc/apm。如果沒(méi)有,檢查是否運(yùn)行安裝APM后的核心。如果你把APM作為了一個(gè)模塊,檢查是否加載這個(gè)模塊。 apm還能用-S/-s分別進(jìn)入備用(Standby)和懸掛(Suspend)狀態(tài)。

  圖1

  圖1是KDE系統(tǒng)界面,它采用APM來(lái)檢查電池容量,還可以管理其他硬件的節(jié)能模式(圖2),并在任務(wù)欄顯示。進(jìn)一步的了解可到www.linuxdoc.org。

  2、ACPI

  linux對(duì)ACPI的支持較好,而且相關(guān)的文檔也比APM的要多。

  ACPI的權(quán)威網(wǎng)站是http://phobos.fs.tum.de/acpi/,其中在下載欄中包括了兩個(gè)內(nèi)容:acpid和pmtools,它們可以更好地優(yōu)化和管理ACPI。

  圖2

  Pmtools里面有個(gè)命令是Pmtest,它讓你檢測(cè)設(shè)備。一般地,它顯示你系統(tǒng)里的ACPI設(shè)備,并能讓你對(duì)它們進(jìn)行“懸掛”或“備用”處理。它必須用root來(lái)運(yùn)行。

  /pmtools/pmtest

  VGA (D0)

  keyboard (D0)

  PCI 0×0 (D0)

  system 0×0 (D0)

  看來(lái),VGA顯示器、鍵盤(pán)、PCI總線和系統(tǒng)都被識(shí)別為ACPI設(shè)備。它們的狀態(tài)都是D0,就是活動(dòng)狀態(tài)。我們可以把狀態(tài)設(shè)為D1/D2 (耗電最小化)或D3 (完全關(guān)閉)。比如:

  /pmtools/pmtest -d1 VGA

  現(xiàn)在顯示器應(yīng)該變黑。這并不會(huì)讓顯卡停止產(chǎn)生視頻信號(hào)(顯示器也表示有輸入信號(hào)),只是把信號(hào)全部轉(zhuǎn)變?yōu)楹谏?pmtools/pmtest -d0 VGA可以恢復(fù)。

  上面我們僅僅是舉了幾個(gè)例子,大家可以舉一反三,管理好您的系統(tǒng),充分發(fā)揮出高級(jí)電壓管理功能。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉