Power management and ACPI options
电源管理和ACPI选项
Suspend to RAM and standby
CONFIG_SUSPEND
"休眠到内存"(ACPI S3)支持.也就是系统休眠后,除了内存之外,其他所有部件都停止工作,重开机之后可以直接从内存中恢复运行状态.要使用此功能,你需要执行"echo mem > /sys/power/state"命令,还需要在BIOS中开启S3支持,否则可能会有问题.
Skip kernel's sys_sync() on suspend to RAM/standby
跳过内核的sys_sync()挂起到RAM /待机状态
Enable freezer for suspend to RAM/standby
CONFIG_SUSPEND_FREEZER
选"Y".除非你知道自己在做什么
Hibernation (aka 'suspend to disk')
CONFIG_HIBERNATION
"休眠到硬盘"(ACPI S4)支持.也就是将内存的内容保存到硬盘(hibernation),所有部件全都停止工作.
要使用此功能,你首先需要使用内核引导参数"resume=/dev/swappartition",
然后执行"echo disk > /sys/power/state"命令.如果你不想从先前的休眠状态中恢复,
那么可以使用"noresume"内核引导参数.更多信息,可以参考"Documentation/power/swsusp.txt"文件.
Default resume partition
CONFIG_PM_STD_PARTITION
默认的休眠分区.这个分区必须是swap分区.不过这里设置的值会被明确的内核引导参数中的值覆盖.
Opportunistic sleep
CONFIG_PM_AUTOSLEEP
这是一种从安卓借鉴过来的休眠方式.这个特性在安卓系统上被称为"suspend blockers"或"wakelocks".
这是一种更激进的电源管理模式,以尽可能节约电力为目的.
系统默认就处于休眠状态,仅为内存和少数唤醒系统所必须的设备供电,
当有任务(唤醒源)需要运行的时候才唤醒相关组件工作,工作完成后又立即进入休眠状态.
不过这些特性需要相应的设备驱动程序的支持.目前除了安卓设备,在PC和服务器领域,
能够利用此特性的驱动还比较少,不过这是一项非常有前途的电源技术,喜欢尝鲜的可以考虑开启.
User space wakeup sources interface
CONFIG_PM_WAKELOCKS
允许用户空间的程序通过sys文件系统接口,创建/激活/撤销系统的"唤醒源".需要与CONFIG_PM_AUTOSLEEP配合使用.
Maximum number of user space wakeup sources (0 = no limit)
CONFIG_PM_WAKELOCKS_LIMIT
用户空间程序允许使用的"唤醒源"数量,"0"表示无限,最大值是"100000".
Garbage collector for user space wakeup sources
CONFIG_PM_WAKELOCKS_GC
对"唤醒源"对象使用垃圾回收.主要用于调试目的和Android环境.
Run-time PM core functionality
CONFIG_PM_RUNTIME
允许IO设备(比如硬盘/网卡/声卡)在系统运行时进入省电模式,
并可在收到(硬件或驱动产生的)唤醒信号后恢复正常.
此功能通常需要硬件的支持.建议在笔记本/嵌入式等需要节约电力的设备上选"Y".
Device power management core functionality
设备电源管理核心功能
Power Management Debug Support
CONFIG_PM_DEBUG
仅供调试使用
Enable workqueue power-efficient mode by default
默认情况下启用工作队列节能模式
ACPI (Advanced Configuration and Power Interface) Support
CONFIG_ACPI
高级配置与电源接口(Advanced Configuration and Power Interface)包括了软件和硬件方面的规范,
目前已被软硬件厂商广泛支持,并且取代了许多过去的配置与电源管理接口,
包括 PnP BIOS (Plug-and-Play BIOS), MPS(CONFIG_X86_MPPARSE),
APM(Advanced Power Management) 等.总之,ACPI已经成为x86平台必不可少的组件,
如果你没有特别的理由,务必选中此项.
AML debugger interface
AML调试器界面
Deprecated /proc/acpi files
CONFIG_ACPI_PROCFS
过时的 /proc/acpi 接口支持,建议关闭.
Deprecated power /proc/acpi directories
CONFIG_ACPI_PROCFS_POWER
过时的 /proc/acpi 接口支持,建议关闭.
Allow supported ACPI revision to be overridden
允许覆盖支持的ACPI修订版
EC read/write access through /sys/kernel/debug/ec
CONFIG_ACPI_EC_DEBUGFS
仅供调试使用.
Deprecated /proc/acpi/event support
CONFIG_ACPI_PROC_EVENT
过时的 /proc/acpi/event 接口支持,建议关闭.
AC Adapter
CONFIG_ACPI_AC
允许在外接交流电源和内置电池之间进行切换.
Battery
CONFIG_ACPI_BATTERY
允许通过 /proc/acpi/battery 接口查看电池信息.
Button
CONFIG_ACPI_BUTTON
允许守护进程通过 /proc/acpi/event 接口捕获power/sleep/lid(合上笔记本)按钮事件,
并执行相应的动作,软关机(poweroff)也需要它的支持.
Video
CONFIG_ACPI_VIDEO
对主板上的集成显卡提供ACPI支持.注意:仅支持集成显卡.
Fan
CONFIG_ACPI_FAN
允许用户层的程序对风扇进行控制(开/关/查询状态)
Dock
CONFIG_ACPI_DOCK
支持兼容ACPI规范的扩展坞(比如 IBM Ultrabay 和 Dell Module Bay)支持.
Processor
CONFIG_ACPI_PROCESSOR
在支持 ACPI C2/C3 的CPU上,将ACPI安装为idle处理程序.
有几种CPU频率调节驱动依赖于它.而且目前的CPU都已经支持ACPI规范,建议开启此项.
IPMI
CONFIG_ACPI_IPMI
允许ACPI使用IPMI(智能平台管理接口)的请求/应答消息访问BMC(主板管理控制器).
IPMI通常出现在服务器中,以允许通过诸如ipmitool这样的工具监视服务器的
物理健康特征(温度/电压/风扇状态/电源状态).
Processor Aggregator
CONFIG_ACPI_PROCESSOR_AGGREGATOR
支持 ACPI 4.0 加入的处理器聚合器(processor Aggregator)功能,
以允许操作系统对系统中所有的CPU进行统一的配置和控制.
目前只支持逻辑处理器idling功能,其目标是降低耗电量.
Thermal Zone
CONFIG_ACPI_THERMAL
ACPI thermal zone 支持.系统温度过高时可以及时调整工作状态以避免你的CPU被烧毁.
目前所有CPU都支持此特性.务必开启.参见CONFIG_THERMAL选项.
Allow upgrading ACPI tables via initrd
允许通过initrd升级ACPI表
NUMA support
CONFIG_ACPI_NUMA
通过读取系统固件中的ACPI表,获得NUMA系统的CPU及物理内存分布信息.NUMA系统必选.
Custom DSDT Table file to include
CONFIG_ACPI_CUSTOM_DSDT_FILE
允许将一个定制过的DSDT编译进内核.
详情参见"Documentation/acpi/dsdt-override.txt"文档.看不懂的请保持空白.
ACPI tables override via initrd
CONFIG_ACPI_INITRD_TABLE_OVERRIDE
允许initrd更改 ACPI tables 中的任意内容. ACPI tables 是BIOS提供给OS的硬件配置数据,
包括系统硬件的电源管理和配置管理.详情参见"Documentation/acpi/initrd_table_override.txt"文件.
Debug Statements
CONFIG_ACPI_DEBUG
详细的ACPI调试信息,不搞开发就别选.
PCI slot detection driver
CONFIG_ACPI_PCI_SLOT
将每个PCI插槽都作为一个单独的条目列在 /sys/bus/pci/slots/ 目录中,
有助于将设备的物理插槽位置与逻辑的PCI总线地址进行对应.不确定的选"No".
Power Management Timer Support
CONFIG_X86_PM_TIMER
ACPI PM Timer,简称"ACPI Timer",是一种集成在主板上的硬件时钟发生器,提供3.579545MHz固定频率.
这是比较传统的硬件时钟发生器(HPET则是比较新型的硬件时钟发生器),
目前所有的主板都支持,而且是ACPI规范不可分割的部分.除非你确定不需要,否则必选.
Container and Module Devices
CONFIG_ACPI_CONTAINER
支持 NUMA节点/CPU/内存 的热插拔. Device ID: ACPI0004, PNP0A05, PNP0A06
Memory Hotplug
CONFIG_ACPI_HOTPLUG_MEMORY
内存热插拔支持. Device ID: PNP0C80
Smart Battery System
CONFIG_ACPI_SBS
智能电池系统(Smart Battery System)可以让笔记型电脑显示及管理详细精确的电池状态信息.
使用锂电池的笔记本电脑必备利器.但遗憾的是并不是所有笔记本都支持这项特性.
Hardware Error Device
CONFIG_ACPI_HED
Hardware Error Device (Device ID: PNP0C33) 能够通过 SCI 报告一些硬件错误(通常是已经被纠正的错误).
如果你的系统中有设备ID为"PNP0C33"的设备(比如某些Intel芯片组),那么就选上.
Allow ACPI methods to be inserted/replaced at run time
CONFIG_ACPI_CUSTOM_METHOD
允许在不断电的情况下直接对ACPI的功能进行删改,
包含一定危险性,它允许root任意修改内存中内核空间的内容.仅用于调试.
Boottime Graphics Resource Table support
CONFIG_ACPI_BGRT
在 /sys/firmware/acpi/bgrt/ 中显示
ACPI Boottime Graphics Resource Table ,以允许操作系统获取固件中的启动画面(splash).
ACPI NVDIMM Firmware Interface Table (NFIT)
ACPI NVDIMM固件接口表(NFIT)
ACPI Platform Error Interface (APEI)
CONFIG_ACPI_APEI
高级平台错误接口(ACPI Platform Error Interface)是RAS(Reliability,
Availability and Serviceability)的一部分,是定义在 ACPI 4.0 规范中的一个面向硬件错误管理的接口,
主要是为了统一 firmware/BIOS 和 OS 之间的错误交互机制,使用标准的错误接口进行管理,
同时也扩展了错误接口的内容以便实现更加灵活丰富的功能.
APEI Generic Hardware Error Source
CONFIG_ACPI_APEI_GHES
"Firmware First Mode"支持.由于BIOS/FIRMWARE是平台相关的,
因此BIOS/FIRMWARE比OS更清楚硬件平台的配置情况,
甚至包含各种必须的修正/定制/优化.这样,在"Firmware First"模式下,
BIOS/FIRMWARE利用这一优势,可以有针对性的对发生的硬件错误进行分析/处理/分发,
也可以更准确的记录错误的现场信息.这样,不但对硬件错误可以做出更准确,更复杂的处理,
而且可以降低OS的复杂性和冗余度.建议开启.
APEI PCIe AER logging/recovering support
CONFIG_ACPI_APEI_PCIEAER
让 PCIe AER errors 首先通过 APEI firmware 进行报告.
APEI memory error recovering support
CONFIG_ACPI_APEI_MEMORY_FAILURE
让 Memory errors 首先通过 APEI firmware 进行报告.
APEI Error INJection (EINJ)
CONFIG_ACPI_APEI_EINJ
仅供调试使用.
APEI Error Record Serialization Table (ERST) Debug Support
CONFIG_ACPI_APEI_ERST_DEBUG
仅供调试使用
DPTF Platform Power Participant
DPTF平台电力参与者
Extended Error Log support
扩展错误日志支持
PMIC (Power Management Integrated Circuit) operation region support
PMIC(电源管理集成电路)操作区域支持
ACPI configfs support
ACPI configfs支持
SFI (Simple Firmware Interface) Support
CONFIG_SFI
简单固件接口规范(Simple Firmware Interface)使用一种轻量级的简单方法(通过内存中的一张静态表格)
从firmware向操作系统传递信息.目前这个规范仅用于第二代 Intel Atom 平台,其核心名称是"Moorestown".
CPU Frequency scaling
CONFIG_CPU_FREQ
CPUfreq子系统允许动态改变CPU主频,达到省电和降温的目的.
现如今的CPU都已经支持动态频率调整,建议开启.不过,如果你是为虚拟机编译内核,
就没有必要开启了,由宿主机内核去控制就OK了.
CPU frequency translation statistics
CONFIG_CPU_FREQ_STAT
通过sysfs文件系统输出CPU频率变化的统计信息
CPU frequency translation statistics details
CONFIG_CPU_FREQ_STAT_DETAILS
输出更详细的CPU频率变化统计信息
Default CPUFreq governor
默认的CPU频率调节策略.不同策略拥有不同的调节效果.
'performance' governor
CONFIG_CPU_FREQ_GOV_PERFORMANCE
'性能'优先,静态的将频率设置为cpu支持的最高频率
'powersave' governor
CONFIG_CPU_FREQ_GOV_POWERSAVE
'节能'优先,静态的将频率设置为cpu支持的最低频率
'userspace' governor for userspace frequency scaling
CONFIG_CPU_FREQ_GOV_USERSPACE
既允许手动调整cpu频率,也允许用户空间的程序动态的调整cpu频率(需要额外的调频软件)
'ondemand' cpufreq policy governor
CONFIG_CPU_FREQ_GOV_ONDEMAND
'立即响应',周期性的考察CPU负载并自动的动态调整cpu频率(不需要额外的调频软件),适合台式机
'conservative' cpufreq governor
CONFIG_CPU_FREQ_GOV_CONSERVATIVE
'保守',和'ondemand'相似,但是频率的升降是渐变式的(幅度不会很大),更适合用于笔记本/PDA/x86_64环境
x86 CPU frequency scaling drivers
CPU频率调节器驱动
intel P state control
CONFIG_X86_INTEL_PSTATE
Intel CPU 的 P-state 驱动,面向"Sandy Bridge"/"Ivy Bridge"/"Haswell"或更新的CPU微架构,
可以更好的支持"Turbo Boost 2.0"技术.
Processor Clocking Control interface driver
CONFIG_X86_PCC_CPUFREQ
PCC(Processor Clocking Control)接口支持.此种接口仅对某些HP Proliant系列服务器有意义.
更多细节可以参考"Documentation/cpu-freq/pcc-cpufreq.txt"文件.
ACPI Processor P-States driver
CONFIG_X86_ACPI_CPUFREQ
这是首选的驱动(CONFIG_X86_INTEL_PSTATE也依赖于它),
同时支持Intel和AMD的CPU.除非你的CPU实在太老,否则必选.
Legacy cpb sysfs knob support for AMD CPUs
C ONFIG_X86_ACPI_CPUFREQ_CPB
为了兼容旧的用户空间程序而设置,建议关闭.
AMD Opteron/Athlon64 PowerNow!
CONFIG_X86_POWERNOW_K8
过时的驱动,仅为老旧的K8核心的AMD处理器提供支持.
K10以及更新的CPU应该使用CONFIG_X86_ACPI_CPUFREQ驱动.
AMD frequency sensitivity feedback powersave bias
CONFIG_X86_AMD_FREQ_SENSITIVITY
如果你使用 AMD Family 16h 或者更高级别的处理器,同时又使用"ondemand"频率调节器,
开启此项可以更有效的进行频率调节(在保证性能的前提下更节能).
Intel Enhanced SpeedStep (deprecated)
CONFIG_X86_SPEEDSTEP_CENTRINO
已被时代抛弃的驱动,仅对老旧的迅驰平台 Intel Pentium M 或者 Intel Xeons 处理器有意义.
Intel Pentium 4 clock modulation
CONFIG_X86_P4_CLOCKMOD
已被时代抛弃的驱动,仅对支持老旧的Speedstep技术的
Intel Pentium 4 / XEON 处理器有意义.而且即便是在这样的CPU上,
因为种种兼容性问题可能导致的不稳定,也不建议开启.
CPU idle PM support
CONFIG_CPU_IDLE
CPU idle 指令支持,该指令可以让CPU在空闲时"打盹"以节约电力和减少发热.
只要是支持ACPI的CPU就应该开启.由于所有64位CPU都已支持ACPI,所以不必犹豫,
开启![提示]为虚拟机编译的内核就没有必要开启了,由宿主机内核去控制就OK了.
Support multiple cpuidle drivers
CONFIG_CPU_IDLE_MULTIPLE_DRIVERS
允许CONFIG_CPU_IDLE为每个不同的CPU使用不同的驱动.
仅在你的系统由多个不同型号的CPU组成,并且具有不同的唤醒潜伏时间和状态的时候才需要开启.
Ladder governor (for periodic timer tick)
梯形调速器(用于定期计时器滴答)
Menu governor (for tickless system)
菜单调控器(用于无滴答系统)
Cpuidle Driver for Intel Processors
CONFIG_INTEL_IDLE
专用于Intel CPU的cpuidle驱动.而CONFIG_CPU_IDLE则是用于非Intel的CPU.
Memory power savings
内存节能
Intel chipset idle memory power saving driver
CONFIG_I7300_IDLE
在某些具备内存节能特性的intel服务器芯片组上,让内存也可以在空闲时通过idle指令"打盹".这些芯片组必须具备 I/O AT 支持(例如 Intel 7300).同时内存也需要支持此特性.