操作系统原理与应用(第2版)清大版第4章习题参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、管理对象是内存及作为内存的扩展和延伸的后援存储器(外存)。
基本任务:a.按某种算法分配和回收存储空间。
b.实现逻辑地址到物理地址的转换。
c.由软硬件共同实现程序间的相互保护。
2、程序中通过符号名称来调用、访问子程序和数据,这些符号名的集合被称为“名字空
间”,简称名空间。
当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为目标程序,或者相对目标程序。这个目标程序指令的顺序都以0为一个参考地址,这些地址被称为相对地址,或者逻辑地址,有的系统也称为虚拟地址。相对地址的集合称为相对地址空间,也称虚拟地址空间。
目标程序最后要被装入系统内存才能运行。目标程序被装入的用户存储区的起始地址是一个变动值,与系统对存储器的使用有关,也与分配给用户使用的实际大小有关。要把以0作为参考地址的目标程序装入一个以某个地址为起点的用户存储区,需要进行一个地址的对应转换,这种转换在操作系统中称为地址重定位。也就是说将目标地址中以0作为参考点的指令序列,转换为以一个实际的存储器单元地址为基准的指令序列,从而才成为一个可以由CPU调用执行的程序,它被称为绝对目标程序或者执行程序。这个绝对的地址集合也被称为绝对地址空间,或物理地址空间。
用户程序的装入,是一个从外存空间将用户已经编译好的目标程序,装入内存的过程。在这个过程中,要进行将相对地址空间的目标程序转换为绝对地址空间的可执行程序,这个地址变换的过程称为地址重定位,也称地址映射,或者地址映象。
覆盖:是利用程序内部结构的特征,以较小的内存空间运行较大程序的技术。
交换:是指内外存之间交换信息。
3、一旦一个区域分配给一个作业后,其剩余空间不能再用(内零头或内碎片),另外当一区域小于当前所有作业的大小时,便整个弃置不用(外零头或外碎片)。
4、(1)2.4us (2)1.5us
5、为了给大作业(其地址空间超过主存可用空间)用户提供方便,使他们摆脱对主存和外存的分配和管理。由操作系统把多级存储器统一管理起来,实现自动覆盖。即一个大作业在执行时,其一部分地址空间在主存,另一部分在外存。当所访问的信息不在主存时,则由操作系统把它从外存调入主存,因此,从效果上来看,这样的计算机系统,好象为用户提供了一个其存储容量比实际主存大得多的存储器。人们称这个存储器为虚拟存储器。
它的容量取决于主存和外存的容量之和,人们之所以称它为虚拟存储器,是因为这样的存储器实际上并不存在,而只是系统增加了自动覆盖功能后,给用户造成的一种假象,仿佛系统内有了一个很大的主存供他使用。
实现虚存管理的物质基础是二级存储器结构和动态地址转换机构(DAT)。经过操作系统的改造将内存和外存有机地联系在一起,在用户面前呈现一个足以满足编程需要的特大存储空间,从而把用户地址空间和实际的存储空间区分开来,使得用户可以在虚拟存储器内写自己的程序,而不必关心它在机器上是如何存放和执行的。
6、硬件支持
采用分区法分配内存要有硬件保护机构。通常用一对寄存器来实现。
这一对寄存器的置值可有两种不同方法:
* 用这一对寄存器分别表示用户程序在内存中的上界值和下界值。
用户程序执行时,对每个地址都要作合法性检查,当满足:
下界寄存器值≤地址<上界寄存器值时为合法。否则报地址越界中断。
也可用这一对寄存器表示用户程序的基址和限长。基址表示用户程序的最小物理地址,限长
表示用户程序逻辑地址范围。
7、硬件支持:动态地址转换机构、页表,给出页表起始地址的寄存器。
系统做的工作:由动态地址转换机构自动地将CPU给出的一维逻辑地址LA分成两部分:页号(p)和页内位移量(b);按p的值查找现行进程页表以获得块号(n);将此块号n与LA中的b相拼接,就形成了物理地址PA。
8、页面走向序列:0,2,0,2,0,2,0,0,0,9,0,9,0
9、(1)430+219=649 (2)10+2300=2310 (3)11+2300=2311
(4)段违例(5)400+1327=1727 (6) 段违例
10、段和页是截然不同的两个概念。页是一维逻辑地址,是信息的物理单位,且大小固定由系统确定,用户是看不见的。段是二维逻辑地址,是信息的逻辑单位,其大小可变,由用户自己确定,用户是看得见的。
11、到需要调用一模块时,再去链接它,即动态链接法。在分段管理中,每个段都有自己的段名,且在运行期间能保持原有的逻辑信息结构,因而实现动态链接较容易。
13、不一定!UNIX系统5中就不是!UNIX S-5中的做法:它在fork算法中并未真正为子进程申请存储空间,而是将user结构、栈段、数据段的页表项中置上“复制写位”。当父、子进程中的任一个进程要对这些页进行写操作时,再为它们申请存储空间,并进行复制,否则父、子进程就是共享相应页面内容。
14、页面淘汰算法:当访问某一页面时,将其访问位置1,同时将年龄位清0;当页面淘汰进程检查某页时,将年龄位加1,同时若发现其访问位为1,则清0;当年龄位值达到一定时,将该页置为可换出状态。
15、所谓工作集WS(Working Set),是在程序执行中离时刻ti最近的Δ次访存所涉及到的那些页面的集合,当Δ确定以后,工作集是时刻ti的函数。
工作集是对程序局部的一个近似模拟,如果我们能找出一进程的各个工作集,并求出其页面数最大者,则可确定该进程所需内存量,并根据此确定系统内并发进程的最大个数。