文档库 最新最全的文档下载
当前位置:文档库 › 第4章习题解答

第4章习题解答

第4章习题解答
第4章习题解答

模拟请求页式存储管理中硬件的地址转换和缺页中断,并用先进先出调度算法(FIFO)处理缺页中断

实验报告 课程名称操作系统原理实验名称虚拟页式管理 姓名学号专业班级网络 实验日期成绩指导教师赵安科 (①实验目的②实验原理③主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议) 实验二模拟请求页式存储管理中硬件的地址转换和缺页中断,并用先进先出调度算法(FIFO)处理缺页中断 1.内容:模拟请求页式存储管理中硬件的地址转换和缺页中断处理 2.思想: 装入新页置换旧页时,若旧页在执行中没有被修改过,则不必将该页重写磁盘。因此,页表中增加是否修改过的标志,执行“存”指令和“写”指令时将对应的修改标志置成“1” 3.要求及方法: ①设计一个地址转换程序来模拟硬件的地址转换和缺页中断。当访问的页在主存时则形成绝对地址,但不去模拟指令的执行,可以输出转换后的绝对地址来表示一条指令已执行完成。当访问的页不在主存中时,则输出“*页号”来表示硬件产生了一次缺页中断。模拟地址转换流程见图1。 ②编制一个FIFO页面调度程序;FIFO页面调度算法总是先调出作业中最先进入主存中的哪一页。因此可以用一个数组来表示(或构成)页号队列。数组中每个元素是该作业已在主存中的页面号,假定分配给作业的页架数为m,且该作业开始的m页已装入主存,则数组可由m个元素构成。 P[0],P[1],P[2],…,P[m-1] 它们的初值为P[0]:=0,P[1]:=1,P[2]:=2,…,P[m-1]:=m-1 用一指针K指示当要调入新页时应调出的页在数组中的位置,K的初值为“0”,当产生缺页

中断后,操作系统总是选择P[K]所指出的页面调出,然后执行: P[K]:=要装入的新页页号 K :=(k+1)mod m 在实验中不必实际地启动磁盘执行调出一页和装入一页的工作,而用输出“OUT 调出的页号”和“IN 要装入的新页页号”来模拟一次调出和装入过程,模拟程序的流程图见附图1。 按流程控制过程如下: 提示:输入指令的页号和页内偏移和是否存指令?? ? 0 1非存指令存指令,若d 为-1则结束,否则进 入流程控制过程,得P 1和d ,查表在主存时,绝对地址=P 1×1024+d ③ 假定主存中页架大小为1024个字节,现有一个共7页的作业,其副本已在磁盘上。系统为该作业分配了4个页架,且该作业的第0页至第3页已装入内存,其余3页未装入主 依次执行上述指令调试你所设计的程序(仅模拟指令的执行,不考虑序列中具体操作的执行)。

操作系统习题及答案四

四、计算题 1某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KBo假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下: 则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。 1. 解:页式存储管理的逻辑地址分为两部分:页号和页内地址。由已知条件用户编程空间共32个页面”可知页号部分占5位;由每页为1KB” 1K=210,可知内页地址占10位。由内存为16KB',可知有16块,块号为4位。 逻辑地址0A5C( H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的 分析,下划线部分为页内地址,编码000 10 ”为页号,表示该逻辑地址对应的页号为2o 查页表,得到物理块号是11(十进制),即物理块地址为:10 11,拼接块内地址10 0101 1100, 得10 1110 0101 1100 ,即2E5C( H)o 2、对于如下的页面访问序列: 1, 2 , 3 , 4 , 1 , 2 , 5 , 1 , 2 , 3 , 4 , 5 当内存块数量为3时,试问:使用FIFO、LRU置换算法产生的缺页中断是多少?写出依次产生缺页中断后应淘汰的页。(所有内存开始时都是空的,凡第一次用到的页面都产生一 次缺页中断。要求写出计算步骤。) 2. 解: 采用先进先出(FIFO )调度算法,页面调度过程如下: 共产生缺页中断9次。依次淘汰的页是1、2、3、4、1、2 共产生缺页中断10次。依次淘汰的页是1、2、3、4、5、1、2o 3、下表给出了某系统中的空闲分区表,系统采用可变式分区存储管理策略。现有以下作业序列:96K、 20K、200K o若用首次适应算法和最佳适应算法来处理这些作业序列,试问哪一种算法可以满足该作业序列的请求,为什么? 空闲分区表

行程问题典型例题及答案详解

