从硬件获得内存布局–e820

明白下面两段话即可:

e820 是一个可以侦测物理内存分布的硬件
软件通过15号中断与之通信

区间类型:

  • Usable:已经被映射到物理内存的物理地址。
  • Reserved:这些区间是没有被映射到任何地方,不能当作RAM来使用,但是kernel可以决定将这些区间映射到其他地方,比如PCI设备。通过检查/proc/iomem这个虚拟文件,就可以知道这些reserved的空间,是如何进一步分配给不同的设备来使用了。
  • ACPI data:映射到用来存放ACPI数据的RAM空间,操作系统应该将ACPI Table读入到这个区间内。
  • ACPI NVS:映射到用来存放ACPI数据的非易失性存储空间,操作系统不能使用。
  • Unusable:表示检测到发生错误的物理内存。这个在上面例子里没有,因为比较少见。

参考资料:

  1. e820与kernel物理内存映射