没有合适的资源?快使用搜索试试~ 我知道了~
首页ACPI 5.0规范详解:电源管理关键指南
"ACPI Spec 5.0是Advanced Configuration and Power Interface 规范的第五个版本,由Hewlett-Packard Corporation、Intel Corporation、Microsoft Corporation、Phoenix Technologies Ltd. 和Toshiba Corporation联合发布,旨在定义和标准化计算机系统的电源管理和配置。这个规范是2011年11月23日发布的草案版,包含了从2006年至2011年的更新内容。"
ACPI(高级配置和电源接口)是一个重要的标准,它定义了操作系统如何与硬件进行通信以实现节能功能和灵活的系统配置。在深入探讨ACPI 5.0之前,我们需要理解ACPI的基本概念。ACPI允许操作系统控制硬件设备的状态,包括设备的启动、休眠、唤醒等功能,同时也支持电源状态的管理,如C1到C6的低功耗模式。
ACPI 5.0规范的亮点和关键改进可能包括:
1. **设备状态管理**:更精细的设备状态控制,使得系统能够更高效地管理电源,例如,允许设备在不使用时进入更低功耗模式。
2. **多核心处理器支持**:随着多核技术的发展,ACPI 5.0可能提供了对多核心处理器更完善的管理和优化,确保每个核心都能独立地进入不同功耗状态。
3. **热插拔和即插即用**:加强了对热插拔设备的支持,使得用户可以在系统运行时安全地添加或移除硬件,而不会影响系统的稳定性。
4. **固件接口改进**:可能更新了与固件交互的接口,以适应新的硬件技术,如固态硬盘和高速总线协议。
5. **睡眠和唤醒模式**:对睡眠和唤醒机制进行了优化,提高了唤醒速度,同时减少了唤醒过程中可能出现的问题。
6. **系统事件和中断处理**:改进了系统事件和中断处理机制,提高了响应速度和效率。
7. **硬件平台兼容性**:为了适应不断发展的硬件平台,ACPI 5.0可能增强了对新型号和类型硬件的支持,包括移动设备和平板电脑。
此外,ACPI规范还包括了详细的技术细节,如定义了如何编写和解析ACPI表(如AML - ACPI Machine Language代码),这些表用于描述硬件配置和电源状态。开发者和系统工程师可以利用这些信息来编写驱动程序和固件,以确保操作系统与硬件之间的无缝协作。
由于ACPI 5.0是一个草案版本,它可能还包含了对早期版本中错误的修复和性能的改进。然而,值得注意的是,此版本的知识产权声明明确表示,提供该规范并不授予任何知识产权许可,且不承担由此引发的侵权责任。
ACPI Spec 5.0是电源管理和系统配置领域的一个重要里程碑,对于从事系统设计、驱动开发和优化的人员来说,理解和应用这个规范是至关重要的。通过深入学习和实施ACPI 5.0,开发者可以构建更加节能、响应迅速且兼容性良好的系统。
xii Hewlett-Packard/Intel/Microsoft/Phoenix/Toshiba
10
Power Source and Power Meter Devices ................................................. 487
10.1 Smart Battery Subsystems ......................................................................................... 487
10.1.1 ACPI Smart Battery Status Change Notification Requirements...................... 490
10.1.2 Smart Battery Objects ..................................................................................... 491
10.1.3 _SBS (Smart Battery Subsystem) .................................................................. 492
10.2 Control Method Batteries ............................................................................................ 494
10.2.1 Battery Events................................................................................................. 495
10.2.2 Battery Control Methods ................................................................................. 495
10.3 AC Adapters and Power Source Objects.................................................................... 508
10.3.1 _PSR (Power Source)..................................................................................... 508
10.3.2 _PCL (Power Consumer List) ......................................................................... 509
10.3.3 _PIF (Power Source Information).................................................................... 509
10.3.4 _PRL (Power Source Redundancy List) ......................................................... 510
10.4 Power Meters.............................................................................................................. 510
10.4.1 _PMC (Power Meter Capabilities)................................................................... 511
10.4.2 _PTP (Power Trip Points) ............................................................................... 512
10.4.3 _PMM (Power Meter Measurement) ............................................................... 513
10.4.4 _PAI (Power Averaging Interval)..................................................................... 513
10.4.5 _GAI (Get Averaging Interval)......................................................................... 514
10.4.8 _PMD (Power Metered Devices)..................................................................... 515
10.5 Example: Power Source and Power Meter Namespace............................................ 515
11
Thermal Management................................................................................. 517
11.1 Thermal Control .......................................................................................................... 517
11.1.1 Active, Passive, and Critical Policies .............................................................. 518
11.1.2 Dynamically Changing Cooling Temperature Trip Points ............................... 519
11.1.3 Detecting Temperature Changes .................................................................... 520
11.1.4 Active Cooling ................................................................................................ 522
11.1.5 Passive Cooling .............................................................................................. 523
11.1.6 Critical Shutdown ............................................................................................ 524
11.2 Cooling Preferences .................................................................................................. 525
11.2.1 Evaluating Thermal Device Lists..................................................................... 526
11.2.2 Evaluating Device Thermal Relationship Information ..................................... 527
11.3 Fan Device.................................................................................................................. 527
11.3.1 Fan Objects..................................................................................................... 528
11.4 Thermal Objects.......................................................................................................... 531
11.4.1 _ACx (Active Cooling) ..................................................................................... 532
11.4.2 _ALx (Active List) ............................................................................................ 532
11.4.3 _ART (Active Cooling Relationship Table)...................................................... 533
11.4.4 _CRT (Critical Temperature)........................................................................... 536
11.4.5 _DTI (Device Temperature Indication) ............................................................ 536
11.4.6 _HOT (Hot Temperature) ................................................................................ 536
11.4.7 _NTT (Notification Temperature Threshold) ................................................... 537
11.4.8 _PSL (Passive List)......................................................................................... 537
11.4.9 _PSV (Passive) ............................................................................................... 537
Advanced Configuration and Power Interface Specification
Hewlett-Packard/Intel/Microsoft/Phoenix/Toshiba xiii
11.4.10 _RTV (Relative Temperature Values) ........................................................... 538
11.4.11 _SCP (Set Cooling Policy) ............................................................................ 538
11.4.12 _TC1 (Thermal Constant 1) .......................................................................... 541
11.4.13 _TC2 (Thermal Constant 2) .......................................................................... 541
11.4.14 _TMP (Temperature)..................................................................................... 542
11.4.15 _TPT (Trip Point Temperature) ..................................................................... 542
11.4.16 _TRT (Thermal Relationship Table).............................................................. 542
11.4.17 _TSP (Thermal Sampling Period) ................................................................. 543
11.4.18 _TST (Temperature Sensor Threshold) ........................................................ 543
11.4.19 _TZD (Thermal Zone Devices)...................................................................... 544
11.4.20 _TZM (Thermal Zone Member)..................................................................... 544
11.4.21 _TZP (Thermal Zone Polling)........................................................................ 544
11.5 Native OS Device Driver Thermal Interfaces .............................................................. 545
11.6 Thermal Zone Interface Requirements ....................................................................... 546
11.7 Thermal Zone Examples............................................................................................. 546
11.7.1 Example: The Basic Thermal Zone................................................................. 546
11.7.2 Example: Multiple-Speed Fans ....................................................................... 548
11.7.3 Example: Thermal Zone with Multiple Devices ............................................... 550
12
ACPI Embedded Controller Interface Specification ................................ 557
12.1 Embedded Controller Interface Description ................................................................ 557
12.2 Embedded Controller Register Descriptions............................................................... 561
12.2.1 Embedded Controller Status, EC_SC (R) ....................................................... 561
12.2.2 Embedded Controller Command, EC_SC (W)................................................ 562
12.2.3 Embedded Controller Data, EC_DATA (R/W)................................................. 562
12.3 Embedded Controller Command Set .......................................................................... 562
12.3.1 Read Embedded Controller, RD_EC (0x80) ................................................... 563
12.3.2 Write Embedded Controller, WR_EC (0x81).................................................. 563
12.3.3 Burst Enable Embedded Controller, BE_EC (0x82)........................................ 563
12.3.4 Burst Disable Embedded Controller, BD_EC (0x83)....................................... 564
12.3.5 Query Embedded Controller, QR_EC (0x84).................................................. 564
12.4 SMBus Host Controller Notification Header (Optional), OS_SMB_EVT ..................... 564
12.5 Embedded Controller Firmware .................................................................................. 564
12.6 Interrupt Model............................................................................................................565
12.6.1 Event Interrupt Model...................................................................................... 565
12.6.2 Command Interrupt Model .............................................................................. 566
12.7 Embedded Controller Interfacing Algorithms .............................................................. 566
12.8 Embedded Controller Description Information ............................................................ 567
12.9 SMBus Host Controller Interface via Embedded Controller....................................... 567
12.9.1 Register Description........................................................................................ 568
12.9.2 Protocol Description ........................................................................................ 572
12.10 SMBus Devices......................................................................................................... 577
12.10.1 SMBus Device Access Restrictions .............................................................. 578
12.10.2 SMBus Device Command Access Restriction .............................................. 578
12.11 Defining an Embedded Controller Device in ACPI Namespace ............................... 578
12.11.1 Example: EC Definition ASL Code ............................................................... 579
xiv Hewlett-Packard/Intel/Microsoft/Phoenix/Toshiba
12.12 Defining an EC SMBus Host Controller in ACPI Namespace................................... 580
12.12.1 Example: EC SMBus Host Controller ASL-Code .......................................... 580
13
ACPI System Management Bus Interface Specification ......................... 583
13.1 SMBus Overview ........................................................................................................ 583
13.1.1 SMBus Slave Addresses................................................................................. 583
13.1.2 SMBus Protocols............................................................................................. 584
13.1.3 SMBus Status Codes ...................................................................................... 585
13.1.4 SMBus Command Values ............................................................................... 585
13.2 Accessing the SMBus from ASL Code ....................................................................... 585
13.2.1 Declaring SMBus Host Controller Objects ...................................................... 585
13.2.2 Declaring SMBus Devices............................................................................... 586
13.2.3 Declaring SMBus Operation Regions ............................................................. 586
13.2.4 Declaring SMBus Fields.................................................................................. 588
13.2.5 Declaring and Using an SMBus Data Buffer ................................................... 590
13.3 Using the SMBus Protocols ........................................................................................ 591
13.3.1 Read/Write Quick (SMBQuick)........................................................................ 591
13.3.2 Send/Receive Byte (SMBSendReceive) ......................................................... 592
13.3.3 Read/Write Byte (SMBByte)............................................................................ 593
13.3.4 Read/Write Word (SMBWord)......................................................................... 594
13.3.5 Read/Write Block (SMBBlock) ........................................................................ 594
13.3.6 Word Process Call (SMBProcessCall) ............................................................ 595
13.3.7 Block Process Call (SMBBlockProcessCall) ................................................... 596
14
Platform Communications Channel (PCC)............................................... 597
14.1 Platform Communications Channel Table .................................................................. 597
14.1.1 Platform Communications Channel Global Flags ........................................... 598
14.1.2 Platform Communications Channel Subspace Structures .............................. 598
14.1.3 Generic Communications Subspace Structure (type 0) .................................. 598
14.2 Generic Communications Channel Shared Memory Region ...................................... 599
14.2.1 Generic Communications Channel Command Field ....................................... 599
14.2.2 Generic Communications Channel Status Field ............................................. 600
14.3 Doorbell Protocol ........................................................................................................ 600
14.4 Platform Notification.................................................................................................... 601
14.5 Referencing the PCC address space.......................................................................... 601
15
System Address Map Interfaces ............................................................... 603
15.1 INT 15H, E820H - Query System Address Map ......................................................... 604
15.2 E820 Assumptions and Limitations............................................................................. 606
15.3 UEFI GetMemoryMap() Boot Services Function........................................................ 606
15.4 UEFI Assumptions and Limitations ............................................................................ 607
15.5 Example Address Map................................................................................................ 608
15.6 Example: Operating System Usage............................................................................ 609
Advanced Configuration and Power Interface Specification
Hewlett-Packard/Intel/Microsoft/Phoenix/Toshiba xv
16
Waking and Sleeping ................................................................................. 611
16.1 Sleeping States........................................................................................................... 613
16.1.1 S1 Sleeping State ........................................................................................... 615
16.1.2 S2 Sleeping State ........................................................................................... 616
16.1.3 S3 Sleeping State ........................................................................................... 616
16.1.4 S4 Sleeping State ........................................................................................... 617
16.1.5 S5 Soft Off State ............................................................................................. 618
16.1.6 Transitioning from the Working to the Sleeping State..................................... 619
16.1.7 Transitioning from the Working to the Soft Off State....................................... 620
16.2 Flushing Caches ......................................................................................................... 620
16.3 Initialization ................................................................................................................. 620
16.3.1 Placing the System in ACPI Mode .................................................................. 623
16.3.2 BIOS Initialization of Memory.......................................................................... 623
16.3.3 OS Loading ..................................................................................................... 625
16.3.4 Exiting ACPI Mode .......................................................................................... 627
17
Non-Uniform Memory Access (NUMA) Architecture Platforms ............. 629
17.1 NUMA Node................................................................................................................ 629
17.2 System Locality........................................................................................................... 629
17.2.1 System Resource Affinity Table Definition ...................................................... 630
17.3 System Locality Distance Information ......................................................................... 630
17.3.1 Online Hot Plug ............................................................................................... 630
17.3.2 Impact to Existing Localities............................................................................ 631
18
ACPI Platform Error Interfaces (APEI)...................................................... 633
18.2 Relationship between OSPM and System Firmware .................................................. 634
18.3 Error Source Discovery............................................................................................... 634
18.3.1 Boot Error Source ........................................................................................... 634
18.3.2 ACPI Error Source .......................................................................................... 636
18.4 Firmware First Error Handling..................................................................................... 648
18.4.1 Example: Firmware First Handling Using NMI Notification ............................. 649
18.5 Error Serialization ....................................................................................................... 649
18.5.1 Serialization Action Table................................................................................ 650
18.5.2 Operations....................................................................................................... 656
18.6 Error Injection.............................................................................................................. 660
18.6.1 Error Injection Table (EINJ)............................................................................. 660
18.6.2 Injection Instruction Entries ............................................................................. 663
18.6.3 Injection Instructions ....................................................................................... 664
18.6.4 Trigger Action Table........................................................................................ 666
19
ACPI Source Language (ASL)Reference.................................................. 669
19.1 ASL Language Grammar ............................................................................................ 669
19.1.1 ASL Grammar Notation................................................................................... 670
19.1.2 ASL Name and Pathname Terms ................................................................... 671
xvi Hewlett-Packard/Intel/Microsoft/Phoenix/Toshiba
19.1.3 ASL Root and Secondary Terms .................................................................... 671
19.1.4 ASL Data and Constant Terms ....................................................................... 673
19.1.5 ASL Opcode Terms......................................................................................... 675
19.1.6 ASL Primary (Terminal) Terms ....................................................................... 676
19.1.7 ASL Parameter Keyword Terms ..................................................................... 687
19.1.8 ASL Resource Template Terms...................................................................... 689
19.2 ASL Concepts ............................................................................................................. 697
19.2.1 ASL Names ..................................................................................................... 697
19.2.2 ASL Literal Constants ..................................................................................... 697
19.2.3 ASL Resource Templates ............................................................................... 699
19.2.4 ASL Macros..................................................................................................... 701
19.2.5 ASL Data Types .............................................................................................. 701
19.3 ASL Operator Summary ............................................................................................. 713
19.4 ASL Operator Summary By Type .............................................................................. 717
19.5 ASL Operator Reference ........................................................................................... 721
19.5.1 AccessAs (Change Field Unit Access)............................................................ 721
19.5.2 Acquire (Acquire a Mutex)............................................................................... 722
19.5.3 Add (Integer Add)............................................................................................ 722
19.5.4 Alias (Declare Name Alias) ............................................................................. 723
19.5.5 And (Integer Bitwise And) ............................................................................... 723
19.5.6 Argx (Method Argument Data Objects) ........................................................... 723
19.5.7 BankField (Declare Bank/Data Field).............................................................. 724
19.5.8 Break (Break from While)................................................................................ 725
19.5.9 BreakPoint (Execution Break Point)................................................................ 725
19.5.10 Buffer (Declare Buffer Object)....................................................................... 725
19.5.11 Case (Expression for Conditional Execution)................................................ 726
19.5.12 Concatenate (Concatenate Data) ................................................................. 726
19.5.13 ConcatenateResTemplate (Concatenate Resource Templates) .................. 727
19.5.14 CondRefOf (Create Object Reference Conditionally) ................................... 727
19.5.15 Connection (Declare Field Connection Attributes) ........................................ 727
19.5.16 Continue (Continue Innermost Enclosing While) .......................................... 728
19.5.17 CopyObject (Copy and Store Object)............................................................ 728
19.5.18 CreateBitField (Create 1-Bit Buffer Field) .................................................... 729
19.5.19 CreateByteField (Create 8-Bit Buffer Field) .................................................. 729
19.5.20 CreateDWordField (Create 32-Bit Buffer Field) ............................................ 729
19.5.21 CreateField (Create Arbitrary Length Buffer Field) ....................................... 730
19.5.22 CreateQWordField (Create 64-Bit Buffer Field) ............................................ 730
19.5.23 CreateWordField (Create 16-Bit Buffer Field) .............................................. 730
19.5.24 DataTableRegion (Create Data Table Operation Region) ............................ 730
19.5.25 Debug (Debugger Output)............................................................................. 731
19.5.26 Decrement (Integer Decrement) ................................................................... 731
19.5.27 Default (Default Execution Path in Switch) .................................................. 732
19.5.28 DefinitionBlock (Declare Definition Block)..................................................... 732
19.5.29 DerefOf (Dereference an Object Reference) ................................................ 733
19.5.30 Device (Declare Bus/Device Package) ......................................................... 733
19.5.31 Divide (Integer Divide)................................................................................... 734
19.5.32 DMA (DMA Resource Descriptor Macro) ...................................................... 735
剩余957页未读,继续阅读
点击了解资源详情
点击了解资源详情
点击了解资源详情
125 浏览量
2018-07-09 上传
2012-05-31 上传
2019-07-05 上传
点击了解资源详情
点击了解资源详情
joeyshen
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Angular实现MarcHayek简历展示应用教程
- Crossbow Spot最新更新 - 获取Chrome扩展新闻
- 量子管道网络优化与Python实现
- Debian系统中APT缓存维护工具的使用方法与实践
- Python模块AccessControl的Windows64位安装文件介绍
- 掌握最新*** Fisher资讯,使用Google Chrome扩展
- Ember应用程序开发流程与环境配置指南
- EZPCOpenSDK_v5.1.2_build***版本更新详情
- Postcode-Finder:利用JavaScript和Google Geocode API实现
- AWS商业交易监控器:航线行为分析与营销策略制定
- AccessControl-4.0b6压缩包详细使用教程
- Python编程实践与技巧汇总
- 使用Sikuli和Python打造颜色求解器项目
- .Net基础视频教程:掌握GDI绘图技术
- 深入理解数据结构与JavaScript实践项目
- 双子座在线裁判系统:提高编程竞赛效率
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功