为什么32位系统内存最多为4G?

 

为什么叫32位操作系统?这里改正下,并不是因为在32位操作系统下,字长为32位,

而是因为cpu是32位的,所以称为32位操作系统。即4字节。而地址总线也是32位,即4字节我们知道从二进制转化到到16进制是 4位 -> 1位 所以32位系统实际能访问的量也就是0x00000000到0xFFFFFFFF这之间的内存地址。再多的我们没法表示地址了。所以最大的寻址能力即为2^32B,即4G,可是实际还到不了4G,因为显卡上的显存(RAM)和BIOS(ROM),以及各种PCI、PCI-E设备上的RAM和ROM,都要占用内存,所以从4G(0xFFFFFFFF)内存的顶端往下,400MB~1GB的地方要留给主板上的其他物理内存。并不是说这些东西的在占用我们的内存,而是因为这些内存的存在使得要把地址空间留给他们,因为1个内存地址仅仅对应一个空间,而不能对应2个,所以这些内存空间对于用户来说实际上是被浪费的。这样用户的内存实际并不能达到4G也就是说用户实际能访问的大概只有0~3G。这就是32位系统的局限性。

 

于是基于这些情况,INTEL, AMD都在扩展自己的一些技术,诸如把地址总线扩充到36位或40位,使得显卡上的显存(RAM)和BIOS(ROM),使得各种PCI、PCI-E设备上的RAM和ROM可以用到4GB以上的内存空间。这种技术称为“内存重映射技术”,它可以使我们更有效的利用内存。


你可能感兴趣的:(内存)