32位的Windows 都使用 4 GB 的虚拟地址空间,其中 2 GB 分配给用户模式进程(例如应用程序),另外 2 GB 分配给内核模式进程(例如操作系统和内核模式驱动程序)。系统只能支持4G的物理内存大家是知道的,操作系统保留高位的2G寻址空间以保安全,每个独立应用程序所以寻址的虚拟内存地址是低位的2G,这个可能多数人也知道。 另外,有一些方法可以使X86的应用程序能访问更多的内存空间: 1.服务器版的Windows 2000 、Windows 2003 、Windows 2008等服务器端操作系统可以通过有与硬件相配套的PAE(Physical Address Extension)物理地址扩展来寻址额外的内存,如在boot.in中通过/PAE打开:操作系统支持 PAE 后的最大内存容量 Windows 2000 Advanced Server 8 GB 的物理 RAM Windows 2000 Datacenter Server 32 GB 的物理 RAM Windows XP (所有版本) 4 GB 的物理 RAM* Windows Server 2003 (and SP1) Standard Edition 4 GB 的物理 RAM* Windows Server 2003 Enterprise Edition 32 GB 的物理 RAM Windows Server 2003 Datacenter Edition 64 GB 的物理 RAM Windows Server 2003 SP1 Enterprise Edition 64 GB 的物理 RAM Windows Server 2003 SP1 Datacenter Edition 128 GB 的物理 RAM 2.同时服务器版的Windows 2000 、Windows 2003 、Windows 2008等也可以通过打开启动选项的3GB开关(如在boot.ini中/3GB),使单进程的寻址空间达到3G,比未设置的2G多出来1G,不少服务器的应用性能,确实能提升不少(50%) 3.某些特殊的应用有一些绕开操作系统使用内存的绝活,比如Microsoft SQL Server 企业版(2000 2005 2008的32位版都支持)的地址窗口化扩展插件 AWE(Address Windowing Extensions )技术,内存上限与PAE大同小异。 说完了X86转头说说X64,尽管有说法当前的x64并非真正使用64位的地址总线,而是48位,所以内存上限是 2^48。