行程问题典型例题及答案详解 行程问题是小学奥数中的重点和难点,也是西安小升初考试中的热点题型,纵观近几年试题,基本行程问题、相遇追及、多次相遇、火车、流水、钟表、平均速度、发车间隔、环形跑道、猎狗追兔等题型比比皆是,以下是一些上述类型经典例题(附答案详解)的汇总整理,有疑问可以直接联系我。 例1:一辆汽车往返于甲乙两地,去时用了4个小时,回来时速度提高了1/7,问:回来用了多少时间? 分析与解答:在行程问题中,路程一定,时间与速度成反比,也就是说速度越快,时间越短。设汽车去时的速度为v千米/时,全程为s千米,则:去时,有s÷v=s/v=4,则 回来时的时间为:,即回来时用了3.5小时。评注:利用路程、时间、速度的关系解题,其中任一项固定,另外两项都有一定的比例关系(正比或反比)。 例2:A、B两城相距240千米,一辆汽车计划用6小时从A城开到B城,汽车行驶了一半路程,因故障在中途停留了30分钟,如果按原计划到达B城,汽车在后半段路程时速度应加快多少? 分析:对于求速度的题,首先一定是考虑用相应的路程和时间相除得到。 解答:后半段路程长:240÷2=120(千米),后半段用时为:6÷2-0.5=2.5(小时),后半段行驶速度应为:120÷2.5=48(千米/时),原计划速度为:240÷6=40(千米/时),汽车在后半段加快了:48-40=8(千米/时)。 答:汽车在后半段路程时速度加快8千米/时。 例3:两码头相距231千米,轮船顺水行驶这段路程需要11小时,逆水每小时少行10千米,问行驶这段路程逆水比顺水需要多用几小时? 分析:求时间的问题,先找相应的路程和速度。 解答:轮船顺水速度为231÷11=21(千米/时),轮船逆水速度为21-10=11(千米/时),逆水比顺水多需要的时间为:21-11=10(小时) 答:行驶这段路程逆水比顺水需要多用10小时。

实验3 页式存储管理的缺页中断及淘汰算法模拟

实验三请求页式管理的地址变换及页面淘汰算法模拟 一、实验目的 1. 通过实验,掌握请求页式存储管理的地址变换过程 2. 通过实验,掌握请求页式存储管理的先进先出页面淘汰算法 二、实验内容 1.编程模拟实现页式管理的动态地址变换过程 2.编程模拟实现当发现要访问的页不再主存时,发生缺页中断,并调用先进先出页面淘汰算法 三、实验步骤 1. 定义页式管理中的页面长度,页表长度,页表结构。 2.定义实现先进先出页面淘汰算法的函数。(注意要定义一个全局变量用于记录当前最早到达的页号) 3.定义完成动态地址变换的函数。 3. 在主函数先输入一个作业的页表信息(必须要有在主存的页),再通过循环的方式不断输入一个数字表示逻辑地址,根据刚才创建的作业的页表信息,如果该逻辑地址所在的页已经在主存则直接计算该逻辑地址所对应的物理地址,若该逻辑地址所在的页不在主存则调用先进先出淘汰算法,淘汰一页,调入所要的页,然后再计算该逻辑地址所对应的物理地址。循环结束,程序退出。 四、实现提示 1、#define n 100 /*假定的页面长度*/ #define length 10 /*假定的页表长度*/ struct { int lnumber; //逻辑页号 int flag; //该页是否在主存,可用“1”“0”表示*/ int wnumber; //物理页号 int next; //用于记录该页后下一个到达的页号 }page[length]; /*页表结构定义*/ 2、先进先出页面淘汰算法

int first=0; void fcfs(int in_number) //in_number表示要求调入的逻辑页号{ printf("发生缺页中断,淘汰第%d页\n",page[first].lnumber); page[first].flag=0; /* 所淘汰页的存在标志改为0*/ page[in_number].wnumber=page[first].wnumber; page[in_number].flag=1; /* 所调入页的存在标志改为1*/ printf("从磁盘调入逻辑第%d页成功!其对应的物理页面号为:%d\n",in_number,page[in_number].wnumber); first= page[first].next; } 3、动态地址变换函数 void compute_address(int laddress) //laddress表示要变换的逻辑地址,在其中调用fcfs函数 { }

第四章部分习题答案

习题四 3、何谓静态链接?何谓装入时动态链接和运行时的动态链接? 答:(1) 静态链接。在程序运行之前,先将各目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开。我们把这种事先进行链接的方式称为静态链接方式。 (2) 装入时动态链接。这是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的链接方式。 (3) 运行时动态链接。这是指对某些目标模块的链接,是在程序执行中需要该(目标)模块时,才对它进行的链接。 6、为什么要引入动态重定位?如何实现? 答:(1)在连续分配方式中,必须把一个系统或用户程序装入一连续的内存空间。如果在系统中只有若干个小的分区,即使它们容量的总和大于要装入的程序,但由于这些分区不相邻接,也无法把该程序装入内存。这种不能被利用的小分区称为“零头”或“碎片”。为了消除零头所以要引入动态重定位。 (2)在动态运行时装入的方式中,作业装入内存后的所有地址都仍然是相对地址,将相对地址转换为物理地址的工作,被推迟到程序指令要真正执行时进行。为使地址的转换不会影响到指令的执行速度,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序(数据)在内存中的起始地址。程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。地址变换过程是在程序执行期间,随着对每条指令或数据的访问自动进行的,故称为动态重定位。 14、较详细地说明引入分段存储管理是为了满足用户哪几方面的需要。 答:1) 方便编程 通常,用户把自己的作业按照逻辑关系划分为若干个段,每个段都是从0 开始编址,并有自己的名字和长度。因此,希望要访问的逻辑地址是由段名(段号)和段内偏移量(段内地址)决定的。

