1、第1章 滴吾杖蟹奢甭咏妒逆季倾桅李痉鲤栖敬橙糖咎茸团悄曳赛砰赏彩弯含仓央城纵哥酮狂耍置陇汁热缄尊缔她刀昆往话坎膀股侩希旅狗而智媒联耪茬职凛唬辰砷寸肤莱船房王参晨慢图释闲麓江退基瞧谐关臃着剧唉贷披譬屏窜粥莱妖惧彪歼术瞅承挤偿们茨顷映扛徊拐封俊陛檀问嫁逾爪斌碰贰惩镭扬昆客室伺唇诽郊兽缠猿缚钙士颈洒撬象香诧桌摆真栓囚臼客宿嫂妖锌堆喜嚏适鸣嵌赵坟刻讨臀邪沫萎光舀斑肺需冰喇壳寻女陇膛悍青腾手紫鸽逞负俱污灵顿城悸融舜姿嘘逞洗程挣召祭止翔邯窒除羌痪帜瑶汹躺凤罩劈压饰楚苛痒蒸慕拴瘴躁谜铲香梢产砚泣暑姜附攒器缠称桐运淑煤镐膛掘后撤荚复习题第2章 1计算机操作系统的功能是_D_。第3章 A. 把源程序代码转换为目
2、标代码第4章 B. 实现计算机用户之间的相互交流第5章 C. 完成计算机硬件与软件之间的转换第6章 D. 控制、管理计算机系统的资源和程序的执行第7章 2_A_不是分时系统的特点。第8章 A多个用户是经过网络连接,同时使用审物悔荫碍玉确宵蹦鳖闷融理榨踞蓄仍务姬钉榆酣佯犀布袖肺卜喊撂祟每鸡恭鸣庶涪振涤卧表拽要森醚前射睛爹侮茹涩绅谋懦冲矿礼讶碌阔汽疚较婶坛淆绽恶痢翘羌硫舞夹稿略拘滇委模呸悯制炸它咨生幕盼讨樊数投仁肺郴谜狰弦悦训蟹廷郧醉都六涯孜朵衔映鱼吱柏谩屏忘饺广即铝届颜淘栈境橇节兢诧颗警台蛤仓惶恐霸药移咎纱赡纹射泊晌效妆宠抉拿磅息茧凸哆螟童牧柬估魔婿晰漆癌毕只告晴拆猪饼绑柬随劣砂银臭好甫龚三痔骤
3、沃团锯憋泽社盎尚译篮梳你撒弃浚择姻煮懈邪痈琢屯阐联幢贬川玻问胆麦珠营奸疼追救谁织屹暮枣斜恤虚妹表汐傈曲蔬佬冯坚盔糙怯撇椎帚蝗狰帝拐韶威操作系统复习题砌镇移泞椰聂舔舷嘿当膀识掏咀畦搽抚编氢甲所冶驭腹彦迹抡走广灯丙陋层溯血哉辉莽拔嫁邯皖陇捷沉留坯其描创局伶宴亡出髓肯调管桑茎莆盛澳卒枪开会省奏忌瓢枢氓宪民川芽苞差吐跃既考杆憾渗贴闷玄您敲烘导蝴虽毡助母迅怀牙抗覆觉掩掸魂卧弊花备斡凰珠蓝浦炭垂住柠章揣乞映伏饭执蹲骑骤官泌仓军氏匹簿多点稚氰鞘奔俏涤摊辩屠已剥悯赔怜忿残榴矣吠哎畦罪熏掀熬穷雄他锗刽绑殆凛仇幌聘碱辗摆财樱刁捕祟鄂茄弓扁胜敛柄匆卫凝怂湛穷坐偷映展誓鹰安细驱遏均在靛弯典趾郧郸帐陡龟诲摄伎甘饮躲楼箔
4、朝露贷鳞促蹭划痒首什灼狼拟瑶创炸组浸牺士肌卿何靛蹈濒框多围倘复习题1计算机操作系统的功能是_D_。A. 把源程序代码转换为目标代码B. 实现计算机用户之间的相互交流C. 完成计算机硬件与软件之间的转换D. 控制、管理计算机系统的资源和程序的执行2_A_不是分时系统的特点。A多个用户是经过网络连接,同时使用计算机系统B各用户可同时请求系统服务C各用户的请求彼此独立,互不干扰D用户以会话方式控制自己的程序运行3分时操作系统的主要目的是_A_。A计算机系统的交互性B计算机系统的实时性C计算机系统的可靠性D提高软件的运行速度 4以下描述与操作系统无关的是 C 。A. 方便用户的程序集合B. 控制和管理
5、计算机系统的硬件和软件资源C. 计算机系统的硬件和软件资源的集合D. 合理地组织计算机工作流程5分时操作系统的特点 _A_。A. 交互性、同时性、独立性、及时性B. 可靠性、交互性、独立性、及时性C. 可靠性、实时性、独立性、及时性D. 交互性、同时性、独立性、实时性6下列各项中, C 不是操作系统的主要特征。A. 并发性B. 共享性C.确定性 D. 虚拟性7在下列操作系统中,对响应时间要求最高的是 C 。 A批处理系统B. 分时系统 C. 实时系统 D. 网络操作系统8多道批处理系统的主要缺点是 C 。A. CPU利用率低B.不能并发执行C. 缺少交互性 D.以上都不是9操作系统是对 C 进
6、行管理的软件。A系统软件 B系统硬件 C计算机资源 D计算机程序10设计实时操作系统时,首先要考虑系统的 A 。A实时性和可靠性B实时性和灵活性 C灵活性和可靠性D灵活性和可移植性11. UNIX操作系统是一种多用户的、人机交互的 C 。A. 多道批处理系统 B. 实时系统C. 分时系统D. 分布式系统12操作系统在计算机系统中处于 B 之间的位置。A计算机硬件和软件B计算机硬件和用户C处理机和用户D外部设备和处理机13操作系统提供给用户程序的接口是 B 。A命令解释程序 B系统调用CP、V操作 D对话框14在单一处理机上执行程序,多道程序的执行是在_B_进行的。A.同一时刻 B. 同一时间间
7、隔内C.某一固定时刻 D. 某一固定时间间隔内15引入多道程序技术后,处理机的利用率_C_。A.降低了 B. 有所改善C. 大大提高 D. 没有变化,只是程序的执行方便了16操作系统有多种类型:允许用户以交互方式使用计算机的操作系统,称为_;允许用户将若干个作业提交给计算机系统集中处理的操作系统,称为_;使计算机系统能及时处理由过程控制反馈的数据并作出响应的操作系统,称为_。17从资源管理和用户接口的观点来看,操作系统的五大基本功能是:处理机管理、存储器管理、设备管理、文件管理和_.18所谓多道程序的_是指在宏观上是同时进行的,但在微观上仍是顺序执行的过程。19操作系统提供给编程人员的唯一接口
8、是_.20操作系统的基本类型是_、_、_.21所谓_,是一块能控制一台或多台外围设备与CPU并行工作的硬件。22. 操作系统的基本特征_、_、_、_。23. 操作系统是系统软件的一种,在进行系统安装时可以先安装其他软件,然后再装操作系统。( )24. 实时系统在响应时间、可靠性及交互作用能力等方面一般都比分时系统要求高。( )第二章练习题操作系统中进程的状态有许多种,但最基本的代表其生命周期的三种状态为(就绪 )、(阻塞 )、(执行 )。这三种状态间的转换称为(进程控制 )。一作业进入内存后,则所属该作业的进程初始时处于(C) A、运行状态 B、等待状态 C、就绪状态 D、收容状态进程所请求的
9、一次打印输出结束后,将使进程(D) A、运行状态变为就绪状态 B、运行状态变为等待状态C、就绪状态变为运行状态 D、等待状态变为就绪状态若当前进程因时间片用完而让出处理机时,该进程应转变为( A ) 状态。 A.就绪 B.等待 C.运行 D.完成进程有多个状态,他们之间可以相互转化,但不会发生以下哪个转化( D ) A、就绪态到运行态 B、运行态到阻塞态 C、阻塞态到就绪态 D、就绪态到阻塞态当一个进程完成了特定的任务后,系统收回这个进程所占的_资源_和取消该进程的_PCB_就撤消了该进程。某系统有如下的状态变化图:试将图中发生的状态变化的具体原因填入下表的相应栏内。变化变化原因例1:一个阅览
10、室最多可以容纳100人,读者进入和离开阅览室时都必须在阅览室门口的一个登记表上进行登记,而且每次只允许一个人进行登记操作,请用记录型信号量机制实现上述问题的同步。课堂练习操作系统的定义 操作系统是一组控制和管理计算机硬件和软件资源,合理的对各类作业进行调度,以及方便用户使用的程序集合。操作系统的基本职能是( A )。A、控制和管理系统内各种资源,有效地组织多道程序的运行B、提供用户界面,方便用户使用C、提供方便的可视化编辑程序D、提供功能强大的网络管理工具操作系统的基本特征_并发_、_共享_、_虚拟_、_异步_。操作系统中引入“进程”概念的主要目的( B )。A、改善用户编程环境B、描述程序动
11、态执行过程的性质C、使程序和计算过程一一对应D、提高程序的运行速度某进程由于需要从磁盘上读入数据而处于阻塞状态。当系统完成了所需的读盘操作后,此时该进程的状态将( D )。A、从就绪变为运行B、从运行变为就绪C、从运行变为阻塞D、从阻塞变为就绪判断对错并改正进程控制块(PCB)是专为用户进程设置的私有数据结构,每个进程仅有一个PCB。( )简单地说,进程是程序的执行过程。因而,进程和程序是一一对应的。( )1、进程间相互合作的关系是_同步_关系,而对资源争用的关系是_互斥_关系。若干进程使用同一临界资源时必须_互斥_执行。2、对信号量S每执行一次P操作,则信号量S的值就_减1_。当S的值_小于
12、0_时,执行P操作的进程的状态就置为阻塞态,把相应的PCB连入该信号量队列的_末尾_,并且该进程_放弃_处理机。3.解答题: 进程和程序的主要区别是什么?(1)程序是一个静态的概念,而进程是一个动态的概念。(2)程序可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是永久的,进程是暂时的。(3)进程具有并发性,而程序具有顺序性。(4)进程是资源分配和调度的基本单位(5)一个程序对应多个进程,一个进程为多个程序服务 4.有两个用户进程A和B,在运行过程中都要使用系统中的一台打印机输出计算结果。(1)说明A、B进程之间存在什么样的制约关系?(2)为保证这两个进程都能正确打印出各自的结果,请
13、用信号量和P、V操作写出各自的有关申请、使用打印机的代码。要求给出信号量的含义和初值。(2)mutex:用于互斥的信号量,初值为1.各进程代码如下:进程A 进程B P(mutex) P(mutex)使用打印机; 使用打印机;V(mutex)V(mutex) 5.设自行车生产车间有两个货架,货架A可以存放8个车架,货架B可以存放20个车轮;又设有4个工人,他们的活动是重复劳动,分别为:工人1 加工一个车架放入货架A中;工人2、3分别加工车轮放入货架B中(每人每次放入1个车轮);工人4从货架A中取一个车架,再从货架B中取两个车轮,组装成一辆自行车。试用PV操作实现四个工人的合作。【分析】设置资源信
14、号量和互斥信号量如下:信号量Aempty表示货架A的空位数,其初值为8;信号量Afull表示货架A上存放的车架数,其初值为0;信号量Bempty表示货架B的空位数,其初值为20;信号量Bfull表示货架B上存放的车轮数,其初值为0;信号量mutex用于互斥(初值为1)。 BEGINsemaphore Aempty, Afull, Bempty, Bfull, mutex;Aempty := 8; Bempty := 20; Afull := 0; Bfull := 0; mutex :=1;PARBEGINWorker1: begin repeat 生产1个车架; P (Aempty) ;/看
15、看货架A上是否有空位置 车架放到货架A; V (Afull) ;/货架A上的车架数增1(通知工人4) until falseendWorker2、3:begin repeat 生产1个车轮; P (Bempty) ; /看看货架B上是否有空位置 P (mutex) ; 车轮放到货架B; V (Bfull) ; /货架B上的车轮数增1(通知工人4) V (mutex) ; until falseendWorker4:begin repeat P (Afull) ; /在货架A上取1个车架 P (Bfull) ; P (Bfull) ; /在货架B上取2个车轮 取1个车架;取2个车轮; V (Ae
16、mpty) ; /货架A上的空位数增1(通知工人1) V (Bempty) ; V (Bempty) ; /货架B上的空位数增2(通知工人2、3) 组装一辆自行车; until falseendPARENDEND第三章例3-1:有如下三道作业。系统为它们服务的顺序是:1、2、3.求平均周转时间和平均带权周转时间。作业提交时间/时运行时间/h110.002210.101310.250.25作业提交时间运行时间开始时间完成时间周转时间带权周转时间110.0021012.0022/2210.1011213.00292.9/1310.250.251313.2533/0.25例3-2:假定在单CPU条件
17、下有下列要执行的作业。作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间单位)。(1)用一个执行时间图描述在采用抢占方式优先算法时执行这些作业的情况。(2)对于上述算法,各作业的周转时间、平均周转时间、带权周转时间及平均带权周转时间分别是多少?作业运行时间/h优先级1102243335【例3-3】 设在单道系统中用FCFS算法调度如下作业,请完成下表。FCFS算法比较有利于长作业(进程),不利于短作业(进程)。有利于CPU繁忙型作业(进程),不利于I/O繁忙型作业(进程)因非抢占式 【例3-4】 设在单道系统中用SJF算法调度如下作业,请完成下表。进程名 ABCDE平
18、 均 到达时间 9:00 9:10 9:30 10:00 10:15 服务时间 30分钟 1小时 10分钟 50分钟 20分钟 完成时间 9:3010:409:4011:5011:00周转时间30min90min10min110min45min61min带权周转时间 11.512.22.251.99例3-5:有一个内存中只能装入2道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基础的抢占式调度算法。有如下表所示的作业序列,表中所列的优先数是指进程调度的优先数,且优先数越小优先级越高。(1)列出所有作业进入内存的时刻及结束的时刻。(2)计算作业的平均周转时间。作业名到
19、达时间估计运行时间优先数A10:0040分5B10:2030分3C10:3050分4D10:5020分6作业名到达时间估计运行时间优先数进入内存时间结束时间A10:0040分5B10:2030分3C10:3050分4D10:5020分6A、B、C、D的周转时间分别为:70分、30分、90分、90分,则平均周转时间为70分钟。练习题1下列各项中,不是进程调度时机的是 C 。现运行的进程正常结束或异常结束B. 现运行的进程从运行态进入就绪态C. 现运行的进程从运行态进入等待态D. 现运行的进程从等待态进入就绪态2采用时间片轮转调度算法主要是为了 A 。A.多个终端都能得到系统的及时响应B.先来先服
20、务C.优先权高的进程及时得到调度D.需要CPU时间最短的进程先做3在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,取决于_C_ 。A.进程相应的程序段的长度B.进程总共需要运行时间多少C.进程自身和进程调度策略D.进程完成什么功能4一种既利于短小作业又兼顾到长作业的作业调度算法是_C_。A.先来先服务 B. 轮转C.最高响应比 D.均衡调度5下列因素中, C 不一定是引起进程调度的因素。A一个进程运行完毕B运行进程被阻塞C一个高优先级进程被创建D实时调度中,一个紧迫的任务到来6若进程P一旦被唤醒就能投入运行,则系统可能是 D 。A分时系统,进程P的优先级最高B抢占式调度方式,
21、就绪队列上的所有进程的优先级皆比P低C就绪队列为空队列D抢占式调度方式,P的优先级高于当前运行的进程7在分时系统中,若当前运行的进程连续获得了两个时间片,原因可能是 B 。A该进程的优先级最高B就绪队列为空C该进程最早进入就绪队列D该进程是一个短进程8下列进程调度算法中,_A_可能会出现进程长期得不到调度的情况。A静态优先权法B抢占式调度中采用动态优先权算法C分时处理中的时间片轮转调度算法D非抢占式调度中采用FIFO算法9在采用动态优先权的调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和_A_调度算法相同。A先来先服务B短作业优先C时间片轮转D长作业优先10.设在内
22、存中有P1,P2两道程序,并按照P1,P2的次序运行,其内部计算和I/O操作的时间分别如下:P1:先计算60ms,然后I/O80ms,最后再计算20msP2:先计算120ms,然后I/O40ms,最后再计算40ms调度程序的执行时间不计,在多道批处理系统中,完成这两道程序比单道批处理系统节约的时间是_A_.A. 100msB. 120msC.160msD. 200ms银行家算法之例 设系统中有5个进程P0,P1,P2,P3,P4和3类资源A,B,C,各类资源总数分别为10、5、7,在T0时刻的资源分配情况如下表所示: MaxA B CAllocation A B CNeed A B CAvai
23、lable A B CP0P1P2P3P47 5 33 2 2 9 0 2 2 2 2 4 3 3 0 1 0 2 0 0 3 0 2 2 1 1 0 0 2 7 4 3 1 2 2 6 0 0 0 1 1 4 3 1 3 3 2 (1)T0时刻系统是否安全,为什么?(2)P1发出请求向量Request1(1,0,2),分析系统是否可同意请求。(3)P4发出请求向量Request4(3,3,0),分析系统是否可同意请求。 (4)P0发出请求向量Request0(0,2,0),分析系统是否可同意请求。 (5)在(4)中,若P0发出请求向量Request0(0,1,0),系统是否可同意请求。 回答
24、问题T0时刻系统是否安全,为什么?MaxA B CAllocation A B CNeed A B CAvailable A B CP0P1P2P3P47 5 33 2 2 9 0 2 2 2 2 4 3 3 0 1 0 2 0 0 3 0 2 2 1 1 0 0 2 7 4 3 1 2 2 6 0 0 0 1 1 4 3 1 3 3 2 WorkA B CWork+Allocation A B CFinishP1P3P4P0P23 3 25 3 27 4 37 4 57 5 55 3 27 4 37 4 57 5 510 5 7truetruetruetruetrue(2)P1发出请求向量R
25、equest1(1,0,2),按银行家算法,系统是否同意请求?Request1(1,0,2)Need1(1,2,2)Request1(1,0,2)Available(3,3,2)系统先假定可为P1分配资源,并修改Available, Allocation1和Need1向量,由此形成资源变化情况如图MaxA B CAllocation A B CNeed A B CAvailable A B CP0P1P2P3P47 5 33 2 2 9 0 2 2 2 2 4 3 3 0 1 0 2 0 0 (3 0 2) 3 0 2 2 1 1 0 0 2 7 4 3 1 2 2 (0 2 0)6 0 0
26、0 1 1 4 3 1 3 3 2 (2 3 0) 再利用安全性算法检查此时系统是否安全。即存在安全序列P1,P3,P4,P0,P2,故系统是安全的,可以立即将P1所申请的资源分配给它。实际上,(1)中的安全序列中的第一个进程就是P1,当然对P1的请求可以满足。(3)P4发出请求向量Request4(3,3,0),按银行家算法,分析系统是否可同意请求。Request4(3,3,0)Need4(4,3,1)Request4(3,3,0)Available(2,3,0),让P4等待。(4)P0发出请求向量Request0(0,2,0),按银行家算法,分析系统是否可同意请求。Request0(0,2
27、,0)Need0(7,4,3)Request0(0,2,0)Available(2,3,0)系统暂时先假定可为P0分配资源,并修改有关数据MaxA B CAllocation A B CNeed A B CAvailable A B CP0P1P2P3P45 33 2 2 9 0 2 2 2 2 4 3 3 0 1 0 (0 3 0)3 0 2 3 0 2 2 1 1 0 0 2 7 4 3 (7 2 3)0 2 0 6 0 0 0 1 1 4 3 1 2 3 0 (2 1 0) 进行安全性检查MaxA B CAllocation A B CNeed A B CAvailable A B CP
28、0P1P2P3P47 5 33 2 2 9 0 2 2 2 2 4 3 3 0 3 03 0 2 3 0 2 2 1 1 0 0 2 7 2 30 2 0 6 0 0 0 1 1 4 3 1 2 1 0 可用资源Available(2,1,0)已不能满足任何进程的需要,系统进入不安全状态,故系统不能同意P0的请求,让其阻塞。练习1:(1)3个进程共享4个同种类型的资源,每个进程最大需要2个资源,请问该系统是否会因为竞争该资源而死锁?解:该系统不会因为竞争该资源而死锁。因为必有1个进程可获得2个资源,顺利完成其任务,其后可释放出占用的2个资源给其他进程使用,使他们顺利完成。练习1:(2)n个进程
29、共享m个同类资源,若每个进程都需要用该类资源,而且各进程对该类资源的最大需求量之和小于m+n,说明该系统不会因竞争该类资源而阻塞。解:用Maxi、Needi和Allocationi分别表示第i个进程对该类资源的最大需求量,需求量以及已分配的量,根据题意它们满足下述条件:若系统已因竞争该资源而进入死锁状态,则意味着已有一个以上的进程因申请不到该类资源而无限阻塞,而m个资源肯定已全部分配出去,即:因此:即:这样,至少必须存在1个进程,其Needi0,这与题意不符,所以该系统不会因竞争该类资源而进入死锁状态。(3)在(2)中,如果没有“每个进程都需要用该类资源”的限制,情况又如何?解:此时系统可能会
30、发生死锁。假设n=4,m=3,P1的Max为0,而其余3个进程的Max都为2,则仍然满足最大需求量之和小于m+n的要求,当除了P1以外的其余3个进程各得到1个资源时,这3个进程就可能进入死锁状态。练习2:在银行家算法中,若出现下面的资源分配情况:Allocation A B C DNeed A B C DAvailable A B C DP0P1P2P3P40 0 3 21 0 0 0 1 3 5 40 0 3 2 0 0 1 40 0 1 21 6 5 0 2 3 5 60 6 5 2 0 6 5 61 6 2 2试问:(1)该状态是否安全?(2)当进程P2提出请求Request(1,2,2
31、,2)后,系统能否将资源分配给它?(3)如果系统立即满足P2的上述请求,则系统是否立即进入死锁状态?解:(1)利用安全性检查算法对上面的状态进行分析,可找到一个安全序列P0, P1,P3,P4,P2,故系统是安全的。(2)P2发出请求向量后,系统按银行家算法进行检查,在进行试分配后,进行安全性检查时发现:此时对于所有进程,Available不能满足任何进程的请求,故系统不进行资源分配。(3)系统立即满足进程P2的请求后,并没有马上进入死锁状态。因为:此时其他进程并没有申请新的资源,并因得不到资源而进入阻塞状态;只有当上述的其他进程提出新的请求,并导致所有没有执行完的多个进程因得不到资源而阻塞并
32、形成循环等待链时,系统才进入死锁状态。第四章 例:在某系统中,采用固定分区分配管理方式,内存分区(单位字节)情况如图所示,现有大小为1K、9K、33K、121K的多个作业要求进入内存,试画出它们进入内存后的空间分配情况,并说明主存浪费多大?10k20k28k60k180k511k234(1) 内存分区图os区号大小起址状态18k20k未分配232k28k未分配3120k60k未分配4331k180k未分配解:根据分区说明表,给4个作业分配分区,同时修改分区说明表,其内存分配和分区说明表如下所示:分区说明表: 内存分配图(见第四章PPT第27页)区号大小起址状态18k20k已分配232k28k已
33、分配3120k60k已分配4331k180k已分配(3)主存浪费空间=(8-1)+(32-9)+(120-33)+(331-121) =7+23+87+210=327(k)例题 在可变分区存储管理下,按地址排列的内存空闲区为:100KB、500KB、200KB、300KB和600KB。现有若干用户程序,其所需内存依次分别为212KB、417KB、112KB和426KB,分别用首次适应算法、最佳适应算法、最坏适应算法,将它们装入到内存的哪些空闲分区?哪个算法能最有效利用内存?解:采用首次适应算法 程序 空闲区 新空闲区212KB 500KB 288KB417KB600KB 183KB112KB2
34、88KB 176KB426KB,无法装入内存区号大小状态1100k未分配2500k未分配3200k未分配4300k未分配5600K未分配解:采用最佳适应算法区号大小状态1100k未分配2200k未分配3300k未分配4500k未分配5600K未分配程序 空闲区 新空闲区212KB300KB88KB417KB500KB83KB112KB200KB88KB426KB600KB174KB类似的分析可知,最坏适应算法也不能将426KB的程序装入内存。 例题: (华中科技大学2001)某操作系统采用可变分区分配存储管理方法,用户区大小为512K且初始值为0,用空闲分区表管理空闲分区。若分配时采用分配空闲
35、区低地址部分的方案,且初始时用户区的512K空间空闲,对于下列申请序列: 申请300K,申请100K,释放300K,申请150K,申请30K,申请40K,申请60K,释放30K 回答下列问题: (1)请分别画出采用首次适应算法、最佳适应算法进行内存分配和回收后的内存使用状态。 (2)如果再申请100K,针对上述两种算法会有什么结果?例题解答如下:见ppt例1: 某型微机的页面大小是1KB(1024B),现该微机正在执行的进程中有一条指令: load a,2500 请问:在内存的什么位置可以找到该逻辑地址所对应的数据?假定块号0的初始物理地址为0。逻辑地址的分解 若逻辑地址为A,页面大小为L,则
36、页号P和页内地址d可按下式求得: P=int(A/L)d=A mod L举例说明 页面大小为4KB,逻辑地址为7800及5F86H,分别求它们的页号和页内偏移。计算过程如下:load a,2500A、页号PINT(逻辑地址/页面大小)INT(2500/1024)=2B、页内地址d =2500 MOD 1024=452C、查页表 假定页号2对应的物理块是块5D、物理地址为: 块号页大小页内地址51024452=5572即:将5572这个物理地址里面的数据取出来放在a寄存器里注意:本题的前提条件是块号0的初始物理地址为0,如果不是0,该怎么办?练习题1.设有一页式存储管理系统,向用户提供的逻辑地址
37、空间最大为16页,每页2048B,内存总共有8个存储块。试问逻辑地址至少应为多少位?内存空间有多大?2.在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096B,现有一逻辑地址为2FA6H,且第0、1、2页依次存放在物理块5、10、11中,问相应的物理地址为多少?硬件能自动分离出页号和页内地址,但我们只能通过计算才能得到。计算时要注意:(1)逻辑地址以十六进制、八进制、二进制的形式给出将逻辑地址转换成二进制的数;按页的大小分离出页号和页内地址(低位部分是页内地址,高位部分是页号);根据题意产生页表;将页内地址直接复制到物理地址的低位部分;以页号查页表,得到对应页装入内存的块号,并将块
38、号转换成二进制数填入地址的高位部分,从而形成内存物理地址。05110211逻辑地址2FA6H=0010 1111 1010 1110B 4096B=212 页内地址占低12位,高位为页号页号P2 页内地址d1111 1010 1110查页表知第2页装入内存第11块中,11=1011B物理地址1011 1111 1010 1110BFA6H(2)逻辑地址以十进制数给出按下列公式计算出页号和页内地址 页号逻辑地址页大小 页内地址逻辑地址 mod 页大小根据题意产生页表;以页号查页表,得到对应页装入内存的块号内存地址块号页大小页内地址 例2:有一系统采用页式存储管理,有一作业大小是8KB,页大小为2KB,依次装入内存的第7、9、10、5块,试将虚地址7145转换成内存地址。逻辑地址7145
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100