6.8. 在 NVDIMM 上创建文件系统 DAX 命名空间


在文件系统 DAX 模式下配置附加到系统的 NVDIMM 设备,以支持具有直接访问功能的文件系统。

考虑以下选项:

  • 将现有命名空间重新配置为文件系统 DAX 模式。
  • 如果有可用空间,创建新文件系统 DAX 命名空间。
重要

文件系统 DAX 技术仅作为技术预览提供,不受红帽支持。

6.8.1. 文件系统直接访问模式中的 NVDIMM

当在文件系统直接访问(文件系统 DAX、fsdax)模式下配置 NVDIMM 设备时,您可以在上面创建一个文件系统。对此文件系统上的文件执行 mmap() 操作的任何应用程序都可以直接访问其存储。这启用了 NVDIMM 的直接访问编程模型。

以下新的 -o dax 选项现在可用,如果需要,可以通过文件属性控制直接访问行为:

-o dax=inode

当您不要在挂载文件系统时指定任何 dax 选项时,这个选项是默认选项。使用这个选项,您可以在文件上设置属性标志,以控制是否激活 dax 模式。如果需要,您可以在单个文件中设置此标志。

您还可以在一个目录上设置此标志,并且该目录中的任何文件将使用相同的标志创建。您可以使用 xfs_io -c 'chattr +x' directory-name 命令设置此属性标志。

-o dax=never
使用此选项时,即使 dax 标记被设置为 inode 模式,也不会启用 dax 模式。这意味着,per-inode dax 属性标志会被忽略,使用这个标志设置的文件永远不会启用直接访问。
-o dax=always

这个选项等同于旧的 -o dax 行为。使用这个选项,您可以激活文件系统中任何文件的直接访问模式,而不考虑 dax 属性标志。

警告

在以后的发行版本中,-o dax 可能不被支持,如果需要,您可以使用 -o dax=always。在这个模式中,每个文件都可能处于直接访问模式。

按页元数据分配

这个模式需要在系统 DRAM 或 NVDIMM 设备本身中分配每个页面元数据。每个 4 KiB 页的这个数据结构的开销是 64 字节:

  • 在小设备中,开销非常小,足以满足 DRAM 的要求。例如,16-GiB 命名空间只需要 256 MiB 用于页面结构。因为 NVDIMM 设备通常比较小且昂贵,所以最好将页面跟踪数据结构保存在 DRAM 中。
  • 在大小为 TB级或更大的 NVDIMM 设备中,存储页面跟踪数据结构所需的内存量可能会超过系统中的 DRAM 数量。一个 TiB 的 NVDIMM 需要 16 GiB 用于页面结构。因此,在这种情况下首选将数据结构存储在 NVDIMM 本身中。

    您可以在配置命名空间时使用 --map 选项配置每个页面元数据存储的位置:

  • 要在系统 RAM 中分配,请使用 --map=mem
  • 要在 NVDIMM 上分配,请使用 --map=dev
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部