段式存储管理如何完成重定位

发布网友 发布时间:2022-04-24 17:32

我来回答

1个回答

热心网友 时间:2023-10-26 14:47

摘要一个实际的程序往往是由若干段组成的,例如一个主程序段、若干子程序段、若干数据段和工作区段组成,如图3.22所示。每个段都具有完整的逻辑意义,因此都可以编程,且给每个段一个段名。用户程序可以用符号形式(段名和入口)调用一个段的功能,如图3.21主程序中“调用[X]段入口E”。程序在编译或汇编时再给每个段名再定义一个段号 ,用于内存分配。每一段都可从“0”编址,段与段之间地址不连续,但段内地址是连续的。分段式存储管理是以段为单位进行内存分配,为此提供逻辑地址的形式如下:地址结构确定后 ,一个作业中允许的最多 段数及每段最大长度也就确定了。例如PDP-11/45的段址结构为:段号3位,段内地址(单元号)13位,也就是说一个作业最多8段,每段最长可达8K字节。分段式存储管理为作业的每一个段分配一个连续的内存区域,用来存放该段信息。分配方法同可变分区方式类似,根据段长找出一个可容纳该段的空闲区,分割这个空闲区,一部分用来装入该段信息,另一部分仍为空闲区。作业各段可装入到不相连的几个内存区域。如下图3.23所示。段式存储管理也是采用动态重定位方式装入作业各段的,如果作业的某段找不到足够大的空闲区时,也可采用移动技术合并分散的空闲区。地址转换工作在作业执行时,由地址转换机构完成从逻辑地址到绝对地址的转换。二、转换和地址保护为使作业正确执行 ,首先须记下各段位置 ,为此系统设立一个“段表”记录作业每个段在内存中首地址和长度,如图3.22所示。在作业执行时,每执行一条指令,硬件的地址转换机构按逻辑地址中的段号查段表,得到该段在内存中的起始地址和长度,起始地址加上段内地址就是要访问的内存的绝对地址。这个绝对地址如果是在该段的存储区域内,则可访问;否则,产生一个地址越界中断。段式存储管理地址转换过程类似于可变分区方式,根据段表表目中的起始地址和长度可以确定该段区域,即必须满足下列不等式:起始地址<=绝对地址<=起始地址+长度例如,图3.22中,主程序执行指令“调用X段入口E”时 ,由于编译程序将子程序X段分配为1段 ,“调用 X 段”故应查段表的表目1,可知子程序X段在内存起始地址为1400 ,长度为P,起始地址1400加上“入口E”,即加上段内地址E即为该子程序绝对地址 ,然后用上面不等式确定这个绝对地址咨询记录 · 回答于2021-09-25段式存储管理如何完成重定位一个实际的程序往往是由若干段组成的,例如一个主程序段、若干子程序段、若干数据段和工作区段组成,如图3.22所示。每个段都具有完整的逻辑意义,因此都可以编程,且给每个段一个段名。用户程序可以用符号形式(段名和入口)调用一个段的功能,如图3.21主程序中“调用[X]段入口E”。程序在编译或汇编时再给每个段名再定义一个段号 ,用于内存分配。每一段都可从“0”编址,段与段之间地址不连续,但段内地址是连续的。分段式存储管理是以段为单位进行内存分配,为此提供逻辑地址的形式如下:地址结构确定后 ,一个作业中允许的最多 段数及每段最大长度也就确定了。例如PDP-11/45的段址结构为:段号3位,段内地址(单元号)13位,也就是说一个作业最多8段,每段最长可达8K字节。分段式存储管理为作业的每一个段分配一个连续的内存区域,用来存放该段信息。分配方法同可变分区方式类似,根据段长找出一个可容纳该段的空闲区,分割这个空闲区,一部分用来装入该段信息,另一部分仍为空闲区。作业各段可装入到不相连的几个内存区域。如下图3.23所示。段式存储管理也是采用动态重定位方式装入作业各段的,如果作业的某段找不到足够大的空闲区时,也可采用移动技术合并分散的空闲区。地址转换工作在作业执行时,由地址转换机构完成从逻辑地址到绝对地址的转换。二、转换和地址保护为使作业正确执行 ,首先须记下各段位置 ,为此系统设立一个“段表”记录作业每个段在内存中首地址和长度,如图3.22所示。在作业执行时,每执行一条指令,硬件的地址转换机构按逻辑地址中的段号查段表,得到该段在内存中的起始地址和长度,起始地址加上段内地址就是要访问的内存的绝对地址。这个绝对地址如果是在该段的存储区域内,则可访问;否则,产生一个地址越界中断。段式存储管理地址转换过程类似于可变分区方式,根据段表表目中的起始地址和长度可以确定该段区域,即必须满足下列不等式:起始地址<=绝对地址<=起始地址+长度例如,图3.22中,主程序执行指令“调用X段入口E”时 ,由于编译程序将子程序X段分配为1段 ,“调用 X 段”故应查段表的表目1,可知子程序X段在内存起始地址为1400 ,长度为P,起始地址1400加上“入口E”,即加上段内地址E即为该子程序绝对地址 ,然后用上面不等式确定这个绝对地址看在我辛苦找寻答案份上,给个赞呀~÷

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com