页式虚拟存储管理中地址转换和缺页中断实验参考2

页式虚拟存储管理中地址转换和缺页中断 一.实验目的 (1)深入了解存储管理如何实现地址转换。 (2)进一步认识页式虚拟存储管理中如何处理缺页中断。 二.实验内容 编写程序完成页式虚拟存储管理中地址转换过程和模拟缺页中断的处理。 三.实验原理 页式存储管理把内存分割成大小相等位置固定的若干区域,叫内存页面,内存的分配以“页”为单位,一个程序可以占用不连续的页面,逻辑页面的大小和内存页面的大小相同,内外存的交换也以页为单位进行,页面交换时,先查询快表,若快表中找不到所需页面再去查询页表,若页表中仍未找到说明发生了缺页中断,需先将所需页面调入内存再进行存取。 四.实验部分源程序 #define size 1024//定义块的大小,本次模拟设为1024个字节。 #include "stdio.h" #include "string.h" #include struct plist { int number; //页号 int flag; //标志,如为1表示该页已调入主存,如为0则还没调入。 int block; //主存块号,表示该页在主存中的位置。 int modify; //修改标志,如在主存中修改过该页的内容则设为1,反之设为0 int location; //在磁盘上的位置 }; //模拟之前初始化一个页表。 struct plist p1[7]={{0,1,5,0,010},{1,1,8,0,012},{2,1,9,0,013},{3,1,1,0,021},{4,0,-1,0,022},{5,0,-1,0,023},{6, 0,-1,0,125}}; //命令结构,包括操作符,页号,页内偏移地址。 struct ilist { char operation[10]; int pagenumber; int address; }; //在模拟之前初始化一个命令表,通过程序可以让其顺序执行。 struct ilist p2[12]={{"+",0,72},{"5+",1,50},{"*",2,15},{"save",3,26},

操作系统复习题答案

操作系统复习题 一、单项选择题:在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.操作系统的主要功能是管理计算机系统中的()。【D 】A.程序B.数据 C.文件D.资源 2.产生死锁的基本原因是()和进程推进顺序非法。【 A 】A.资源分配不当B.系统资源不足 C.作业调度不当D.进程调度不当 3.动态重定位是在作业的()中进行的。【D 】A.编译过程B.装入过程 C.连接过程D.执行过程 4.存放在磁盘上的文件,()。【A 】A.既可随机访问又可顺序访问B.只能随机访问 C.只能顺序访问D.只能读写不能访问 5.对于硬盘上存放的信息,物理上读写的最小单位是一个()。【C 】A.二进制(bit)B.字节(byte) C.物理块D.逻辑记录 6.操作系统中利用信号量和P、V操作,()。【C 】A.只能实现进程的互斥B.只能实现进程的同步 C.可实现进程的互斥与同步D.可完成进程调度 7.SPOOLing技术可以实现设备的()。【C 】A.独占B.共享 C.虚拟D.物理 8.在存储管理的各方案中,可扩充主存容量的方案是()存储管理。【D 】A.固定分区B.可变分区 C.连续D.页式虚拟 9.磁盘是可共享的设备,每一时刻()进程与它交换信息。【C 】A.允许有两个B.可以有任意多个 C.最多一个D.至少有一个 10.逻辑文件存放到存储介质上时,采用的组织形式是与()有关。【B 】 ×××××试题答案及评分参考(×)第1页(共×页)

A.逻辑文件结构B.存储介质特性 C.主存管理方式D.分配外设方式 11.在操作系统中,()是竞争和分配计算机系统资源的基本单位。【B 】A.程序B.进程 C.作业D.线程 12.作业调度的关键在于()。【C 】A.选择恰当的进程管理程序B.用户作业准备充分 C.选择恰当的作业调度算法D.有一个较好的操作环境 13.文件的保密是指防止文件被()。【C 】A.篡改B.破坏 C.窃取D.删除 14.系统抖动是指()。【 D 】A.使用机器时,屏幕闪烁的现象 B.由于主存分配不当,偶然造成主存不够的现象 C.系统盘有问题,致使系统部稳定的现象 D.被调出的页面又立刻被调入所形成的频繁调入调出现象 15.避免死锁的一个著名的算法是()。【C 】A.先入先出算法 B.优先级算法 C.银行家算法D.资源按序分配法 16.在多进程的并发系统中,肯定不会因竞争()而产生死锁。【D 】A.打印机B.磁带机 C.磁盘D.CPU 17.用户程序中的输入、输出操作实际是由()完成。【C 】A.程序设计语言B.编译系统 C.操作系统D.标准库程序 18.在分页存储管理系统中,从页号到物理块的地址映射是通过()实现的。【B 】A.段表B.页表 C.PCB D.JCB 19.在操作系统中,进程的最基本特征是()。【A 】A.动态性和并发性B.顺序性和可再现性 C.与程序的对应性D.执行过程的封闭性 20.一种既有利于短小作业又兼顾到长作业的作业调度算法是()。【C 】A.先来先服务B.轮转 C.最高响应比优先D.均衡调度 ×××××试题答案及评分参考(×)第2页(共×页)

