2016-01-07 43 views
3

從dmesg的,E820原木:Linux如何處理(受保護的)內存區域?

BIOS-e820: [mem 0x0000000180000000-0x000000047fffffff] (protected) 

這標識一個NVDIMM型存儲器模塊。但是,linux(特別是4.2版)如何處理這個保護區呢?它是否將它用作交換空間,常規內存或...?

回答

2

它似乎被內核版本4.1中引入的Intel永久內存(PMEM)驅動程序使用。用途是用於持久存儲。

持久性存儲器或存儲在所述:

http://pmem.io/

該站點解釋PMEM作爲一種硬盤/固態硬盤持久性存儲器和易失性隨機存取存儲器(RAM)之間的混合的。

http://www.phoronix.com/scan.php?page=news_item&px=PMEM-Linux-4.1-Feature&utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Phoronix+%28Phoronix%29

「PMEM能夠支持非標準NVDIMMs和ADR受保護的內存新X86_PMEM_LEGACY的Kconfig選項解釋說,」對待內存使用12的非標準E820型標記爲已使用由英特爾Sandy Bridge-EP將BIOS作爲受保護的內存。內核將提供這些地區的「PMEM」驅動程序,以便它們可以被用於永久性存儲器「」

有使用它的PMEM司機在這裏的人們的例證:

https://lists.01.org/pipermail/linux-nvdimm/2015-February/000059.html

對於關於Linux中持久內存使用的真正深入的文章,請參閱:

http://lwn.net/Articles/640113/