首页 > 试题广场 >

采用动态重定位方式装入作业,在执行中允许()将其移走。

[单选题]
采用动态重定位方式装入作业,在执行中允许()将其移走。
  • 用户有条件的
  • 用户无条件的
  • 操作系统有条件的
  • 操作系统无条件的
动态重定位分区分配是 内存为程序分配空间的一种分配方式。 可以将内存块进行搬移,将小块拼成大块,将小空闲“紧凑”成大空闲,腾出较大的内存以容纳新的程序进程。可以减少“碎片”,当然这种条件是系统完成的,并不是用户。
发表于 2016-06-28 14:55:58 回复(3)
首先介绍下动态重定位装入方式:
其运行环境:多道程序环境;
程序在运行过程中在内存的位置可能变动,装入程序把装入模块装入内存后,并不立即把装入模块中的相对地址转换为绝对地址,而是把这种地址转换推迟到程序真正执行时才进行。说白了,动态重定位装入方式,是在程序执行时由CPU硬件进行地址重定位。
特点:程序在内存中可以浮动,不要求整个应用程序占用连续控件;为使地址转换不影响指令的执行速度,需要一个重定位寄存器的支持。

可重定位装入方式:
运行环境:多道程序环境
程序目标模块的起始地址通常是从0开始的,程序中的其他地址也都是相对于起始地址计算的;根据内存的当前情况,将装入模块装入到内幕才能的适当位子;地址变换通常是装入时一次完成的,以后不再改变,所以是静态重定位。
特点:无需硬件支持;程序不能在内存中移动;要求程序的存储空间是连续的,不能把程序放在若干不连续区域

绝对装入方式:
环境:使用单批道程序环境
绝对装入需要实现知道程序驻留在内存的位置,程序按照装入模块中的地址,将程序和数据装入内存。所以程序中的逻辑地址与实际地址完全相同,当操作系统吧程序装入内存时,不需要对程序和数据进行地址修改;
特点:是CPU执行目标代码块,由于内存大小的限制,能装入内存冰法执行的进程数大大减少。
发表于 2015-09-08 10:38:05 回复(0)
采用动态重定位时,由于装入主存的作业仍保持原来的逻辑地址,所以,必要时可改变作业在主存中的存放区域。作业在主存中被移动位置后,只要把新区域的起始地址代替原来的在基址寄存器中的值,这样,作业执行时,硬件的地址转换机构将按新区域的起始地址与逻辑地址相加,转换成新区域中的绝对地址,使作业仍可正确执行。
发表于 2015-09-04 21:10:21 回复(0)
采用动态重定位时,由于装入主存的作业仍保持原来的逻辑地址,所以,必要时可改变作业在主存中的存放区域。作业在主存中被移动位置后,只要把新区域的起始地址代替原来的在基址寄存器中的值,这样,作业执行时,硬件的地址转换机构将按新区域的起始地址与逻辑地址相加,转换成新区域中的绝对地址,使作业仍可正确执行。
发表于 2022-04-20 17:44:33 回复(0)
动态重定位:执行中作业允许被操作系统有条件移走。
发表于 2021-12-24 15:15:48 回复(0)
标记:动态重定位
发表于 2019-05-07 15:53:36 回复(0)
操作系统有条件的
发表于 2017-04-14 09:35:18 回复(0)
静态地址重定位:即在程序装入内存的过程中完成,是指在程序开始运行前,程序中的各个地址有关的项均已完成重定位,地址变换通常是在装入时一次完成的,以后不再改变,故称为静态重定位。 动态重定位:在每次访问内存单元前才进行地址变换。动态重定位可使装配模块不加任何修改而装入内存,但是它需要定位寄存器的支持。
发表于 2016-12-14 12:36:44 回复(0)