【发布时间】:2016-01-07 23:45:19
【问题描述】:
来自 dmesg,e820 日志:
BIOS-e820: [mem 0x0000000180000000-0x000000047fffffff] (protected)
这标识了 NVDIMM 类型的内存模块。但是,linux(尤其是 4.2 以上)如何对待这个保护区呢?它是否将其用作交换空间、常规内存或...?
【问题讨论】:
标签: linux memory linux-kernel
来自 dmesg,e820 日志:
BIOS-e820: [mem 0x0000000180000000-0x000000047fffffff] (protected)
这标识了 NVDIMM 类型的内存模块。但是,linux(尤其是 4.2 以上)如何对待这个保护区呢?它是否将其用作交换空间、常规内存或...?
【问题讨论】:
标签: linux memory linux-kernel
它似乎被内核版本 4.1 中引入的英特尔持久内存 (PMEM) 驱动程序使用。用于持久存储。
持久性内存或存储在以下位置进行了描述:
该网站将 PMEM 解释为硬盘/固态磁盘持久内存和易失性随机存取内存 (RAM) 之间的一种混合体。
“PMEM 支持非标准 NVDIMM 和受 ADR 保护的内存。新的 X86_PMEM_LEGACY Kconfig 选项解释说,“将使用英特尔 Sandy Bridge-EP 参考 BIOS 使用的非标准 e820 类型 12 标记的内存视为受保护记忆。内核会将这些区域提供给 'pmem' 驱动程序,以便它们可用于持久存储。""
这里有一些人将它用于 PMEM 驱动程序的示例:
https://lists.01.org/pipermail/linux-nvdimm/2015-February/000059.html
有关 Linux 中持久内存使用的真正深入的文章,请参见此处:
【讨论】: