Chinaunix首页 | 论坛 | 博客
  • 博客访问: 771306
  • 博文数量: 803
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 5015
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-28 10:29
文章分类

全部博文(803)

文章存档

2011年(1)

2008年(802)

我的朋友

分类:

2008-10-29 11:44:38


   在下我们已经对系统的电源管理非常熟悉了,我们可以通过主板的高级电源管理模块实现STR、STD等功能。对于笔记本电脑用户使用高级电源管理方式,让笔记本电脑处于休眠状态,节省电池就更加重要。上面说的这些功能在平台下实现对于我们来说,可能都已经不再是困难的事情。但如果换成Linux恐怕就很少有人知道了,今天我们就来介绍一下在Linux操作系统下的电源管理的实现。由于许多都采用了Linux,电源管理的重要性也就变得非常明显了。
  
  在x86机器中,存在两种电源管理方法:APM (Advanced Power Management,高级电源管理)和ACPI (Advanced Configuration and Power Interface,高级配置和电源接口)。APM是老标准,而ACPI则提供了管理电脑和设备更为灵活的接口。Linux支持这两种,不过有时还需要手工配置。另外,两个标准不能同时运行。缺省情况下Linux运行ACPI。
  
  APM可以让你把机器处于Suspend(悬挂)或Standby(备用)状态,以及检查电池容量。而ACPI还可以让你把外设(如:显示器、显卡、PCI总线)单独断电,在节省电能方面有更多的控制。为了让电源管理功能生效,需要在BIOS和Linux核心里要打开它,并且在里加载必需的应用软件。
  
  检查系统是否支持电源管理
  
  在较新的核心里,都包含了对ACPI和APM的支持。一般地,ACPI是激活的。使用dmesg来检验一下:
  
  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的系统也将增加/proc/ sys/acpi的目录。如果它存在,就表示核心已经加载ACPI驱动。
  
  具体的应用实例
  
  建议用最新的核心(如:2.4.5)。因为旧的核心支持的特色较少,而2.2.x的核心就是支持ACPI,也只有极少的功能。
  
  1、Advanced Power Management
  
  APM应用包含:apmd(APM的后台服务程序)和其他的应用程序(如APM)。建议到rpmfind.net找最新的适合你使用的版本,安装和运行OK后,我们可以试验APM命令了。
  
  APM最简单的使用就是显示机器里的电池容量。
  
  APM
  
  AC on-line, no system battery
  
  如果不支持APM,就显示“No APM support in核心”。这时,先检查是否有/proc/apm。如果没有,检查是否运行安装APM后的核心。如果你把APM作为了一个模块,检查是否加载这个模块。apm还能用-S/-s分别进入备用(Standby)和悬挂(Suspend)状态。
   
  图1
  
  图1是KDE系统界面,它采用APM来检查电池容量,还可以管理其他硬件的节能模式(图2),并在任务栏显示。进一步的了解可到。
  
  2、ACPI
  
  linux对ACPI的支持较好,而且相关的文档也比APM的要多。
  
  ACPI的权威网站是其中在栏中包括了两个内容:acpid和pmtools,它们可以更好地优化和管理ACPI。
  
  图2
  
  Pmtools里面有个命令是Pmtest,它让你检测设备。一般地,它显示你系统里的ACPI设备,并能让你对它们进行“悬挂”或“备用”处理。它必须用root来运行。
  
  /pmtools/pmtest
  
  VGA (D0)
  
  keyboard (D0)
  
  PCI 0x0 (D0)
  
  system 0x0 (D0)
  
  看来,VGA显示器、键盘、PCI总线和系统都被识别为ACPI设备。它们的状态都是D0,就是活动状态。我们可以把状态设为D1/D2 (耗电最小化)或D3 (完全关闭)。比如:
  
  /pmtools/pmtest -d1 VGA
  
  现在显示器应该变黑。这并不会让显卡停止产生视频信号(显示器也表示有输入信号),只是把信号全部转变为黑色。/pmtools/pmtest -d0 VGA可以恢复。
  
  上面我们仅仅是举了几个例子,大家可以举一反三,管理好您的系统,充分发挥出高级电压管理功能。
  
【责编:admin】

--------------------next---------------------

阅读(370) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~