Power management/Guide/zh-cn

在最近几年，良好的电源管理成为一个用户寻求完美的笔记本的一个重要条件. 同时操作系统也要支持电源管理/节能. 在这篇向导中，我们将会介绍如何在 Gentoo Linux 中以一种灵活的，自动化的方式设置好电源管理.

关于本文档
本文档描述了如何为笔记本型电脑设置电源管理. 尽管这当中的一部分设置可被用于其它类型的平台的电源管理，但是这并不是本文的目的. 如果你要在非笔记本的系统上执行这些设定，请小心，以免带来不可预期的影响.

在本文档中，主要是介绍  这个工具，它提供了许多相关的功能. 不过我们也会介绍一些别的能提供更详细的，更有针对性的设置的工具. 在这种情况下，为了避免造成冲突，  提供的相同的功能必须被禁用.

关于 laptop_mode
laptop_mode 是一种由内核内置的用于管理输入/输出的设置，比如使硬盘在合适的时候进行休眠（并且在队操作之后不会立刻被唤醒）来节能.

关于 laptop-mode-tools
Laptop Mode Tools 由 提供，它使用户可以调整电源管理功能，也可以用于管理上文中提到的 Linux 内核中的 laptop_mode 设置，同时还有一些附加的功能用于管理系统中与电源管理有关的设置.

启用电源管理的最小化内核设置
Portage 中有不同的内核源代码. 我们建议使用 ，但如果需要高级休眠支持，则可能需要.

要在 Linux 内核中启用适当的电源管理功能，请启用以下设置：

Do not forget to enable the CPU frequency scaling driver for the CPU. For the SandyBridge and higher Intel core series of processors, userspace, ondemand, and conservative governors are unnecessary; performance should be selected as the default, and Intel P state control should be selected instead of ACPI Processor P-States driver.

In this case, the userspace, ondemand, and conservative governors are unnecessary. The performance governor should be selected as the default.

Enabling additional drivers
For Intel processors used in laptops since 2011 you may want to enable additional advanced features - Thermal and powercap sysfs.

powercap sysfs driver
Additionally, you can enable Running Average Power Limit – RAPL technology. Both PowerTOP and turbostat utilities are aware of RAPL. For RAPL enablement use:

To make use of Intel's Linux thermal daemon you first need to emerge and enable it via:

or

如果需要更详细的说明，请查看电源管理/处理器#内核

如果有必要的话可以编译并安装新内核并重启.

安装
“Laptop mode tools”可以通过以下命令被很简单的安装：

这个软件包可能需要通过别的附加的，可选的 USE 旗标配置. 以下是这个软件包支持的 USE 旗标和它们的意义：

注意：  和   这两个 USE 旗标是互相冲突的.


 * USE 旗标会启用对 Advanced Power Management （高级电源管理）的支持,是老式笔记本 (公元 2000 年以前)的标准电源管理功能.
 * USE 旗标会启用对 Advanced Configuration and Power Interface （高级配置和电源管理接口）的支持. ACPI 是 APM 的“继任者”. 所有的现代笔记本都支持ACPI.

取决于你的系统，你需要设置  与   中的一个 USE 旗标. 本指南的剩余部分是以支持 ACPI 的笔记本作为范例的.

在设置好 USE 旗标后，用以下命令安装  ：

配置
在刚刚被安装好时并不会自动启动. 我们可以从 找到应该要如何配置本软件包（这是   的主要配置文件，该文件内的注释可以帮助你理解如何设置它）.

但这并不是  唯一的配置文件. 支持有独立配置文件的插件（和/或模块）. 这些额外的配置文件会被放在. 它们是根据插件或模块的名字来命名的(例如 ).

每一个  配置文件里最重要的部分之一就是控制一些功能的开关. 这在把  和一些别的电源管理服务（比如）同时使用时很有用. 在这种情况下： 必须给 设置  :

接下来的几个段落用于帮助用户配置  到合适于自己的情况. 当你完成配置后，启动  并把它添加到系统自起.

With OpenRC:

With systemd:

