操作系统第五版答案第8章复习题及习题解答
(完整)计算机操作系统第八章作业及答案

(完整)计算机操作系统第八章作业及答案编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)计算机操作系统第八章作业及答案)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)计算机操作系统第八章作业及答案的全部内容。
1、目前常用的外存有哪几种组织方式?(1)连续组织方式。
为每一个文件分配一组位置相邻接的盘块,由此形成的文件物理结构是顺序式的文件结构.(2)链接组织方式。
为每个文件分配一组位置离散的盘块,通过给每个盘块设置一个指针,将属于同一个文件的盘块链接在一起,链接的顺序和文件的逻辑页的顺序一致。
由此形成的文件物理结构是链接文件。
(3) 索引组织方式。
为每个文件分配一组位置离散的盘块,为每个文件建立一个物理结构的索引表,记录分配给该文件的物理盘块,以及这些盘块和文件逻辑页顺序的对应关系。
由此形成的文件物理结构是索引文件。
10、为了快速访问,又易于更新,当数据为以下形式时,应选择何种文件组织方式: (1)不经常更新,经常随机访问:顺序文件结构。
(2)经常更新,经常按一定顺序访问:显式链接文件结构。
(3) 经常更新,经常随机访问:索引文件结构。
14有一计算机系统利用P277图8—19所示的位示图来管理空闲盘块。
盘块的大小为1K。
现要为某文件分配两个盘块,试说明盘块的具体分配过程。
(1) 顺序检索位示图,找到第一个空闲块,它的i=3,j=3;(2)计算第一个盘块的编号:b=16*(3—1)+3=35(3) 将第35号盘块分配给申请的文件,将位示图中的第3行第3列单元置0.(4) 顺序检索位示图,找到下一个空闲块,它的i=4,j=7;(5) 计算第一个盘块的编号:b=16*(4—1)+7=55(6)将第55号盘块分配给申请的文件,将位示图中的第4行第7列单元置0。
操作系统(1~8章的课后习题答案)

1.1:存储程序式计算机的主要特点是:集中顺序过程控制(1)过程性:模拟人们手工操作(2)集中控制:由CPU集中管理(3)顺序性:程序计数器1.2:a:批处理系统的特点:早期批处理有个监督程序,作业自动过渡直到全部处理完,而脱机批处理的特点:主机与卫星机并行操作。
b:分时系统的特点:(1):并行性。
共享一台计算机的众多联机用户可以在各自的终端上同时处理自己的程序。
(2):独占性。
分时操作系统采用时间片轮转的方法使一台计算机同时为许多终端上同时为许多终端用户服务,每个用户的感觉是自己独占计算机。
操作系统通过分时技术将一台计算机改造为多台虚拟计算机。
(3):交互性。
用户与计算机之间可以进行“交互会话”,用户从终端输入命令,系统通过屏幕(或打印机)将信息反馈给用户,用户与系统这样一问一答,直到全部工作完成。
c:分时系统的响应比较快的原因:因为批量操作系统的作业周转时间较长,而分时操作系统一般采用时间片轮转的方法,一台计算机与许多终端设备连接,使一台计算机同时为多个终端用户服务,该系统对每个用户都能保证足够快的响应时间,并提供交互会话功能。
1.3:实时信息处理系统和分时系统的本质区别:实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。
其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。
此外,实时操作系统应有较强的容错能力,分时操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。
用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。
用户根据上步结果发出下道命。
分时操作系统将CPU 的时间划分成若干个片段,称为时间片。
操作系统以时间片为单位,轮流为每个终端用户服务。
每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。
分时系统具有多路性、交互性、“独占”性和及时性的特征。
(完整版)操作系统第五版费祥林_课后习题答案解析参考

第一章操作系统概论1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。
如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少?答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。
由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故:CPU利用率=l-(80%)4 = 0.59若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87故增加IMB 内存使CPU 的利用率提高了47 % :87 %/59 %=147 %147 %-100 % = 47 %2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。
程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。
程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。
试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。
答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序A 无等待现象,但程序B 有等待。
程序B 有等待时间段为180rns 至200ms 间(见图中有色部分)3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。
试画出按多道运行的时间关系图(忽略调度执行时间)。
完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时lms , 试画出各程序状态转换的时间关系图。
计算机操作系统每章习题及答案

