内存管理:算法及其c/c++实现 翻译四

地址线和总线
 
   DRAM中每一个字节被分配了一个唯一的数据标识符,称为地址,就像街道的地址号码一样。地址是一个整数值。内存中的第一个字节被分配为地址0。靠近地址0的区域称为内存底端,或者低位地址。靠近内存末尾字节的区域称为高端地址,或者高位地址。一个处理器能够寻址的物理字节数量称为该处理器的物理地址空间,如图1.3所示:
 
 
 Figure1-3
 
处理器的物理地址空间由处理器所拥有的地址线的数量来决定,地址线是把处理器和它的DRAM芯片连接起来的线的集合,每一个地址线对应给定字节地址的一位。例如,Intel Pentium处理器有32根地址线,这意味着每一个字节被分配了一个32位的地址,这样,它的地址空间包括2 32个可寻址的字节(4GB)。8088有20根地址线,所以它的寻址能力是2 20,或者说1,048,576字节。
 
注释:如果在Pentium 4上使用虚拟内存。有一个方法使用另外的4个地址线,这个方法就是所谓的物理地址扩展 ( Physical Address Extension, PAE),它允许Pentium处理器的物理地址空间由36根地址线来定义,这样,可以利用地址空间就为2 36字节(64GB)。如下图:
 
Figure 1-4
 
当处理器访问内存读出数据时,必须执行下面这些步骤:
1.        处理器把需要读出的字节的地址放到地址总线上。
2.        处理器在控制总线上发出读数据的信号。
3.        DRAM芯片返回地址总线指定的地址上的数据。
当处理器访问内存写入数据时,必须执行下面这些步骤:
1.        处理器把需要写入的字节的地址放到地址总线上。
2.        处理器在控制总线上发出写入数据的信号。
3.        处理器通过数据总线把数据写入到内存。
    上面的描述多少有一些过于简化。例如, Pentium 处理器一次读写 4 个字节的数据,这是 Pentium 处理器为什么称为 32 位芯片的原因之一,处理器使用第一个字节的地址引用它的 32 位数据负载(例如,最低端地址的字节)。然而,我认为通常的一般操作就是上面提到的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值