ZKX's LAB

为什么说经过动态重定位(而不是静态重定位),目标程序可以不经过任何改动而装入物理内存单元 静态重定位是在什么进行的

2020-10-03知识4

什么是重定位?重定位有哪几种类型2为什么要进行重定位? 1.什么是重定位?由于一个作业装入到与其地址空间不一致的存储空间,对有关地址部分的调整过程称为重定位。2.重定位有哪几种类型?分为静态重定位和动态重定位两种类型。3.为什么要进行重定位?我们写正常程序的时候根本不用去关心变量(常量)的位置,因为源程序在编译的时候它的内存中的位置郡被计算好了。程序装入内存时,系统不会为它重定位。我们需要用到变量(常量)的时候直接用变量名访问它就行了。有的程序不可避免也要用到变量(常量),各个变量(常量)在内存中的位置自然也不相同。既然这些变量没有固定的地址,那么程序在运行的过程中只有重定位,才可以正常地访问相关资源。

为什么说经过动态重定位(而不是静态重定位),目标程序可以不经过任何改动而装入物理内存单元 静态重定位是在什么进行的

操作系统中的动态重定位和静态重定位? 静态重定位:即在程序装入内存的过程中完成,是指在程序开始运行前,程序中的各个地址有关的项均已完成重定位,地址变换通常是在装入时一次完成的,以后不再改变,故称为。

为什么说经过动态重定位(而不是静态重定位),目标程序可以不经过任何改动而装入物理内存单元 静态重定位是在什么进行的

采用静态重定位方式装入的作业其地址变换工作是在何时完成的

为什么说经过动态重定位(而不是静态重定位),目标程序可以不经过任何改动而装入物理内存单元 静态重定位是在什么进行的

操作系统中的动态重定位和静态重定位? 静态重定位:即在程2113序装入内存的5261过程中完成,是指在程序开始运行前,程4102序中的各个地址有关的1653项均已完成重定位,地址变换通常是在装入时一次完成的,以后不再改变,故称为静态重定位。动态重定位:它不是在程序装入内存时完成的,而是CPU每次访问内存时 由动态地址变换机构(硬件)自动进行把相对地址转换为绝对地址。动态重定位需要软件和硬件相互配合完成。扩展资料在装入程序前,系统会计算未使用的内存,然后将程序装入,并记下开始地址。在执行有相对地址的指令时,会将所有的地址加个刚才记下的开始地址,就叫重定位。程序放在不连续的实际物理空间中,要进行逻辑地址到物理地址的转换,实现动态重定位一般需要段页式存储管理,页式存储管理用的不是寄存器,使用的是称为page table(页表)的数据结构page table记录了所有逻辑地址到物理地址的转换信息,进程切换的时候需要冲洗硬件上的page table。参考资料来源:-动态重定位参考资料来源:-重定位

#动态#重定位#静态方法#地址

随机阅读

qrcode
访问手机版