Chinaunix首页 | 论坛 | 博客
  • 博客访问: 364485
  • 博文数量: 36
  • 博客积分: 955
  • 博客等级: 准尉
  • 技术积分: 470
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-15 13:37
文章分类

全部博文(36)

文章存档

2012年(15)

2011年(21)

分类: LINUX

2011-10-18 21:04:07

首先看一下32位操作系统:

为什么叫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以上的内存空间。这种技术称为“内存重映射技术”,它可以使我们更有效的利用内存。
阅读(5904) | 评论(11) | 转发(6) |
给主人留下些什么吧!~~

默默成长2011-12-24 11:46:59

32位机和32位操作系统是不同的,你说的叫32位机,多少位操作系统是通过几级页表来确定的(LINUX)。

RSroad2011-11-15 19:27:31

garyv: 发现很多人喜欢把intel写成inter,纠正一下.....
谢谢纠正:-)。下次改正

garyv2011-11-10 10:55:01

发现很多人喜欢把intel写成inter,纠正一下

garyv2011-11-10 10:53:29

其实ALU的位宽跟寻址空间有一点的关系,因为ALU的运算过程通常基于register,而处理器指令集中的mem寻址指令通常也要基于register,32bit处理器的mem寻址指令用到的register的位宽通常等于ALU位宽(当然有例外,这里说的是通常情况下),所以单条指令的寻址范围就是2的32次方,32bit OS就是基于这种通常情况来设计的,自然管理的寻址范围就是4GB。

随1意2o2011-11-01 19:47:02