ACPI 中文文档ACPI 中文文档
首页
第 1 章
第 2 章
第 3 章
第 4 章
第 5 章
第 6 章
第 7 章
第 8 章
第 9 章
第 10 章
第 11 章
第 12 章
第 13 章
第 14 章
第 15 章
第 16 章
第 17 章
第 18 章
第 19 章
第 20 章
第 21 章
附录 A
首页
第 1 章
第 2 章
第 3 章
第 4 章
第 5 章
第 6 章
第 7 章
第 8 章
第 9 章
第 10 章
第 11 章
第 12 章
第 13 章
第 14 章
第 15 章
第 16 章
第 17 章
第 18 章
第 19 章
第 20 章
第 21 章
附录 A
  • 第 6 章

    • 总览
    • 6.1. 设备标识对象
    • 6.2. 设备配置对象
      • 6.2.1. _CDM(时钟域)
      • 6.2.2. _CRS(当前资源设置)
      • 6.2.3. _DIS(禁用)
      • 6.2.4. _DMA(直接内存访问)
      • 6.2.5. _DSD(设备特定数据)
      • 6.2.6. _FIX(固定寄存器资源提供程序)
      • 6.2.7. _GSB(全局系统中断基址)
      • 6.2.8. _HPP(热插拔参数)
      • 6.2.9. _HPX(热插拔参数扩展)
      • 6.2.10. _MAT(多个 APIC 表条目)
      • 6.2.11. _OSC(操作系统能力)
      • 6.2.12. _PRS(可能的资源设置)
      • 6.2.13. _PRT(PCI 路由表)
      • 6.2.14. _PXM(邻近性)
      • 6.2.15. _SLI(系统局部性信息)
      • 6.2.16. _SRS(设置资源设置)
      • 6.2.17. _CCA(缓存一致性属性)
      • 6.2.18. _HMA(异构内存属性)
    • 6.3. 设备插入、移除和状态对象
    • 6.4. ACPI 的资源数据类型
      • 6.4.1. 资源描述符的 ASL 宏
      • 6.4.2. 小型资源数据类型
      • 6.4.3. 大型资源数据类型
        • 6.4.3.1. 24 位内存范围描述符
        • 6.4.3.2. 厂商定义描述符,类型 1
        • 6.4.3.3. 32 位内存范围描述符
        • 6.4.3.4. 32 位固定内存范围描述符
        • 6.4.3.5. 地址空间资源描述符
        • 6.4.3.6. 扩展中断描述符
        • 6.4.3.7. 通用寄存器描述符
        • 6.4.3.8. 连接描述符
        • 6.4.3.9. 引脚功能描述符
        • 6.4.3.10. 引脚配置描述符
        • 6.4.3.11. 引脚组描述符
        • 6.4.3.12. 引脚组功能描述符
        • 6.4.3.13. 引脚组配置描述符
    • 6.5. 其他对象和控制方法

6.2.15. _SLI(系统局部性信息)

通用发起方亲和结构中定义的系统局部性信息表(SLIT)在操作系统初始化期间提供所有系统局部性之间的相对距离信息,以供使用。

SLIT 表中每个 Entry[i,j] 的值,其中 i 表示矩阵的一行,j 表示矩阵的一列,表示从系统局部性 / 邻近域 i 到系统中每个其他系统局部性 j(包括其自身)的相对距离。

i,j 的行值和列值与 ACPI 命名空间中 _PXM 对象返回的值相关。更多信息请参见 _PXM(邻近性)。

系统的动态运行时重配置可能导致系统局部性之间的距离发生变化。

_SLI 是一个可选对象,使平台能够在运行时向操作系统提供更新后的相对系统局部性距离信息。_SLI 向 OSPM 提供从系统局部性 i 到系统中所有其他系统局部性的相对距离更新。

参数:

无

返回值:

一个包含系统局部性信息表的 Buffer

如果系统局部性 i >= N,其中 N 是系统局部性的数量,则 _SLI 方法返回一个包含这些相对距离的缓冲区:

[(i, 0), (i, 1), ..., (i, i-1), (i, i), (0, i), (1, i), ...(i-1, i), (i, i)]

如果系统局部性 i < N,则 _SLI 方法返回一个缓冲区,其中包含这些相对距离:

[(i, 0), (i, 1), ..., (i, i), ...,(i, N-1), (0, i), (1, i),...(i, i), ..., (N-1, i)]

注

(i, i) 始终是值 10。

../_images/Device_Configuration-6.png

图 6.5 系统局部性信息表

系统局部性信息表图示了一个 4 节点系统,其中节点编号为 0 到 3(节点 n = 节点 3),并且 NUMA 距离信息的粒度处于节点级别。在此示例中,我们将系统局部性 / 接近域编号设置为等于节点编号(0-3)。本系统中实现的接近域之间的 NUMA 相对距离在“接近域之间的相对距离示例”所表示的矩阵中进行了描述。接近域由顶行和左列中的数字表示。距离由表中这些域之间内部单元格中的值表示。

表 6.17 接近域之间的相对距离示例

接近域0123
010152018
115101624
220161012
318241210

下面的表描述了这些接近域之间的距离如何被编码到系统局部性信息表中,以供 OSPM 在启动时使用。

表 6.18 系统局部性信息表示例

字段字节长度字节偏移描述
表头
- 签名40‘SLIT’.
- 长度4460
- 修订版本181
- 校验和19整个表的总和必须为零。
- OEMID610OEM ID。
- OEM 表 ID816对于系统局部性信息表,表 ID 是制造商型号 ID。
- OEM 修订版本424对于所提供 OEM Table ID 的系统局部性信息表的 OEM 修订版本。
- 创建者 ID428创建该表的工具的供应商 ID。对于 DSDT、RSDT、SSDT 和 PSDT 表,这是 ASL Compiler 的 ID。
  • 创建者修订版本

| 4 | 32 | 创建该表的工具的修订版本。对于 DSDT、RSDT、SSDT 和 PSDT 表,这是 ASL Compiler 的修订版本。 系统局部性数量 | 8 | 36 | 4 Entry[0][0] | 1 | 44 | 10 Entry[0][1] | 1 | 45 | 15 Entry[0][2] | 1 | 46 | 20 Entry[0][3] | 1 | 47 | 18 Entry[1][0] | 1 | 48 | 15 Entry[1][1] | 1 | 49 | 10 Entry[1][2] | 1 | 50 | 16 Entry[1][3] | 1 | 51 | 24 Entry[2][0] | 1 | 52 | 20 Entry[2][1] | 1 | 53 | 16 Entry[2][2] | 1 | 54 | 10 Entry[2][3] | 1 | 55 | 12 Entry[3][0] | 1 | 56 | 18 Entry[3][1] | 1 | 57 | 24 Entry[3][2] | 1 | 58 | 12 Entry[3][3] | 1 | 59 | 10

如果添加一个新的“节点 4”,则下表表示更新后的系统中接近域的 NUMA 相对距离。

表 6.19 接近域之间的相对距离示例 - 5 节点

接近域01234
01015201817
11510162421
22016101214
31824121023
41721142310

新节点的 _SLI 对象将求值为一个包含 [17,21,14,23,10,17,21,14,23,10] 的缓冲区。

注

某些系统支持跨节点交错内存。这些系统的 SLIT 表示是实现特定的。

Prev
6.2.14. _PXM(邻近性)
Next
6.2.16. _SRS(设置资源设置)