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 物理内存。映射通常以不同的方式应用于每个过程。通过这种方式,即使没有单个常规应用程序可以同时访问所有额外的内存,它也是有用的。
是和否。
本来,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。
| 归档时间: |
|
| 查看次数: |
37725 次 |
| 最近记录: |