静态重定位:在程序加载到内存的过程中完成。意味着在程序开始运行之前,程序中所有与地址相关的项都已经被重新定位。地址转换通常在加载时完成一次。,以后不会改变,所以称为静态重定位。
动态重定位:程序加载到内存时并未完成。相反,动态地址转换机制(硬件)会在CPU每次访问内存时自动将相对地址转换为绝对地址。动态迁移需要软硬件的配合。
扩展数据
在加载程序之前,系统将计算未使用的内存,然后加载程序并记下起始地址。当执行相对地址的指令时,所有地址都会被添加到刚刚记下的起始地址上,这称为重定位。
程序被放置在一个不连续的实际物理空间中。它需要将逻辑地址转换为物理地址。为了实现动态重定位,一般需要分段页存储管理。页存储管理不使用寄存器,而是使用页表,是一种称为页表的数据结构,记录了所有逻辑地址到物理地址的转换信息。当进程切换时,需要刷新硬件上的页表。
参考来源:-动态搬迁
参考来源:-搬迁
上一篇:苹果promax多大内存
下一篇:在动态分区内存管理中