什么叫地址重定位实现地址重定位的方法有哪几类
参考答案:在多道程序系统中,每个用户不可能用内存的物理地址来编写程序。程序在装入内存之前,为逻辑地址形式,有时甚至在装入内存后,仍为相对地址形式。为了保证CPU执行程序指令时能正确访问存储单元,需要将程序中的逻辑地址转换为运行时可由机器直接寻址的物理地址,这一过程称为地址映射或地址重定位。
实现地址重定位的方法有两种:静态地址重定位和动态地址重定位。
(1) 静态地址重定位是在虚空间程序执行之前由装配程序完成地址映射工作。静态重定位的优点是不需要硬件支持,但是用静态地址重定位方法进行地址变换无法实现虚拟存储器。静态重定位的另一个缺点是必须占用连续的内存空间,并且难以做到程序和数据的共享。
(2) 动态地址重定位是在程序执行过程中,在CPU访问内存之前由硬件地址变换机构将要访问的程序或数据地址转换成内存地址。动态地址重定位的主要优点有:①可以对内存进行非连续分配;②动态重定位提供了实现虚拟存储器的基础;③动态重定位有利于程序段的共享。