操作系统 第七章 作业

多选题

  1. 以下说法正确的是(    )?
    A. 受限于硬件或操作系统支持,存在存储器末尾空间访问不到的情况
    B. 物理地址指的是实际地址,相对地址则是一个相对于参考(起始)地址的地址
    C. 地址空间取决于计算机体系结构以及地址编码长度
    D. 地址空间可以无限大
    E. 程序运行时,需要将相对地址转为物理地址,从而确定所需内容的实际所在位置

  2. 关于重定位的说法,以下正确的是(    )?
    A. 重定位的目的是为了使程序运行时确定所需内容的真实地址,从而可以得到所需内容
    B. 预先可确定实际地址的情况下,可采用静态重定位直接预先将相对地址全部转为实际地址
    C. 重定位常用的有静态重定位和动态重定位两种方式
    D. 动态重定位是在程序指令真正执行时,才对相对地址进行转换

主观题

  1. 已知某时刻内存状态如下所示,阴影部分表示空闲未分配的空间,左侧标记有对应交界处的物理地址,
    若采用下次适应算法进行分配,那么对于作业序列P1(长度3K)、P2(长度10K)、P3(长度15K)、P4(长度10K),画出最终的分配情况。
    在这里插入图片描述

答:
在这里插入图片描述

  1. 某计算机主存按字节编址,逻辑地址和物理地址都是32 位,页表项大小为4字节。请回答下列问题。

(1)若使用一级页表的分页存储管理方式,逻辑地址结构为:
在这里插入图片描述
则页的大小是多少字节?页表最大占用多少字节?

(2)若使用二级页表的分页存储管理方式,逻辑地址结构为:
在这里插入图片描述
设逻辑地址为LA,请分别给出其对应的页目录号和页表索引的表达式。

(3)采用(1)中的分页存储管理方式,一个代码段起始逻辑地址为0000 8000H,其长度为8 KB,被装载到从物理地址0090 0000H 开始的连续主存空间中。页表从主存0020 0000H 开始的物理地址处连续存放,如下图所示(地址大小自下向上递增)。请计算出该代码段对应的两个页表项的物理地址、这两个页表项中的页框号以及代码页面2 的起始物理地址。
在这里插入图片描述

答:【本题为按字节编址】
(1) 因为页内偏移量是12位,所以页大小为212=4 KB,(2分)
页表项数为232/4K=220,且由于页表项大小为4字节,所以该一级页表最大为220×4 B=4 MB。
(2) 页目录号可表示为:(((unsigned int)(LA))>>22)&0x3FF。(把页表索引和页内偏移量都挤出去)
【((unsigned int)(LA))>>22的意思是把LA中的数据作为无符号数来处理,对这个数进行按位右移操作,右移22个位。将补位的22&(与)0,但保留页目录号的10位(11,1111,1111 = 3FF),即把结果与0x3FF做按位与(&)操作。】
页表索引可表示为:(((unsigned int)(LA))>>12)&0x3FF。(把页内偏移量挤出去)
(3) 代码页面1的逻辑地址为0000 8000H,表明其位于第8个页处,对应页表中的第8个页表项,所以第8个页表项的物理地址=页表起始地址+(8×页表项的字节数),即0020 0000H+(8×4)=0020 0020H。
【因为(3)采用的是(1)中的分页存储管理方式,所以页框号就为页号,有20位,转换成16进制时则有5位,则截取物理地址前五位即为页框号;而页内偏移量有12位,转换成16进制则有3位;由题可知页面大小为 4 KB=212,转换为16进制则为 0001 0000 0000 0000 = 1000H,因此 0090 0000H + 0000 1000H = 0090 1000H; 】
由此可得如下图所示的答案。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Jessieeeeeee/article/details/109222972