内存是现代计算机运行的中心。内存是由很大一组字或字节组成,每个字或者字节都有他们自己的地址。
1.基本硬件
CPU所能直接访问的存储器只有内存和处理器内的寄存器。如果CPU需要访问的数据不在内存,那么CPU
使用前必须先把数据移到内存中。由于CPU访问寄存器,一个时钟周期可以执行一条指令或者几条指令,而
访问内存时,几个时钟周期才执行一条指令,所以就会出现CPU暂停的现象。为了解决这个问题,在CPU和
内存之间加入高速缓存,来协调两者的速度差异。
为了实现不同进程间和操作系统的保护,CPU通过两个寄存器实现。一个叫基地址寄存器(1200),另外一
个叫界限地址寄存器(500)。那么CPU能够合法访问从1200到1700之间的所有的地址。
2.地址绑定
在绝大多数情况下,用户程序在执行前,需要经过好几个步骤:编译,加载和执行。在这些步骤中,地址可
能有不同的表现形式。源程序的地址通常是用符号来表示的。编译器通常将这些符号地址绑定在可重定位的地
址。连接程序或者加载程序再将这些可重定位的地址绑定成绝对地址。每次绑定都是从一个地址空间到另一个
地址空间的映射。
未完待续。。。