习题解答

第二章习题答案: 解:由 wilson 参数方程exp[()/]L j ij ij ii L i V RT V λλΛ= --求得: 21212111 exp[()/]L L V RT V λλΛ=-- 33177.5510e x p [(1035.33)/(8.314378.47)] 100.91102.445 --?=--??= 同理可得:21Λ= 13Λ= 31Λ= 23Λ= 32Λ=

由wilson 方程 可得: 1 1.039γ= 2 1.678γ= 3 1.508 γ= 在T=378.47K 下, 由安托尼公式: 苯: 1 ln 20.79362788.51/(52.36)s P T =-- 得1s P =207.48KPa 甲苯:2ln 20.90653096.52/(53.67)s P T =--得2s P =86.93KPa 对二甲苯:3 ln 20.98913346.65/(57.84)s P T =-- 得3 s P =38.23KPa 对于非理想溶液,则s i i i P K P γ= , 故11 1 2.13s P K P γ= =,2 1.44K = 30.57K = 对于完全理想溶液,则s i i P K P =, 故意 1 1 2.05s P K P == 20.86K = 30.38K = 2.习题2参照教材例2-1 P10 3.乙酸甲酯(1)-丙酮(2)-甲醇(3)三组分蒸汽混合物组成为y1=0.33,y2=0.34,y3=0.33(摩尔分数)。气相假定为理想气体,液相活度系数用Wilson 方程表示,试求50℃时该蒸汽混合物之露点压力。 解:由有关文献查得和回归的所需数据为: 50℃时各纯组分的饱和蒸气压,kPa P 1S =78.049 P 2S =81.848 P 3S =55.581 50℃时各组分的气体摩尔体积,cm3/mol V 1l =83.77 V 2l =76.81 V 3l =42.05 ln 1ln()ki k i ij j j k kj j j x x x γΛ=-Λ- Λ∑ ∑∑

模拟请求页式存储管理中硬件的地址转换和缺页中断,并用先进先出调度算法(FIFO)处理缺页中断

实验二模拟请求页式存储管理中硬件的地址转换和缺页中断,并用先进先出调度算法(FIFO)处理缺页中断 1.内容:模拟请求页式存储管理中硬件的地址转换和缺页中断处理 2.思想: 装入新页置换旧页时,若旧页在执行中没有被修改过,则不必将该页重写磁盘。因此,页表中增加是否修改过的标志,执行“存”指令和“写”指令时将对应的修改标志置成“1” 3.要求及方法: ①设计一个地址转换程序来模拟硬件的地址转换和缺页中断。当访问的页在主存时则形成绝对地址,但不去模拟指令的执行,可以输出转换后的绝对地址来表示一条指令已执行完成。当访问的页不在主存中时,则输出“*页号”来表示硬件产生了一次缺页中断。模拟地址转换流程见图1。 ②编制一个FIFO页面调度程序;FIFO页面调度算法总是先调出作业中最先进入主存中的哪一页。因此可以用一个数组来表示(或构成)页号队列。数组中每个元素是该作业已在主存中的页面号,假定分配给作业的页架数为m,且该作业开始的m页已装入主存,则数组可由m个元素构成。 P[0],P[1],P[2],…,P[m-1] 它们的初值为P[0]:=0,P[1]:=1,P[2]:=2,…,P[m-1]:=m-1 用一指针K指示当要调入新页时应调出的页在数组中的位置,K的初值为“0”,当产生缺页中断后,操作系统总是选择P[K]所指出的页面调出,然后执行: P[K]:=要装入的新页页号 K:=(k+1)mod m 在实验中不必实际地启动磁盘执行调出一页和装入一页的工作,而用输出“OUT调出的页号”和“IN要装入的新页页号”来模拟一次调出和装入过程,模拟程序的流程图见附图1。 按流程控制过程如下:

第3章习题解答

第3章(大本)习题解答 一、填空 1.将作业相对地址空间的相对地址转换成内存中的绝对地址的过程称为 地址重定位 。 2.使用覆盖与对换技术的主要目的是 提高内存的利用率 。 3.存储管理中,对存储空间的浪费是以 内部碎片 和 外部碎片 两种形式表现出来的。 4.地址重定位可分为 静态重定位 和 动态重定位 两种。 5.在可变分区存储管理中采用最佳适应算法时,最好按 尺寸 法来组织空闲分区链表。 6.在分页式存储管理的页表里,主要应该包含 页号 和 块号 两个信息。 7.静态重定位在程序 装入 时进行,动态重定位在程序 执行 时进行。 8.在分页式存储管理中,如果页面置换算法选择不当,则会使系统出现 抖动 现象。 9.在请求分页式存储管理中采用先进先出(FIFO )页面淘汰算法时,增加分配给作业的块数时, 缺页中断 的次数有可能会增加。 10.在请求分页式存储管理中,页面淘汰是由于 缺页 引起的。 11.在段页式存储管理中,每个用户作业有一个 段 表,每段都有一个 页 表。 二、选择 1.虚拟存储器的最大容量是由 B 决定的。 A .内、外存容量之和 B .计算机系统的地址结构 C .作业的相对地址空间 D .作业的绝对地址空间 2.采用先进先出页面淘汰算法的系统中,一进程在内存占3块(开始为空),页面访问序列为1、2、3、4、1、2、5、1、2、3、4、5、6。运行时会产生 D 次缺页中断。 A .7 B .8 C .9 D .10 从图3-1中的“缺页计数”栏里可以看出应该选择D 。 1 2 3 4 1 2 5 1 2 3 4 5 6 页面走向→ 3个内存块→缺页计数→ 图3-1 选择题2配图 3.系统出现“抖动”现象的主要原因是由于 A 引起的。 A .置换算法选择不当 B .交换的信息量太大 C .内存容量不足 D .采用页式存储管理策略 4.实现虚拟存储器的目的是 D 。 A .进行存储保护 B .允许程序浮动 C .允许程序移动 D .扩充主存容量