计算机操作系统每章习题及答案《操作系统》复习题第一章操作系统引论一、单项选择题1、操作系统是一种( B )。
A.应用软件B. 系统软件C.通用软件D. 工具软件2、操作系统是一组( C )。
A.文件管理程序B.中断处理程序C.资源管理程序D.设备管理程序3、现代操作系统的基本特征是( C )、资源共享和操作的异步性。
A.多道程序设计B. 中断处理C.程序的并发执行D. 实现分时与实时处理4、( D )不是操作系统关心的主要问题。
A. 管理计算机裸机B. 设计、提供用户程序与计算机硬件系统的界面C. 管理计算机系统资源D. 高级程序设计语言的编译器5、引入多道程序的目的在于( A )。
A. 充分利用CPU,减少CPU等待时间B. 提高实时响应速度C. 有利于代码共享,减少主、辅存信息交换量D. 充分利用存储器6、( A )没有多道程序设计的特点。
A. DOSB. UNIXC. WindowsD.OS/27、下列操作系统中,为分时系统的是( C )。
A. CP/MB. MS-DOSC. UNIXD. Windows NT8、在分时系统中,时间片一定,( B ),响应时间越长。
A.内存越多B.用户数越多C.后备队列越短D.用户数越少9、批处理系统的主要缺点是( B )。
A.CPU的利用率不高B.失去了交互性C.不具备并行性D.以上都不是10、在下列性质中,( D )不是分时系统的特征。
A. 交互性B. 同时性C. 及时性D. 独占性11、实时操作系统追求的目标是( C )。
A.高吞吐率B.充分利用内存C. 快速响应D. 减少系统开销12、CPU状态分为系统态和用户态,从用户态转换到系统态的唯一途径是( C )。
A. 运行进程修改程序状态字B. 中断屏蔽C. 系统调用D. 进程调度程序13、系统调用的目的是(A )。
A.请求系统服务B.终止系统服务C.申请系统资源D.释放系统资源14、系统调用是由操作系统提供的内部调用,它(B )。
操作系统第8章测试题及答案整理

第8章测试题及答案整理注:不保证全部正确,如有错误自行更改一.选择题1.假脱机技术是指。
A.联机同时外围设备操作技术B.对换技术和覆盖技术C.SPOOLing技术D.A和C2.缓冲技术中的缓冲池在中。
A.主存B.外存C.ROMD.寄存器3.引入缓冲的主要目的是。
A.改善CPU和I/O设备之间速度不匹配B.节省内存C.提高的CPU利用率D.高I/O设备的效率4.CPU输出数据的速度远远高于打印机的打印速度,为了解决这一矛盾,可采用。
A.并行技术B.通道技术C.缓冲技术D.虚存技术5.为了使多个进程能同时处理输入和输出,最好使用结构的缓冲技术。
A.缓冲池B.闭缓冲区环C.单缓冲区D.双缓冲区6.通过硬件和软件的功能扩充,把原来独立的设备改造成能为若干用户共享的设备,这种设备称为。
A.存储设备B.系统设备C.用户设备D.虚拟设备7.如果I/O设备与存储设备进行数据交换不经过CPU来完成,这种数据交换方式是。
A.程序查询B.中断C.DMAD.无条件存取8.中断发生后,应保留。
A.缓冲区指针B.关键寄存器内容C.被中断的程序D.页表9.下面的不属于设备管理机构。
A.JCBB.DCTC.COCTD.CHCT解析:JCB作业控制块、DCT设备控制表、COCT控制器控制表、CHCT通道控制表10.大多数低速设备都属于设备。
A.独享B.共享C.虚拟D.Spool11. 是直接存取的存储设备。
A.磁盘B.磁带C.打印机D.键盘显示终端12.以下叙述中正确的为。
A.在现代计算机中,只有I/O设备才是有效的中断源B.在中断处理过程中必须屏蔽中断C.同一用户所使用的I/O设备也可能并行工作D.Spooling是脱机I/O系统13. 是操作系统中采用的以空间换取时间的技术。
A.SpoolingB.虚存技术C.覆盖与交换D.通道解析:时间->空间(虚存)、空间->时间(Spooling)14.Spooling技术,实质是将转化为共享设备的技术。
操作系统第五版答案第8章复习题及习题解答

