Logo

Linux 内核

6.16.0-rc4

快速搜索

目录

  • 开发流程
  • 提交补丁
  • 行为准则
  • 维护者手册
  • 所有开发流程文档
  • 核心 API
  • 驱动 API
    • 驱动作者通用信息
    • 有用的支持库
    • 总线级别文档
      • 辅助总线
      • Compute Express Link
      • EISA 总线支持
      • Firewire (IEEE 1394) 驱动接口指南
      • I3C 子系统
      • ISA 驱动
      • MEN Chameleon 总线
      • Linux PCI 驱动实现者 API 指南
      • Linux RapidIO 子系统
      • Linux 内核 SLIMbus 支持
      • Linux USB API
      • Virtio
      • VME 设备驱动
      • W1: Dallas 的 1-wire 总线
      • 用于通用 FPGA 接口的 Xillybus 驱动
    • 子系统特定 API
  • 子系统
  • 锁定
  • 许可规则
  • 编写文档
  • 开发工具
  • 测试指南
  • 黑客指南
  • 追踪
  • 故障注入
  • Livepatching
  • Rust
  • 管理
  • 构建系统
  • 报告问题
  • 用户空间工具
  • 用户空间 API
  • 固件
  • 固件和设备树
  • CPU 架构
  • 未排序的文档
  • 翻译

本页

  • 显示源代码

Compute Express Link¶

CXL 设备配置在平台(硬件、BIOS、EFI)、操作系统(早期启动、核心内核、驱动程序)和用户策略决策之间有一个复杂的切换,这些切换相互影响。此处的文档分解了配置步骤。

概述

  • Compute Express Link 驱动程序操作理论
    • CXL 总线
    • 驱动程序基础设施
    • 外部接口
  • Compute Express Link 子系统成熟度图
    • 特性和能力
    • 详细信息

设备参考

  • 设备和协议
    • 协议
    • 设备类型
    • 示例设备

平台配置

  • BIOS/EFI 配置
    • UEFI 设置
    • 物理内存映射
    • 解码器编程
  • ACPI 表
    • CEDT - CXL 早期发现表
    • SRAT - 静态资源亲和性表
    • HMAT - 异构内存属性表
    • SLIT - 系统局部性信息表
    • DSDT - 区分系统描述表
    • ACPI 调试
  • 相干设备属性表 (CDAT)
  • 设备范围内存亲和性结构 (DSMAS)
  • 设备范围延迟和带宽信息结构 (DSLBIS)
  • 交换机范围延迟和带宽信息结构 (SSLBIS)
  • 示例平台配置
    • 每个主机桥一个设备
    • 每个主机桥多个设备
    • 跨主机桥交错
    • 灵活呈现

Linux 内核配置

  • 概述
  • Linux 初始化 (早期启动)
    • BIOS、构建和启动选项
    • 内存映射创建
    • NUMA 节点预留
    • 内存层创建
    • 连续内存分配
  • CXL 驱动程序操作
    • 驱动程序
    • 驱动程序设备
    • 解码器编程
    • 示例配置
  • DAX 驱动程序操作
    • DAX 设备
    • kmem 转换
  • 内存热插拔
    • 默认在线行为
    • 热插拔内存块大小
    • 内存映射
    • 驱动程序管理内存
  • CXL 访问坐标计算
    • 延迟和带宽计算
    • 共享上游链路计算
    • QTG ID

内存分配

  • DAX 设备
  • 页面分配器
    • NUMA 节点和内存策略
    • 内存区域
    • 区域和节点怪癖
    • CGroups 和 CPUSets
  • 回收
    • 降级
    • ZSwap 和节点偏好
    • 使用 ZSwap 降级
  • 巨页
    • 连续内存分配器
    • HugeTLB
©内核开发社区。 | 由 Sphinx 5.3.0 & Alabaster 0.7.16 强力驱动 | 页面源文件