第四章
7.为什么要引入动态重定位?如何实现?
答:在程序执行过程中,每当访问指令或数据时,将要访问的程序或数据的逻辑地址转换成物理地址,引入了动态重定位;具体实现方法是在系统中增加一个重定位寄存器,用来装入程序在内存中的起始地址,程序执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加之和,从而实现动态重定位。
8、什么是基于顺序搜索的动态分区分配算法?他可以包含哪几种?
答:为了实现动态分区式分配,将系统中的空闲分区组织成空闲分区表或空闲分区链。所谓顺序搜索,是指按表或链的组织顺序,检索表或链上记录的空闲分区,去寻找一个最符合算法的、大小能满足要求的分区。
分区存储管理中常采用的分配策略有:首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法。
18、什么是页面?物理块?页面的大小应如何确定? 答:页面,物理块——分页存储管理方式中的单元。 页面:分页存储管理将进程的逻辑地址空间分成若干个页,并为各页加以编号。
物理块:相应的,也将内存的物理空间分成若干个物理块,同样为它们加以编号。
页面大小:即不能太大也不能太小,要起到减少内存碎片空间的作用,也不能使页表过长,总之要选择适中,且页面大小应该是2的幂,通常为1kb~8kb。
19、什么是页表?页表的作用是什么? 答:页表是分页式存储管理使用的数据结构。
一个进程分为多少页,它的页表就有多少行。每一行记录进程的一页和它存放的物理块的页号、块号对应关系。 页表用于进行地址变换。
26.分段和分页存储管理有何区别? 答:
(1)页是信息的物理单位,分页是为了实现离散分配方式,以消减内存的外部零头,提高内存利用率。段则是信息的逻辑单位,它含有一组相对完整的信息。
(2)页的大小固定且由系统决定,由系统把逻辑地址划分为页号和页内地址两部分,是由机械硬件实现的,因而在系统中只能有一种大小的页面;而段的长度却不固定,决定于用户所编写的程序,通常由编译程序在对原程序进行编译时,根据信息的性质来划分。
(3)分页的作业地址空间是一维的,而分段作业地址空间则是二维的。
第五章
9.何谓固定分配局部置换和可变非配全局置换的内存非配策略?
(1) 固定分配局部置换:为每个进程分配一组固定数目的物理块,在进程运行期 间不再改变;如果在进程运行的过程中发生缺页,则只能从分配给该进程的n个页面中选出一页换出,然后调入新的一页。 (2) 可变分配全局置换:先为每个进程分配一定数目的物理块,在进程运行期间 块数目可以适当增加或减少;如果在进程运行的过程中发生缺页,则从 OS 所保 留的空闲物理块中取出一块,分配给该进程,或者在所有进程的全部物理块中, 按算法选出应换出的页面,将其换出,空出一块来,调入新的一页。
12.在请求分页系统中,常采用哪几种页面置换算法? 答:
A.最佳置换算法; B.先进先出算法;
C.最近最久未使用LRU置换算法; D.Clock置换算法;
E.此外,还有最少使用置换算法和页面缓冲算法.
15.试说明改进型clock置换算法的基本原理。 答:基本原理:再将一个页面换出时,如果该页面已经被修改过,便须将该页重新写回到磁盘上;但如果该页未被修改过,则不必将它写回磁盘上。在改进的算法中,处需考虑页面的使用情况外,还需再增加一个因素,即置换代价,这样,选择页面换出时,既要是未使用过的页面,又要是未被修改的页面。
16.影响页面换进换出效率的若干因素是什么? 答:⑴页面臵换算法:影响页面换进换出效率最重要的因素,直接 影响进程在运行过程中的缺页率,影响页面换进换出的开销。
⑵写回磁盘的频率:如果是采取每个页面换出时,就