虚拟内存8.1 简单分页与虚拟分页有什么区别?简单分页:一个程序中的所有的页都必须在主存储器中程序才能正常运行,除非使用覆盖技术。
虚拟内存分页:不是程序的每一页都必须在主存储器的帧中来使程序运行,页在需要的时候进行读取。
8.2 解释什么是抖动。
虚拟内存结构的震动现象,在这个过程中处理器大部分的时间都用于交换块,而不是执行指令。
8.3 为什么在使用虚拟内存时,局部性原理是至关重要的?可以根据局部性原理设计算法来避免抖动。
总的来说,局部性原理允许算法预测哪一个当前页在最近的未来是最少可能被使用的,并由此就决定候选的替换出的页。
8.4 哪些元素是页表项中可以找到的元素?简单定义每个元素。
帧号:用来表示主存中的页来按顺序排列的号码。
存在位(P):表示这一页是否当前在主存中。
修改位(M):表示这一页在放进主存后是否被修改过。
8.5 转移后备缓冲器的目的是什么?转移后备缓冲器()是一个包含最近经常被使用过的页表项的高速缓冲存储器。
它的目的是为了减少从磁盘中恢复一个页表项所需的时间。
8.6 简单定义两种可供选择的页读取策略。
在请求式分页中,只有当访问到某页中的一个单元时才将该页取入主存。
在预约式分页中,读取的并不是页错误请求的页。
8.7 驻留集管理和页替换策略有什么区别?驻留集管理主要关注以下两个问题:(1)给每个活动进程分配多少个页帧。
(2)被考虑替换的页集是仅限在引起页错误的进程的驻留集中选择还是在主存中所有的页帧中选择。
页替换策略关注的是以下问题:在考虑的页集中,哪一个特殊的页应该被选择替换。
8.8 和页替换算法有什么区别?时钟算法与算法很接近,除了在时钟算法中,任何一个使用位为一的页被忽略。
8.9 页缓冲实现的是什么?(1)被替换出驻留集的页不久又被访问到时,仍在主存中,减少了一次磁盘读写。
(2)被修改的页以簇的方式被写回,而不是一次只写一个,这就大大减少了操作的数目,从而减少了磁盘访问的时间。
8.10 为什么不可能把全局替换策略和固定分配策略组合起来?固定分配策略要求分配给一个进程的帧的数目是确定的,当一个进程中取入一个新的页时,这个进程的驻留页集中的一页必须被替换出来(保持分配的帧的数目不变),这是一种局部替换策略。
(完整word版)操作系统教程第5版部分习题答案

第一章:一、3、10、15、23、27、353。
什么是操作系统?操作系统在计算机系统中的主要作用是什么?操作系统是管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户有效地使用计算机提供良好运行环境的一种系统软件.主要作用(1)服务用户—操作系统作为用户接口和公共服务程序(2)进程交互-操作系统作为进程执行的控制者和协调者(3)系统实现—操作系统作为扩展机或虚拟机(4)资源管理—操作系统作为资源的管理者和控制者10。
试述系统调用与函数(过程)调用之间的区别。
(1)调用形式和实现方式不同;(2)被调用的代码位置不同;(3)提供方式不同15.什么是多道程序设计?多道程序设计有什么特点?多道程序设计是指允许多个作业(程序)同时进入计算机系统内存并执行交替计算的方法。
从宏观上看是并行的,从微观上看是串行的。
(1)可以提高CPU、内存和设备的利用率;(2)可以提高系统的吞吐率,使单位时间内完成的作业数目增加;(3)可以充分发挥系统的并行性,使设备和设备之间,设备和CPU之间均可并行工作。
23.现代操作系统具有哪些基本功能?请简单叙述之。
(1)处理器管理;(2)存储管理;(3)设备管理;(4)文件管理;(5)联网与通信管理。
27.什么是操作系统的内核?内核是一组程序模块,作为可信软件来提供支持进程并发执行的基本功能和基本操作,通常驻留在内核空间,运行于内核态,具有直接访问计算机系统硬件设备和所有内存空间的权限,是仅有的能够执行特权指令的程序。
35.简述操作系统资源管理的资源复用技术。
系统中相应地有多个进程竞争使用资源,由于计算机系统的物理资源是宝贵和稀有的,操作系统让众多进程共享物理资源,这种共享称为资源复用。
(1)时分复用共享资源从时间上分割成更小的单位供进程使用;(2)空分复用共享资源从空间上分割成更小的单位供进程使用。
二、2、52、答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100至150ms之间(见图中有色部分)。
操作系统精髓与设计原理第五版习题与答案