laptop-mode-tools是怎么工作的
当  运行时，它会检测系统当前状态. 以下是所有状态：


 * 电池使用（Battery），当笔记本使用电池作为电源时会进入此状态；在配置文件中以  作为在此模式下使用的配置的名称前缀;
 * 电源（AC），当笔记本使用外接电源时会进入此状态；在配置文件中以  作为在此模式下使用的配置的名称前缀；
 * 笔记本模式（Laptop Mode）, 当启用 laptop mode 时会被激活；在配置文件中以  作为在此模式下使用的的配置的名称前缀；
 * 非笔记本模式（No Laptop Mode），当laptop mode被禁用时会被激活；在配置文件中以  作为在此模式下使用的的配置的名称前缀.

AC/BATT_ 和 LM/NOLM_ 前缀可以以 AC_LM_ 的形式同时使用.

当  启动后，它会根据发生的时间切换到对应的模式（根据配置文件进行）. 举个例子， 会使   在笔记本使用时切换到 laptop mode. 在这时，  会使用前缀为 ,  ,  , 还有   的配置.

为了确保这些设置之间不会发生冲突，重复的相同设置是不允许的. 在下面的例子中, 在  中的第一组设置是有效的，而之后的   中的设置则是无效的.

配置 CPU 频率管理器
laptop mode tools 中的 CPU 频率管理器允许用户调整 CPU 的频率. 它支持设定「CPU 频率管理」，「最高和最低频率」. 在这里我们需要使用的配置文件是：.

CPU频率管理(CPU frequency governor) 是一个内核级的用来定义内核如何控制 CPU 频率的策略. 我们在内核设置里就已经设置好了使用那种模式. 我们再来看一遍：


 * 一直以最高频率工作；
 * 一直以最低频率工作；
 * 不进行任何设置，由用户进行选择（或者是由一些由用户执行的程序进行选择）;
 * 当有负载时会把 CPU 频率调整到最高；
 * 当有负载时会逐渐提升 CPU 频率；

在 电源使用（AC） 或 电池使用（Battery）模式之间切换，或时在 laptop mode 与 no laptop mode 之间切换时，程序会选择合适的 CPU 频率管理模式.

设置显示亮度
根据 管理 LCD 显示器亮度.

程序使用 来管理 LCD 显示器亮度，但是近期的内核不再提供它了（bug 499544）；我们需要把他更正为.

它的值可以设置为 0 到 中写的最大亮度（0 指的是最低亮度）.

配置其它服务
的一个有趣的功能是支持在切换模式后重新加载部分服务（比如系统记录，system logger）. 这由 控制.

If enabled, the laptop_mode application will switch the configuration file(s) of the mentioned services with the same file, but suffixed with,  or. It will then signal or reload the appropriate services so they can use the new configuration file.

安装
The application allows the user to manage CPU frequencies in a more granular approach than what laptop-mode-tools supports. But before we dive into the installation of, let us first look at the USE flags it supports.

The,  , and   USE overlap, so only one should be active. If the laptop is sufficiently recent,  is the best bet. If not,  offers all that is needed. When even APM isn't supported, try using.

With the USE flags configured, it is time to install.

配置
The application monitors the status of the system through several plugins. Based on the feedback it receives from those plugins, it will adjust the policy used to govern the CPU frequency.

can be configured by editing. It contains three different sections:


 * 1) The   section contains general configuration information.
 * 2) The   section defines the policies that the cpufreqd daemon can switch to. The section is very similar to the information used when manually setting the CPU frequency policy using cpufreq-set.
 * 3) The   section is the work-horse of the cpufreqd daemon, defining when the daemon decides to switch to a different profile.

Take a quick look at an example rule.

In the above example, will switch the system to the On Demand High profile (also shown in the above excerpt). This profile by itself uses the ondemand governor with a minimum frequency of 40% (iow, a CPU of 2 GHz will have by this policy a minimum frequency of 800 MHz).

The application can offer a more granular approach on CPU frequency scaling. But not only that, but the CPU frequency scaling can be tweaked based on various other metrics available. The default configuration offers a sample rule: when a movie is watched, maximum performance is desired (unless the CPU temperature is getting too high).

When has been configured, it is time to start it (and make sure the service is loaded automatically). Make sure that CPU frequency handling by other tools (like laptop-mode-tools) is disabled!

另请参阅

 * USB Power Saving

外部资源

 * Laptop Mode Tools Homepage, includes About laptop mode.
 * PowerTOP, an interactive application helping users to find out which processes are forcing wakeups on the CPU most often.
 * A ThinkWiki article on How to reduce power consumption (on Linux). This article offers an exhaustive list of measures one can take. However, it should be noted that the laptop mode tools implements the majority of these (if properly configured).