习题解答 (2)

第7章思考题及习题7参考答案 一、填空 1. AT89S52单片机任何一个端口要想获得较大的驱动能力,要采用电平输出。 答:低 2.检测开关处于闭合状态还是打开状态,只需把开关一端接到I/O端口的引脚上,另一端接地,然后通过检测来实现。 答: I/O端口引脚的电平 3. “8”字型的LED数码管如果不包括小数点段共计段,每一段对应一个发光二极管,有和两种。 答:7,共阳极,共阴极 4. 对于共阴极带有小数点段的数码管,显示字符“6”(a段对应段码的最低位)的段码为 ,对于共阳极带有小数点段的数码管,显示字符“3”的段码为。 答:7DH,B0H 5. 已知8段共阳极LED数码显示器要显示某字符的段码为A1H(a段为最低位),此时显示器显示的字符为。 答:d 6. LED数码管静态显示方式的优点是:显示闪烁,亮度,比较容易,但是占用的线较多。 答:无,较高,软件控制,I/O口 7. 当显示的LED数码管位数较多时,一般采用显示方式,这样可以降低, 减少的数目。 答:动态,成本,I/O端口 8. LCD 1602是型液晶显示模块,在其显示字符时,只需将待显示字符的 由单片机写入LCD 1602的显示数据RAM(DDRAM),内部控制电路就可将字符在LCD上显示出来。 答:字符,ASCII码 9. LCD 1602显示模块内除有字节的 RAM外,还有字节的自定义,用户可自行定义个5×7点阵字符。

答:80,显示数据,64,字符RAM,8 10.当按键数目少于8个时,应采用式键盘。当按键数目为64个时,应采用式键盘。 答:独立,矩阵 11.使用并行接口方式连接键盘,对独立式键盘而言,8根I/O口线可以接个按键,而对矩阵式键盘而言,8根I/O口线最多可以接个按键。 答:8,64 12.LCD 1602显示一个字符的操作过程为:首先,然后,随后,最后。 答:读忙标志位BF,写命令,写显示字符,自动显示字符 13.由于微型打印机TPμP-40A/16A是一种外设,因此单片机与微型打印机的的命令与数据传送,必须采用方式。应答信号可与信号作为一对应答联络信号,也可使用和作为一对应答联络信号。 答:慢速,ACK,STB,STB,BUSY 二、判断对错 1.P0口作为总线端口使用时,它是一个双向口。对 2.P0口作为通用I/O端口使用时,外部引脚必须接上拉电阻,因此它是一个准双向口。对3.P1~P3口作为输入端口用时,必须先向端口寄存器写入1。对 4.P0~P3口的驱动能力是相同的。错 5.当显示的LED数码管位数较多时,动态显示所占用的I/O口多,为节省I/O口与驱动电路的数目,常采用静态扫描显示方式。错 6.LED数码管动态扫描显示电路只要控制好每位数码管点亮显示的时间,就可造成“多位同时亮”的假象,达到多位LED数码管同时显示的效果。错 7.使用专用的键盘/显示器芯片, 可由芯片内部硬件扫描电路自动完成显示数据的扫描刷新,和键盘扫描。对 8.控制LED点阵显示器的显示,实质上就是控制加到行线和列线上的电平编码来控制点亮某些发光二极管(点),从而显示出由不同发光的点组成的各种字符。对 9.16×16点阵显示屏是由4个4×4的LED点阵显示器组成。错 10.LCD 1602液晶显示模块,可显示2行,每行16个字符。对

模拟分页式虚拟存储管理中硬件的地址转换和缺页中断 选择页面调度算法处理缺页中断

操作系统实验二(第一题) 一.实验内容 模拟分页式虚拟存储管理中硬件的地址转换和缺页中断,以及选择页面调度算法处理缺页中断。 二.实验目的 在计算机系统总,为了提高主存利用率,往往把辅助存储器作为主存储器的扩充,使多道运行的作业的全部逻辑地址空间综合可以超出主存的绝对地址空间。用这种办法扩充的主存储区成为虚拟存储器。 三.实验题目 模拟分页式存储管理中硬件的地址转换和产生缺页中断。 是 否 开始 取一条指令 取指令中访问的页号 查页表 该也标志=1? 输出“*”页号表示发生缺页中断 形成绝对地址 输出绝对地址 有后继指令? 取下一条指令 结束