第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。
主存储器,存储数据和程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中的指令并且使他们得到执行;输入/输出设备,由控制单元管理。
1.2 定义处理器寄存器的两种主要类别。
用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言的程序员减少对主存储器的访问次数。
对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。
一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。
控制和状态寄存器:用以控制处理器的操作,且主要被具有特权的操作系统例程使用,以控制程序的执行。
1.3 一般而言,一条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输入数据。
数据处理:处理器可以执行很多关于数据的算术操作或逻辑操作。
控制:某些指令可以改变执行顺序。
1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。
1.5 多中断的处理方式是什么?处理多中断有两种方法。
第一种方法是当正在处理一个中断时,禁止再发生中断。
第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断处理器的运行。
1.6 存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。
1.7 什么是高速缓冲存储器?高速缓冲存储器是比主存小而快的存储器,用以协调主存跟处理器,作为最近储存地址的缓冲区。
1.8 列出并简要地定义I/O操作的三种技术。
可编程I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(用以执行这个指令);在进一步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。
中断驱动I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执行后续指令,直到后者完成,它将被I/O 模块中断。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虚拟内存8.1 简单分页与虚拟分页有什么区别?简单分页:一个程序中的所有的页都必须在主存储器中程序才能正常运行,除非使用覆盖技术。
虚拟内存分页:不是程序的每一页都必须在主存储器的帧中来使程序运行,页在需要的时候进行读取。
8.2 解释什么是抖动。
虚拟内存结构的震动现象,在这个过程中处理器大部分的时间都用于交换块,而不是执行指令。
8.3 为什么在使用虚拟内存时,局部性原理是至关重要的?可以根据局部性原理设计算法来避免抖动。
总的来说,局部性原理允许算法预测哪一个当前页在最近的未来是最少可能被使用的,并由此就决定候选的替换出的页。
8.4 哪些元素是页表项中可以找到的元素?简单定义每个元素。
帧号:用来表示主存中的页来按顺序排列的号码。
存在位(P):表示这一页是否当前在主存中。
修改位(M):表示这一页在放进主存后是否被修改过。
8.5 转移后备缓冲器的目的是什么?转移后备缓冲器(TLB)是一个包含最近经常被使用过的页表项的高速缓冲存储器。
它的目的是为了减少从磁盘中恢复一个页表项所需的时间。
8.6 简单定义两种可供选择的页读取策略。
在请求式分页中,只有当访问到某页中的一个单元时才将该页取入主存。
在预约式分页中,读取的并不是页错误请求的页。
8.7 驻留集管理和页替换策略有什么区别?驻留集管理主要关注以下两个问题:(1)给每个活动进程分配多少个页帧。
(2)被考虑替换的页集是仅限在引起页错误的进程的驻留集中选择还是在主存中所有的页帧中选择。
页替换策略关注的是以下问题:在考虑的页集中,哪一个特殊的页应该被选择替换。
8.8 FIFO和Clock页替换算法有什么区别?时钟算法与FIFO算法很接近,除了在时钟算法中,任何一个使用位为一的页被忽略。
8.9 页缓冲实现的是什么?(1)被替换出驻留集的页不久又被访问到时,仍在主存中,减少了一次磁盘读写。
(2)被修改的页以簇的方式被写回,而不是一次只写一个,这就大大减少了I/O操作的数目,从而减少了磁盘访问的时间。
8.10 为什么不可能把全局替换策略和固定分配策略组合起来?固定分配策略要求分配给一个进程的帧的数目是确定的,当一个进程中取入一个新的页时,这个进程的驻留页集中的一页必须被替换出来(保持分配的帧的数目不变),这是一种局部替换策略。
8.11 驻留集和工作集有什么区别?一个进程的驻留集是指当前在主存中的这个进程的页的个数。
一个进程的工作集是指这个进程最近被使用过的页的个数。
8.12 请求式清除和预约式清除有什么区别?在请求式清除中,只有当一页被选择用于替换时才被写回辅存;在预约式清除中,将这些被修改的多个页在需要用到它们所占据的页帧之前成批的写回辅存。
习题解答8.1 假设在处理器上执行的进程的也表如下所示。
所有数字均为十进制数,每一项都是从0开始记数的,并且所有的地址都是内存字节地址。
页尺寸为1024个字节。
a.描述CPU产生的虚拟地址通常是如何转化成一个物理主存地址的。
b.下列虚拟地址对应于哪个物理地址(不用考略页错误)?(i)1052(ii)2221(iii)5499解答a:由虚拟地址求得页号和偏移量,用虚拟页号作为索引页表,得到页帧号,联系偏移量得到物理地址b:(i)1052=1024+28 查表对应的页帧号是7,因此物理地址为7*1024+28=7196 (ii)2221=2*1024+173 此时出现页错误(iii)5499=5*1024+379 对应的页帧号为0 因此物理地址是3798.2 考虑一个使用32位的地址和1KB大小的页的分页虚拟内存系统。
每个页表项需要32位。
需要限制页表的大小为一个页。
a.页表一共需要使用几级?b.每一级页表的大小是多少?提示:一个页表的大小比较小。
c.在第一级使用的页较小与在最底下一级使用的页较小相比,那种策略使用最小个数的页?解答a:虚拟内存可以分为232/210= 222页,所以需要22个bit来区别虚拟内存中的一页,每一个页表可以包含210/4=28项,因此每个页表可以包含22bit中的8个bit,所以需要三级索引。
b:第二级页表有28个页表项,第一级页表有26个页表项。
c:如果顶层有26个页表项将会减少使用空间,在这种情况下,中间层页表有26个并且每个都有28个页表项,底层有214个页并且每个都有28个页表项,因此共有1+26+214页=16,449页。
如果中间层有26个页表项,那么总的页数有1+28+214页=16,641页。
如果底层有26个页表项,那么总的页表数是1+28+216页=65,973页。
8.3 a:图8.4中的用户表需要多少内存空间?b:假设需要设计一个哈希反向页表来实现与图8.4中相同的寻址机制,使用一个哈希函数来将20位页号映射到6位哈希表。
表项包含页号帧号和链指针。
如果页表可以给每个哈希表项分配最多3个溢出项的空间,则哈希反向页表需要占用多大的内存空间?解答a:4Mbyteb:行数:26+2=128项。
每项包含:20(页号)+20(帧号)+8bits(链索引)=48bits=6bytes。
总共:128*6=768bytes8.4 一个进程分配给4个页帧(下面的所有数字均为十进制数,每一项都是从0开始计数的)。
上一次把一页装入到一个页帧的时间,上一次访问页帧中的页的时间,每个页帧中的虚拟页号以及每个页帧的访问位(R)和修改位(M)如下表所示(时间均为从进程开始到该事件之间的时钟时间,而不是从事件发生到当前的时钟值)。
1 1 130 160 1 00 2 26 162 1 03 3 20 163 1 1当虚拟页4发生错误时,使用下列内存管理策略,哪一个页帧将用于置换?解释原因。
a.FIFO(先进先出)算法b.LRU(最近最少使用)算法c.Clock算法d.最佳(使用下面的访问串)算法e.在页错误之前给定上述内存状态,考虑下面的虚拟页访问序列:4,0,0,2,4,2,1,0,3,2如果使用窗口大小为4的工作集策略来代替固定分配,会发生多少页错误?每个页错误何时发生?解答a:页帧3,在时间20加载,时间最长。
b:页帧1,在时间160访问距现在时间最长。
c:清除页帧3的R位(最早加载),清除页帧2的R位,(次最早加载),换出的是页帧0因为它的R位为0。
d:换出的是页帧3中的虚拟页3,因为它将最晚被访问到。
e:一共有6个错误,如下8.5 一个进程访问5页:A,B,C,D和E,访问顺序如下:A;B;C;D;A;B;E;A;B;C;D;E假设置换算法为先进后出,该进程在主存中有三个页帧,开始时为空,请查找在这个访问顺序中传送的页号。
对于4个页帧的情况,请重复上面的过程。
解答分别有9次和10次页错误,这被称之为“Belady′s现象”("An Anomaly in Space-Time Characteristics of Certain Programs Running in a Paging Machine," by Belady et al, Communications of the ACM, June 1969.)8.6 一个进程在磁盘上包含8个虚拟页,在主存中固定分配给4个页帧。
发生如下顺序的页访问:1,0,2,2,1,7,0,1,2,0,3,0,4,5,1,5,2,4,5,6,7,6,7,2,4,2,7,3,3,2,3a.如果使用LRU替换策略,给出相继驻留在这4个页帧中的页。
计算主存的命中率。
假设这些帧最初是空的。
b.如果使用FIFO策略,重复问题(a)。
c.比较使用这两种策略的命中率。
解释为什么这个特殊的访问顺序,使用FIFO的效率接近于LRU。
解答a:LRU:命中率=16/33b:FIFO:命中率=16/33c:这两种策略对这个特殊的页轨迹(执行顺序)是等效的。
8.7 在VAX中,用户页表以系统空间的虚拟地址进行定位。
让用户页表位于虚存而不是主存中有什么好处?有什么缺点?解答最主要的优点是在物理内存空间上的节省。
这主要是两方面的原因:(1)一个用户页表可以仅当使用时才取入内存。
(2)操作系统可以动态的分配用户页表,产生一个页表仅当程序被创建时。
当然,也有一个缺点:地址转换需要多余的工作。
8.8 假设在主存中执行下列程序语句:for(i=1;i≤n;i++)a[i]=b[i]+c[i];页尺寸为1000个字。
令n=1000。
使用一台具有所有寄存器指令并使用了索引寄存器的机器,写出实现上述语句的一个假想程序,然后给出在执行过程中的页访问顺序。
解答由机器语言编写的程序,在主存中地址4000处开始运行。
运行情况如下:4000 (R1)←1 建立索引记录i4001 (R1)←n 在R2中建立n4002 比较R2,R1 检查i﹥n4003 如果大于则跳转到40094004 (R3)←B(R1)使用索引记录R1到达B[i]4005 (R3)←(R3)+C(R1)使用索引记录R1加上C[i]4006 A(R1)←(R3)使用索引记录R1将总和存入A[i]中4007 (R1)←(R1)+1 i加一4008 跳到40026000—6999 存储A7000—7999 存储B8000—8999 存储C9000 存储19001 存储n由这个循环产生的参考串为494944(47484649444)1000包括11.000个参考,但仅包括5个不寻常的页8.9 IBM System/370体系结构使用两级存储器结构,并且分别把这两级称为段和页,这里的分段方法缺少本章所描述的关于段的许多特征。
对于这个基本的370体系结构,页尺寸可以是2KB或4KB,段大小固定为64KB或1MB。
这种方案缺少一般分段系统的那些优点?370的分段方法有什么好处?解答S/370分段系统是固定的且对程序员是不可见的,因此没有一个分段系统的优点在S/370中实现(无保护情况下)每一个段表项的P位提供整个段表的保护。
8.10 假设页尺寸为4KB,页表项大小位4字节。
如果要映射一个64位地址空间,并且最顶层的页表对应于一页,则需要几级页表?解答因为每个页表项有4bytes,每个页表有4Kbytes,所以每个页表可以映射1024=210个页,标识出210×212=222bytes的地址空间。
然而,地址空间是264bytes。
增加一个二层页表,顶层页表指向210我们可以看到5层是不够表示64位的地址空间,但是6层达到了要求。
但是6层中只有2位被使用,而不是全部的10位。
所以不是使用72位的虚拟地址空间,而是将除了最低两位外的其他位全部屏蔽忽略。
这样将会得到一个64位地址空间,顶层页只有4个页表项。
另外一种方法是修改规则将顶层页做成一个单独的物理页并且让它适合4个页。
这样将会节省一个页。