了解/ proc / iomem

问题描述 投票:4回答:1

我正在查看“ / proc / iomem”条目,对此有疑问。

我的Linux PC正在运行Intel Xeon,并且具有4GB的系统RAM。

/ proc / iomem我的系统条目看起来像

00000000-0000ffff:保留00010000-0009f3ff:系统RAM0009f400-0009ffff:保留000a0000-000bffff:PCI总线0000:00000c0000-000c7fff:视频ROM000ca000-000cbfff:保留000ca000-000cafff:适配器ROM000cb000-000cbfff:适配器ROM000cc000-000cffff:PCI总线0000:00000d0000-000d3fff:PCI总线0000:00000d4000-000d7fff:PCI总线0000:00000d8000-000dbfff:PCI总线0000:00000dc000-000fffff:保留000f0000-000fffff:系统ROM00100000-7fedffff:系统RAM01000000-01520fa4:内核代码01520fa5-01c0e44f:内核数据01d56000-0201d963:内核bss03000000-0b0fffff:崩溃内核7fee0000-7fefefff:ACPI表7feff000-7fefffff:ACPI非易失性存储7ff00000-7fffffff:系统RAMc0000000-febfffff:PCI总线0000:00fec00000-fec0ffff:保留fec00000-fec003ff:IOAPIC 0fed00000-fed003ff:HPET 0fed00000-fed003ff:PNP 00:08fee00000-fee00fff:本地APICfee00000-fee00fff:保留fffe0000-ffffffff:保留

现在,假设我的处理器有32条地址线(我觉得它有40条地址线-我从/ proc / cpuinfo中看到了这条线,这意味着我的处理器将能够寻址4GB的物理内存。

从我的“ / proc / iomem”条目来看,我发现我的CPU仅直接寻址2GB的系统RAM。

现在我的疑问是

  1. 我的CPU如何寻址另外2 GB的RAM?我在哪里可以看到它的内存映射?
linux linux-kernel embedded-linux
1个回答
3
投票

您正在运行3 GB barrier(BIOS已降低到2 GB)。仅2 GB用作系统RAM。其他2 GB的物理地址空间用于I / O设备。

另一个内存用作high memory,不能直接使用,但是每当要访问它时,都必须将其逐页映射到虚拟地址空间。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.