四.程序清单 // // 操作实验二.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include using namespace std; class ins { private:string ope; long int page; long int unit; public: ins(){ } ins(string o,long int p,long int u):ope(o),page(p),unit(u){} void setope(string o){ ope=o;} void setpage(long int p){ page=p;} void setunit(long int u){ unit=u;} string getope(){return ope;} long int getpage(){return page;} long int getunit(){return unit;} }; class work { private: long int Page; int sym; long int inum; long int onum; public: work(){} work(long int P, int s,long int i,long int o):Page(P),sym(s),inum(i),onum(o){} void setPage(long int P){ Page=P;} void setsym( int s){ sym=s;} void setinum(long int i){ inum=i;}

模拟请求页式存储管理中硬件的地址转换和缺页中断处理

一.实验内容 模拟请求页式存储管理中硬件的地址转换和缺页中断处理 二.实验原理 装入新页置换旧页时,若旧页在执行中没有被修改过,则不必将该页重写磁盘。因此,页表中增加是否修改过的标志,执行“存”指令和“写”指令时将对应的修改标志置成“1”表示修改过,否则为“0”表示未修改过。页表格式如下: 页号 标志 页架号 修改标志 在磁盘上位置 三.要求及方法: ① 设计一个地址转换程序来模拟硬件的地址转换和缺页中断。当访问的页在主存时则形成绝对地址,但不去模拟指令的执行,可以输出转换后的绝对地址来表示一条指令已执行完成。当访问的页不在主存中时,则输出“*页号”来表示硬件产生了一次缺页中断。模拟地址转换流程见图1。 ② 编制一个FIFO 页面调度程序;FIFO 页面调度算法总是先调出作业中最先进入主存中的哪一页。因此可以用一个数组来表示(或构成)页号队列。数组中每个元素是该作业已在主存中的页面号,假定分配给作业的页架数为m ,且该作业开始的m 页已装入主存,则数组可由m 个元素构成。 P[0],P[1],P[2],…,P[m-1] 它们的初值为P[0]:=0,P[1]:=1,P[2]:=2,…,P[m-1]:=m-1 用一指针K 指示当要调入新页时应调出的页在数组中的位置,K 的初值为“0”,当产生缺页中断后,操作系统总是选择P[K]所指出的页面调出,然后执行: P[K]:=要装入的新页页号 K :=(k+1)mod m 在实验中不必实际地启动磁盘执行调出一页和装入一页的工作,而用输出“OUT 调出的页号”和“IN 要装入的新页页号”来模拟一次调出和装入过程,模拟程序的流程图见附图1。 按流程控制过程如下: 提示:输入指令的页号和页内偏移和是否存指令??? 0 1非存指令存指令,若d 为-1则结束,否则进

第7章习题解答

第七章习题解答 一、填空 1.一个操作系统的可扩展性,是指该系统能够跟上先进计算技术发展的能力。 2.在引入线程的操作系统中,线程是进程的一个实体,是进程中实施调度和处理机分派的基本单位。 3.一个线程除了有所属进程的基本优先级外,还有运行时的当前优先级。 4.在Windows 2000中,具有1~15优先级的线程称为可变型线程。它的优先级随着时间配额的用完,会被强制降低。 5.Windows 2000在创建一个进程时,在内存里分配给它一定数量的页帧,用于存放运行时所需要的页面。这些页面被称为是该进程的“工作集”。 6.Windows 2000采用的是请求调页法和集群法相结合的取页策略,把页面装入到内存的页帧里的。 7.分区是磁盘的基本组成部分,是一个能够被格式化和单独使用的逻辑单元。 8.MFT是一个数组,是一个以数组元素为记录构成的文件。 9.只要是存于NTFS卷上的文件,在MFT里都会有一个元素与之对应。 10.在Windows 2000的设备管理中,整个I/O处理过程都是通过I/O请求包(IRP)来驱动的。 二、选择 1.在引入线程概念之后,一个进程至少要拥有D 个线程。 A. 4 B.3 C.2 D.1 2.在Windows 2000中,只有A 状态的线程才能成为被切换成运行状态,占用处理器执行。 A.备用B.就绪C.等待D.转换 3.Windows 2000是采用C 来实现对线程的调度管理的。 A.线程调度器就绪队列表 B.线程调度器就绪队列表、就绪位图 C.线程调度器就绪队列表、就绪位图、空闲位图 D.线程调度器就绪队列表、空闲位图 4.在Windows 2000里,一个线程的优先级,会在A 时被系统降低。 A.时间配额用完B.请求I/O C.等待消息D.线程切换5.在单处理机系统,当要在进程工作集里替换一页时,Windows2000实施的是B 页面淘汰策略。 A. FIFO(先进先出)B.LRU(最近最久未用) C.LFU(最近最少用)D.OPT(最优) 6.在页帧数据库里,处于下面所列A 状态下的页帧才可以变为有效状态。 A.初始化B.备用C.空闲D.修改7.当属性值能够直接存放在MFT的元素里时,称其为B 。 A.非常驻属性B.常驻属性C.控制属性D.扩展属性8.在NTFS文件系统中,文件在磁盘上存储时的物理结构是采用C 的。 A.连续式B.链接式C.索引式D.组合式9.在Windows 2000的设备管理中,I/O请求包(IRP)是由D 建立的。 A.用户应用程序B.文件系统驱动程序 C.设备驱动程序D.I/O管理器

