APM代表高级电源管理,中文名称为高级电源管理。目前最新的APM标准是1.2,是基于BIOS的系统电源管理方案。它提供CPU和设备电源管理,并通过设备的超时设置来确定何时将设备切换到低能耗状态。
nbsp
1.由于基于APM的BIOS有自己的电源管理方案,使得计算机之间缺乏一致性,每个BIOS开发者都必须小心翼翼地维护自己的APM BIOS代码和功能。
2.系统进入暂停状态的原因尚不清楚。APM无法知道用户是否按下了睡眠按钮,或者BIOS是否认为系统进入了空闲状态,或者电池电压过低,但Windows必须知道暂停的原因,即使系统没有进入空闲状态。
3.BIOS无法知道用户在做什么,只能通过监控中断和I/O端口来猜测用户的活动。有时候BIOS会让系统处于完全混乱的状态,在不空闲的时候挂起系统或者空闲的时候不进入挂起状态。
4.BIOS APM的早期版本(1.0和1.1)不提供任何系统性能信息。系统是否支持睡眠状态只能通过尝试将系统置于睡眠模式来知道。如果BIOS不支持睡眠模式,将会导致崩溃。BIOS APM 1.2解决了这个缺陷。
5.BIOS对USB设备、插入的电脑附件卡、IEEE1394设备完全不了解,导致上述设备没有进入空闲状态,BIOS却认为系统进入空闲状态,这些设备无法正常使用或者系统崩溃,从而产生冲突。
由于APM的上述缺点,ACPI应运而生。
ACPI代表高级配置电源接口,中文名称为高级配置电源接口。ACPI就是为了解决APM的缺陷而发明的。它定义了许多新的规范:
1.ACPI集成了现有的电源管理BIOS代码、APM API、PNP BIOS API、多处理器规格表等。新的电源管理和配置接口规范。
2.ACPI允许操作系统(不是BIOS)控制电源管理,这与APM不同。
3.ACPI标准定义了硬件寄存器、BIOS接口(包括配置表、控制方法、主板设备的枚举和配置)、系统和设备的电源状态以及ACPI热模型。
4.4支持的代码。BIOS是用AML(ACPI机器语言)而不是汇编语言编写的。BIOS无法决定电源管理或资源管理的策略或超时。
5.所有使用ACPI系统的设备都可以相互通信以了解彼此的使用情况,并且它们都受操作系统的控制。操作系统知道所有关于运行系统状态的信息,因此操作系统处于执行电源管理的最佳位置。
综上所述,ACPI和APM有很多优点,所以推荐使用ACPI来管理系统。通过WinXP的关闭进一步讨论两者的区别和应用。有人问为什么WinXP的控制面板电源选项中没有高级电源管理选项页面和启用高级电源管理支持选项,导致系统无法正常关机?实际上,2000年以后出现的主板BIOS大多支持ACPI管理,所以当电源管理设置中的ACPI功能设置为Enabled时,WinXP已经接管并控制了电源管理。
所以APM的选项页不会出现在系统中,当然启用高级电源管理支持的选项也不会出现。WinXP大部分可以正常关闭。如果无法关闭,原因可能是ACPI的兼容性问题。解决方法是升级最新的BIOS文件。否则,将电源管理设置中的ACPI功能设置为禁用,并将APM的PM控制设置为是。然后重启进入WinXP,会发现有更多的高级电源管理选项页(APM)和控制面板电源选项中启用高级电源管理支持的选项。只需勾选启用高级电源管理支持,并检查HKEY _本地_机器\软件\微软\ Windows NT \当前版本\找到Winlogon中的关机关机,设置值为1,然后重新启动。通常,问题是可以解决的。