32 位 Windows 仅限于 4Gb RAM 是否存在技术原因?

jam*_*nto 6 memory windows-7 64-bit

可能重复:
为什么 Windows 只显示我的 4GB+ 内存中的大约 3.5GB?
32 位操作系统机器可以用完所有 8GB RAM + 20GB 页面文件吗?

正如您在此表中所见,所有版本的 x86 Win 7 最大容量为 4Gb。

这是否有技术原因,或者这只是让人们购买更昂贵操作系统的营销策略?

kob*_*ltz 13

业界似乎对通常所说的 Windows“4GB 内存限制”存在很多困惑。在谈论性能调优和服务器大小调整时,人们很快就会提到一个事实,即 32 位 Windows 系统上的应用程序只能访问 4GB 内存。但这究竟是什么意思?

根据定义,32 位处理器使用 32 位来表示每个内存字节的位置。2^32 = 42 亿,这意味着 32 位长的内存地址只能引用 42 亿个唯一位置(即 4 GB)。

在 32 位 Windows 世界中,每个应用程序都有自己的“虚拟”4GB 内存空间。(这意味着每个应用程序的功能就好像它有一块 4GB 的内存一样,系统的内存管理器会跟踪内存映射、哪些应用程序正在使用哪些内存、页面文件管理等。)

这 4GB 空间平均分为两部分,2GB 专供内核使用,2GB 留给应用程序使用。每个应用程序都有自己的 2GB,但所有应用程序都必须共享相同的 2GB 内核空间。

来源:http : //www.brianmadden.com/blogs/brianmadden/archive/2004/02/19/the-4gb-windows-memory-limit-what-does-it-really-mean.aspx

[编辑回复:PAE]

x86 处理器硬件架构增加了用于选择额外内存的额外地址线,因此物理地址大小从 32 位增加到 36 位。从理论上讲,这会将最大物理内存大小从 4 GB 增加到 64 GB。虚拟地址的 32 位大小没有改变,因此常规应用程序软件继续使用具有 32 位地址的指令,并且(在平面内存模型中)被限制为 4 GB 的虚拟地址空间。操作系统使用页表将这 4 GB 地址空间映射到 64 GB 物理内存。映射通常以不同的方式应用于每个过程。通过这种方式,即使没有单个常规应用程序可以同时访问所有额外的内存,它也是有用的。

  • @Geek 每个虚拟内存地址都是 32 位宽。这给出了从 0 到 0xFFFFFFFF(大约 43 亿)的可能地址范围。在这大约 43 亿个地址中的每一个(假设它都已填充)中的内容是一个 8 位字节。有些机器的内存地址指的是更大的数据块,通常称为“字”,但 Windows 不会在其中任何一个上运行。 (3认同)
  • PAE呢?(特别是因为 Windows 实现了它) (2认同)

Den*_*nis 8

是和否。

本来,32 位处理器只能处理4 GiBRAM,因为只有2 ^ 32 = 4,294,967,296不同的数字可以用 32 位表示。

每当您在内存中存储内容时,您都需要保存地址以便能够读取或操作它。通常,CPU 仅使用一个寄存器(大小为 32 位)来存储该地址。由于只有2 ^ 32不同的地址,因此超出4 GiB标记的任何内容都不会被使用。

但是,有一些技术,如物理地址扩展 (PAE),允许 32 位操作系统寻址超过4 GiBRAM。

操作系统大大简化了进程,将每个进程映射到内存的某个部分(称为页表)。每个进程仍然限于4 GiB,但这允许操作系统寻址更多的内存,而不仅仅是4 GiB

例如,Windows Server 2003 Datacenter Edition的 32 位版本最多支持64 GiBRAM。

  • @AlexJunyanLi :虽然 x86 架构使用各种宽度的数据总线(从 8088 中的 8 位到奔腾中的 64 位,目前更复杂 [QPI](https://en.wikipedia.org/wiki/Intel_QuickPath_Interconnect)),但内存是仍可按字节(8 位)寻址。一个原因是向后兼容,另一个原因是字节仍然是能够寻址的实际信息量。 (2认同)
  • @pabouk:几代的所有当前 x86 和 x64 CPU 都使用 64 位内存总线。物理 (RAM) 地址的低位三位永远不会从 CPU 中出来。然而,每个不同的 RAM 地址都指向不同的字节。但是指令可以引用字节,或者两字节、四字节或八字节的字;一些指令甚至可以处理 16 字节的块。任何多字节事物的地址都是其最低寻址字节的地址。在许多情况下,另一个操作数的大小暗示了数据的大小。在其他情况下,它是明确编码的,或在寄存器中。 (2认同)

归档时间:

查看次数:

37725 次

最近记录:

9 年 前