习题解答精选

第一章习题 一、解释名词 金属键----正离子和电子气之间的静电引力,使全部离子结合起来的结合力位错----晶体中原子平面错动引起、二维很小三维很大的线缺陷 疲劳强度----低于一定值的应力下试样可以无限周期循环而不破坏,该值为~ 二、填空题 1.金属有三种常见的晶体结构是 _体心立方、面心立方、密排立方_; 2.晶体和非晶体结构上最根本的区别是_三维空间有规的周期性重复排列则; 3.在立方晶系中,{111}晶面族包括(111)(-111)(1-11)(11-1) 等晶面; 三、选择题 1.晶体中的位错属于: a)体缺陷;b) 面缺陷;c) 线缺陷;d)点缺陷。 2.在体心立方晶格中,原子密度最大的晶面是: a){100};b){110};c){111};d){120}。 四、综合分析题 1.作图表示立方晶系中的(101)晶面,[120]晶向。 3.在常温下,已知铜的原子直径d=2.55*10-10m,求铜的晶格常数。 d=2r=2*a√2/4, a=√2d= 5.什么是固溶强化?造成固溶强化的原因是什么? 固溶体溶质原子溶入晶格方式畸变,增大位错运动阻力,滑移困难,强度硬度提高。 第二章习题

一.名词解释 过冷度----理论结晶温度与实际结晶温度之差 滑移----切应力作用下,晶体一部分沿着一定的晶面(滑移面)上的一定方向(滑移方向)相对于另一部分发生滑动 加工硬化----变形度增大,强度硬度提高,塑性韧性下降 铁素体----c在α-Fe中的间隙固溶体 珠光体----铁素体与渗碳体的共析混合物 球化退火----使钢中碳化物球状化的热处理工艺 马氏体---- c在α-Fe中的过饱和固溶体 淬透性----钢接受淬火时形成马氏体的能力 淬硬性----钢淬火后硬度会大幅度提高,达到的最高硬度叫淬硬性 调质处理----淬火+高温回火 二.填空题 1.结晶过程是依靠两个密切联系的基本过程来实现的,这两个过程 是_形核_和_晶体长大_。 2.当对金属液体进行变质处理时,变质剂的作用是_增加晶核数量, 阻碍晶核长大_。 3.钢在常温下的变形加工称为_冷_加工,而铅在常温下的变形加 工是_热_加工。 4.造成加工硬化的根本原因是_位错密度增加,变形阻力长大_。

内存分配,缺页中断程序

#include #define M 100 // 要装入的作业数 #define N 10 //系统可以分配的最大主存数int chazhao(int x,int b[],int n) { for(int i=0;i

} printf("\n缺页的次数为: %d\n\n",count); printf("缺页中断率为: %.2f%%%\n\n",(float)count*100/(m-1)); printf("在内存中的页号为:"); for(int i=0;i int find(int x,int b[],int n) { int i; for( i=0;i

操作系统习题解答

第1章 一、填空 1.计算机由硬件系统和软件系统两个部分组成,它们构成了一个完整的计算机系统。 2.按功能划分,软件可分为系统软件和应用软件两种。 3.操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。 4.分时系统的主要特征为多路性、交互性、独立性和及时性。 5.实时系统与分时以及批处理系统的主要区别是高及时性和高可靠性。 6.若一个操作系统具有很强的交互性,可同时供多个用户使用,则是分时操作系统。 7.如果一个操作系统在用户提交作业后,不提供交互能力,只追求计算机资源的利用率、大吞吐量和作业流程的自动化,则属于批处理操作系统。 二、选择 1.操作系统是一种B 。 A.通用软件B.系统软件C.应用软件D.软件包2.操作系统是对C 进行管理的软件。 A系统软件B.系统硬件C.计算机资源D.应用程序3.操作系统中采用多道程序设计技术,以提高CPU和外部设备的A 。 A.利用率B.可靠性C.稳定性D.兼容性4.计算机系统中配置操作系统的目的是提高计算机的B 和方便用户使用。 A.速度B.利用率C.灵活性D.兼容性5.C 操作系统允许多个用户在其终端上同时交互地使用计算机。 A.批处理B.实时C.分时D.多道批处理 6、程序多道设计是指(D )。 A、在实时系统中并发运行的多个程序 B、在分布系统中同一时刻运行的多个程序 C、在一台处理机上同一时刻运行多个程序 D、在一台处理机上并发运行多个程序 7、配置了操作系统的计算机是一台比原来的物理计算机功能更强的计算机,这样的计算机只是一台逻辑上的计算机,称为(C )计算机。 A、并行 B、真实 C、虚拟 D、共享 8、下列选择中,(D )不是操作系统关心的主要问题。 A、管理计算机裸机 B、设计、提供用户程序与计算机硬件系统的界面 C、管理计算机系统资源 D、高级程序设计语言的编译器 9、分时系统为了使多个用户能够同时与系统交互,最关键的问题是( C )。

请求页式管理缺页中断模拟设计--FIFO、OPT

课程设计 题目请求页式管理缺页中断模拟设计 --FIFO、OPT 学院计算机科学与技术 专业 班级 姓名 指导教师吴利军 2013 年 1 月16 日

课程设计任务书 学生姓名: 指导教师:吴利军_ 工作单位:计算机科学与技术学院题目: 请求页式管理缺页中断模拟设计--FIFO、OPT 初始条件: 1.预备内容:阅读操作系统的内存管理章节内容,了解有关虚拟存储器、页式存储管理等概念,并体会和了解缺页和页面置换的具体实施方法。 2.实践准备:掌握一种计算机高级语言的使用。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.实现指定淘汰算法。能够处理以下的情形: ⑴能够输入给作业分配的内存块数; ⑵能够输入给定的页面,并计算发生缺页的次数以及缺页率; ⑶缺页时,如果发生页面置换,输出淘汰的页号。 2.设计报告内容应说明: ⑴需求分析; ⑵功能设计(数据结构及模块说明); ⑶开发平台及源程序的主要部分; ⑷测试用例,运行结果与运行情况分析; ⑸自我评价与总结: i)你认为你完成的设计哪些地方做得比较好或比较出色; ii)什么地方做得不太好,以后如何改正; iii)从本设计得到的收获(在编写,调试,执行过程中的经验和教训); iv)完成本题是否有其他方法(如果有,简要说明该方法); 时间安排: 设计安排一周:周1、周2:完成程序分析及设计。 周2、周3:完成程序调试及测试。 周4、周5:验收、撰写课程设计报告。 (注意事项:严禁抄袭,一旦发现,一律按0分记) 指导教师签名:年月日 系主任(或责任教师)签名:年月日

