某进程的段表内容如下所示。 当访问段号为2、段内地址为400的逻辑地址时,进行地址转换的结果是( )。

admin2017-08-16  30

问题 某进程的段表内容如下所示。

当访问段号为2、段内地址为400的逻辑地址时,进行地址转换的结果是(          )。

选项 A、段缺失异常
B、得到内存地址4400
C、越权异常
D、越界异常

答案D

解析 分段系统的逻辑地址A到物理地址E之间的地址变换过程如下。

①从逻辑地址A中取出前几位为段号S,后几位为段内偏移量W,注意段式存储管理的题目中,逻辑地址一般以二进制给出,而在页式存储管理中,逻辑地址般以十进制给出,各位读者要具体问题具体分析。
②比较段号S和段表长度M,若S≥M,则产生越界异常,否则继续执行。
③段表中段号S对应的段表项地址=段表起始地址F+段号S×段表项长度,取出该段表项的前几位得到段长C。若段内偏移量≥C,则产生越界异常,否则继续执行。从这句话我们可以看出,段表项实际上只有两部分,前几位是段长,后几位是起始地址。
④取出段表项中该段的起始地址b,计算E=b+W,用得到的物理地址E去访问内存。题目中段号为2的段长为300,小于段内地址为400,故发生越界异常,D正确。
转载请注明原文地址:https://kaotiyun.com/show/nDRi777K
0

最新回复(0)