汤子瀛计算机操作系统(西电)习题答案与讲解.pdf
1.可采用哪几种方式将程序装入内存?它们分别适用于何种场合?
a.首先由编译程序将用户源代码编译成若干目标模块,再由链接程序将编译后形成的目标
模块和所需的库函数链接在一起,组成一个装入模块,再由装入程序将装入模块装入内存;
b.装入模块的方式有:绝对装入方式,可重定位方式和动态运行时装入方式;
c.绝对装入方式适用于单道程序环境下;d.可重定位方式适用于多道程序环境下;
e.动态运行时装入方式也适用于多道程序环境下.
2.何谓静态链接及装入时动态链接和运行时的动态链接?
a.静态链接是指事先进行链接形成一个完整的装入模块,以后不再拆开的链接方式;b.
装入时动态链接是指目标模块在装入内存时,边装入边链接的链接方式;c.运行时的动态
链接是将某些目标模块的链接推迟到执行时才进行.
3.在进行程序链接时,应完成哪些工作?a.对相对地址进行修改;b.变换外部调用符号.
4.在动态分区分配方式中,可利用哪些分区分配算法?
a.首次适应算法;b.循环首次适应算法;c.最佳适应算法.
5.在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链?
应在每个分区的起始地址部分设置一些用于控制分区分配的信息,以及用于链接各分区的前
向指针;在分区尾部则设置一后向指针,通过前,后向指针将所有的分区链接成一个双向链.
6.为什么要引入动态重定位?如何实现?a.为了在程序执行过程中,每当访问指令或数据时,
将要访问的程序或数据的逻辑地址转换成物理地址,引入了动态重定位.b.可在系统中增加
一个重定位寄存器,用它来装入(存放)程序在内存中的起始地址,程序在执行时,真正访问
的内存地址是相对地址与重定位寄存器中的地址相加而形成的,从而实现动态重定位.
8.在采用首次适应算法回收内存时,可能出现哪几种情况?应怎样处理这些情况?
a.回收区与插入点的前一个分区相邻接,此时可将回收区与插入点的前一分区合并,不
再为回收分区分配新表项,而只修改前邻接分区的大小;
b.回收分区与插入点的后一分区相邻接,此时合并两区,然后用回收区的首址作为新空
闲区的首址,大小为两者之和;
c.回收区同时与插入点的前后两个分区邻接,此时将三个分区合并,使用前邻接分区的
首址,大小为三区之和,取消后邻接分区的表项;
d.回收区没有邻接空闲分区,则应为回收区单独建立一个新表项,填写回收区的首址和大
小,并根据其首址,插入到空闲链中的适当位置.
9.在系统中引入对换后带有哪些好处?能将内存中暂时不运行的进程或暂时不用的程序和
数据,换到外存上,以腾出足够的内存空间,把已具备运行条件的进程或进程所需的程序和
数据换入内存,从而大大地提高了内存的利用率.
10为实现对换,系统应具备哪几方面功能?对对换空间的管理;进程的换出;进程的换入.
11在以进程为单位进行对换时,每次是否都将整个进程换出?为什么?a.以进程为单位进行
对换时,每次都将整个进程换出;b.目的为了解决内存紧张的问题,提高内存的利用率.
13请较详细地说明,引入分页存储管理(估计印错了,是分段存储管理)是为了满足用户哪
几方面的需要?a.方便了编程;b.实现了分段共享;c.实现了分段保护;
d.实现了动态链接;e.实现了动态增长.
14在具有快表的段页式存储管理方式中,如何实现地址变换?
首先,必须配置一段表寄存器,在其中存放段表始址和段长TL.进行地址变换时,
先利用段号S,与段长TL进行比较,若STL,表示未越界,(若S=TL,表示段号太大,访
问越界,产生越界中断信号)于是利用段表始址和段号来求出该段对应的段表项在段表中的
位置,从中求出该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项
位置,从中读出该页所在的物理块号b,再用块号b和页内地址构成物理地址.
15为什么说分段系统较之分页系统更易于实现信息