请求页式管理缺页中断模拟设计 ——FIFO、OPT 1课程设计目的与功能 1.1设计目的 结合《操作系统》所学内存页式管理章节,掌握虚拟内存设计的重要性,熟悉和掌握请求分页式存储管理的实现原理,通过分析、设计和实现页式虚拟存储管理缺页中断的模拟系统,重点掌握当请求页面不在内存而内存块已经全部被占用时的替换算法(主要通过FIFO和OPT实现),并考察替换算法的评价指标——缺页次数和缺页率,得到淘汰的页面次序。高级语言设计并实现出的结果程序要能够很好地显示页面调入和替换详细信息。 1.2初始条件及可发环境 1.2.1初始条件 1.预备内容:阅读操作系统的内存管理章节内容,了解有关虚拟存储器、页式存储管理等概念,并体会和了解缺页和页面置换的具体实施方法。 2.实践准备:掌握一种计算机高级语言的使用。 1.2.2开发环境 (1)使用系统:Windows XP (2)使用语言:C++ (3)开发工具:Visual C++ 6.0 1.3功能实现 设计的结果程序能实现FIFO、OPT算法模拟页式存储管理缺页中断,主要能够处理以下的情形: (1) 用户能够输入给定分配的内存块数; (2) 用户输入给定的页面,并计算发生缺页的次数、缺页率及淘汰页面次序;

大作业用先进先出(FIFO)页面调度算法处理缺页中断

实验四 用先进先出(FIFO )页面调度算法处理缺页中断 1.实验目的 深入了解页式存储管理如何实现地址转换; 进一步认识页式虚拟存储管理中如何处理缺页中断。 2.实验预备知识 页式存储管理中的地址转换的方法; 页式虚拟存储的缺页中断处理方法。 3.实验内容 编写程序完成页式虚拟存储管理中地址转换过程和模拟缺页中断的处理。实验具体包括:首先对给定的地址进行地址转换工作,若发生缺页则先进行缺页中断处理,然后再进行地址转换;最后编写主函数对所作工作进程测试。 假定主存64KB ,每个主存块1024字节,作业最大支持到64KB ,系统中每个作业分得主存块4块。 4.提示与讲解 页式存储管理中地址转换过程很简单,假定主存块的大小为2n 字节,主存大小为2m'字节和逻辑地址m 位,则进行地址转换时,首先从逻辑地址中的高m-n 位中取得页号,然后根据页号查页表,得到块号,并将块号放入物理地址的高m'-n 位,最后从逻辑地址中取得低n 位放入物理地址的低n 位就得到了物理地址,过程如图1所示。 图1 页式存储管理系统地址转换示意图 地址转换是由硬件完成的,实验中使用软件程序模拟地址转换过程,模拟地址转换的流程图如图2所示(实验中假定主存64KB ,每个主存块1024字节,即n=10,m'=16,物理地址中块号6位、块内地址10位;作业最大64KB ,即m=16,逻辑地址中页号6位、页内地址10位)。 在页式虚拟存储管理方式中,作业信息作为副本放在磁盘上,作业执行时仅把作业信息的部分页面装入主存储器,作业执行时若访问的页面在主存中,则按上述方式进行地址转换,若访问的页面不在主存中,则产生一个“缺页中断”, 逻辑地址

相关文档