第8章内存管理
1.背景知识
(1)机器指令可以用内存地址做参数,而不能用磁盘地址作参数。
(2)程序必须放入内存中的进程空间才能被执行
(3)CPU能直接访问的存储器只有内存和处理器内的寄存器
(4)寄存器可以在一个CPU时钟周期内完成访问
(5)内存访问需要多个CPU周期
(6)设置高速缓存解决CPU与内存速度不匹配的问题
(7)地址绑定:
A. 编译时:如果在编译时就知道进程在内存中的的驻留地址,那么就可以生成绝对地址。
B.加载时:如果在编译时并不知道进程驻留在内存的什么地方,那么编译器就会生成可重定位代码。这种情况,最后的地址绑定会延迟到进程加载时进行。
C. 执行时:
2.逻辑地址:CPU所生成的地址
3. 物理地址:内存单元所看到的地址(即加载到内存地址寄存器中的地址)
4.动态加载:一个子程序只有在调用时才被加载。所有子程序都以重定位的形式保存在磁盘上。为了获得更好的内存空间使用率。