ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:23.95KB ,
资源ID:10697143      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10697143.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(操作系统概论大题集中营考点绝对无毒12页文档资料.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

操作系统概论大题集中营考点绝对无毒12页文档资料.docx

1、操作系统概论大题集中营考点绝对无毒12页文档资料第二部分(操作系统大题集中营考点)“师”之概念,大体是从先秦时期的“师长、师傅、先生”而来。其中“师傅”更早则意指春秋时国君的老师。说文解字中有注曰:“师教人以道者之称也”。“师”之含义,现在泛指从事教育工作或是传授知识技术也或是某方面有特长值得学习者。“老师”的原意并非由“老”而形容“师”。“老”在旧语义中也是一种尊称,隐喻年长且学识渊博者。“老”“师”连用最初见于史记,有“荀卿最为老师”之说法。慢慢“老师”之说也不再有年龄的限制,老少皆可适用。只是司马迁笔下的“老师”当然不是今日意义上的“教师”,其只是“老”和“师”的复合构词,所表达的含义多

2、指对知识渊博者的一种尊称,虽能从其身上学以“道”,但其不一定是知识的传播者。今天看来,“教师”的必要条件不光是拥有知识,更重于传播知识。 第二章处理器管理1. 要练说,得练看。看与说是统一的,看不准就难以说得好。练看,就是训练幼儿的观察能力,扩大幼儿的认知范围,让幼儿在观察事物、观察生活、观察自然的活动中,积累词汇、理解词义、发展语言。在运用观察法组织活动时,我着眼观察于观察对象的选择,着力于观察过程的指导,着重于幼儿观察能力和语言表达能力的提高。 处理器低级调度算法详细介绍教师范读的是阅读教学中不可缺少的部分,我常采用范读,让幼儿学习、模仿。如领读,我读一句,让幼儿读一句,边读边记;第二通读

3、,我大声读,我大声读,幼儿小声读,边学边仿;第三赏读,我借用录好配朗读磁带,一边放录音,一边幼儿反复倾听,在反复倾听中体验、品味。 (1)先来先服务算法FCFS调用后背队列中最先进入队列的一个或多个作业。属于非剥夺式调度特点:利于长作业,不利于短作业。简单易实现。效率低。只顾等待时间,不过执行时间。(2)短作业/短进程优先调度算法SJF调用运行时间短的作业,属于非剥夺式调度。特点:降低平均等待时间,提过系统吞吐量。对长作业不利。(3)最高优先权调度算法调度优先权高的作业,分为:非抢占式:被调进程一直运行,直到结束或等待事件发生才主动放弃CPU。抢占式:运行中的进程将CPU的使用权让给优先权高的

4、(4)最高响应比算法系统响应时间作业等待时间+作业要求时间R= =作业要求运行时间作业要求时间属于非剥夺式调度。(5)时间片轮转调度算法进程在规定的时间内没有结束,系统将产生一个中断。属于剥夺式算法(6)最短剩余时间优先调度算法短进程优先调度算法改造得到的剥夺式算法。2. 实时调度任务的空闲时间=任务的截止时间-任务剩余执行时间-当前时间8、在道数不受限制的多道程序系统中,作业进入系统的后备队列时立即进行作业调度。现有4个作业进入系统,有关信息列举如下,作业调度和进程调度均采用高优先级算法(规定数值越大则优先级越高)。作业名进入后备队列的时间执行时间/min优先数Job1 8:00 60 1J

5、ob2 8:30 50 2Job3 8:40 30 4Job4 8:50 10 3试填充下表。(非抢占式,在同一时刻的作业,按优先数来,只要在执行就不能抢占)作业名|进入后备队列|执行时间|开始执行|结束执行|周转时间|带权周转|的时间| /min |时间|时间| /min |时间Job1| 8:00 | 60 | 8:00 | 9:00 | 60 | 1Job2| 8:30 | 50 | 9:40 | 10:30 | 120 | 2.4Job3| 8:40 | 30 | 9:00 | 9:30 | 50 | 1.67Job4| 8:50 | 10 | 9:30 | 9:40 | 50 | 5

6、平均周转时间T=(60+120+50+50)/4=70带权平均周转时间W=(1+2.4+1.67+5)/4=2.52非抢占式详细分析:J1在8:00来了,就一直执行到9点,即使J2,J3,J4来了就算你们的优先数再多在高也不能抢占,还不是要看我J1执行完了才能执行哈。待J1执行完了之后,看你们的优先数多就把CPU让给谁,结果花落给J3,让J2和J4苦等了几十分钟,就这样推下去,J3完成了就是J4了。最后才把CPU给J2。终于大团圆结局!别忘了计算啊。注意:高级调度就是作业调度,低级调度就是进程调度。试填充下表。(抢占式,在同一时刻的多个作业,按优先数来,谁多谁就可以抢占)作业名|进入后备队列|

7、执行时间|开始执行|结束执行|周转时间|带权周转|的时间| /min |时间|时间| /min |时间Job1| 8:00 | 60 | 8:00 | 10:30 | 150 | 2.5Job2| 8:30 | 50 | 8:30 | 10:00 | 90 | 1.8Job3| 8:40 | 30 | 8:40 | 9:10 | 30 | 1Job4| 8:50 | 10 | 9:10 | 9:20 | 30 | 3平均周转时间T=(150+90+30+30)/4=75带权平均周转时间W=(2.5+1.8+1+3)/4=2.07517、如果在限制为两道的多道程序系统中,有4个作业进入系统,其进

8、入系统时间、估计运行时间列于下表中,系统采用SJF作业调度算法,采用SRTF(最短剩余时间优先算法)进程调度算法,请填充下表。(分析指出:最短剩余时间优先是指在多个进程同一时刻所需要的剩余时间最多,比如在10:05有J1和J2转化为进程,而J2的剩余时间最短先执行,以此类推。)作业|进入系统时间|估计运行时间/min |开始运行时间|结束运行时间|周转时间/minJob1| 10:00 | 30 | 10:00 | 11:05 | 65Job2| 10:05 | 20 | 10:05 | 10:25 | 20Job3| 10:10 | 5 | 10:25 | 10:30 | 20Job4| 1

9、0:20 | 10 | 10:30 | 10:40 | 20平均周转时间T=(65+20+20+20)/4=31.25带权周转时间W=(65/30+20/20+20/5+20/10)/4=2.2925第三章同步、通信与死锁经典问题源码分析:1、生产者与消费者问题:一个生产者与一个消费者共享一个缓冲池问题:源码:1. int B;2. semaphore empty;/可以使用的空缓冲区数3. semaphore full;/缓冲区内可以使用的产品数4. empty=1;/缓冲区内允许放入一件产品5. full=0;/缓冲区内没有产品6. cobegin7. process producer()

10、 process consumer()8. while(true) while(true) 9. produce( ); P(full);10. P(empty); take( ) from B;11. append( ) to B; V(empty);12. V(full); consume( );多个生产者与多个消费者共享多个缓冲池问题:源码:1. item Bk;2. semaphore empty; empty=k;/可以使用的空缓冲区数3. semaphore full; full=0;/缓冲区内可以使用的产品数4. semaphore mutex; mutex=1;/互斥信号量5.

11、 int in=0;/放入缓冲区指针6. int out=0;/取出缓冲区指针7. cobegin8. process producer_i ( ) process consumer_j ( )while(true) while(true)9. produce( );P(full);10. P(empty);P(mutex);P(mutex); take( ) fromBout;11. append to Bin;out=(out+1)%k;12. in=(in+1)%k;V(mutex);13. V(mutex);V(empty);14. V(full);consume( );15. coe

12、nd2、读者与写者问题:源码:1. intreadcount=0;/读进程计数2. semaphore writeblock,mutex;3. writeblock=1;mutex=1;4. cobegin5. process reader_i( )6. P(mutex);7. readcount+;8. if(readcount=1)9. P(writeblock);10. V(mutex);11. 读文件;12. P(mutex);process writer_j( )P(writeblock);写文件;V(writeblock);13. readcount-;14. if(readcou

13、nt=0)15. V(writeblock);16. V(mutex);17. 一个经典同步问题:吸烟者问题(patil, 1971)。3名吸烟者在一个房间内,还有一个香烟供应者。为了制造并抽掉香烟,每个吸烟者需要三样东西:烟草、纸和火柴,供应者有丰富货物提供。三个吸烟者中,第一个有自己的烟草,第二个有自己的纸和第三个有自己的火柴。供应者随机地将两样东西放在桌子上,允许一个吸烟者进行对健康不利的吸烟。当吸烟者完成吸烟后唤醒供应者,供应者再把两样东西放在桌子上,唤醒另一个吸烟者。试采用信号量和PV操作来编写他们同步工作的程序。解:分析:同时有效的只有一个生产者和一个消费者,所以这是一个生产者者与

14、一个消费者共享一个缓冲池问题。Semaphoreempty=1,full1=full2=full3=0;/full1是拥有烟草的,full2是拥有纸的,full3是拥有火柴的process producer()P(empty);if(放paper& match)V(full1);/唤醒elseif(放paper&烟草)V(full2);elseV(full3);process烟草()P(full1);取paper &match;V(empty);卷烟;吸烟;process火柴()P(full1);取paper &烟草;V(empty);卷烟;吸烟;processpaper()P(full1);

15、取烟草&match;V(empty);卷烟;吸烟;20.有三组进程Pi、Qj、Rk,其中Pi、Qj构成一对生产者和消费者,共享一个由M1个缓区构成的循环缓冲池buf1。Qj、Rk凡构成另一对生产者和消费者,共享一个由M2个缓冲区构成的循环缓冲池buf2。如果Pi每次生产一个产品投入buf1,Qj每次从中取两个产品组装成一个后并投入buf2,Rk每次从中取三个产品包装出厂.试用信号量和P、V操作写出它们同步工作的程序。解:分析:这是多个生产者与多个消费者共享多个缓冲区问题。(此题考试概率为0。)int c1=c2=0;Semaphore empty1=k,empty2=m,full1=full2

16、=0,mutex1=mutex2=1;process Pi()P(empty1);P(mutex1);放产品;c1+;if(c1=2)c1=0;V(full1);V(mutex1);process Qj()P(full1);P(mutex1);取产品两个;V(mutex1);V(empty1);V(empty1);P(empty2);P(mutex2);放产品;c2+;if(c2=3)c2=0;V(full2);V(mutex2);Process Rk()P(full2);P(mutex1);取产品3个;V(mutex2);V(empty2);V(empty2);V(empty2);银行家算法

17、是解决死锁的关键途径。28.设当前的系统状态如下,此时Available(1,1,2)。进程Claim AllocationR1R2R3 R1R2R3P1 322 100P2 613 511P3 314 211P4 422 002(1)计算各个进程还需要的资源数Cki-Aki。(2)系统是否处于安全状态,为什么?(3)进程P2发出请求向量request2(0,0,1),系统能把资源分配给它吗?(4)若在进程P2申请资源后,P1发出请求向量request1(1,0,1),系统能把资源分配给它吗?(5)若在进程P1申请资源后,P3发出请求向量request3(0,0,1),系统能把资源分配给它吗?

18、解:(1)Need=Cki-Aki,如图所示:进程Claim Allocation Need AvailablerR1R2R3 R1R2R3 R1R2R3 1 1 2P1 322100 222P2 613511 102P3 314211 103P4 422019 420解:(2)寻找一个安全序列如(P2P1P3P4),如图所示:进程Claim Allocation Need AvailablerR1R2R3 R1R2R3 R1R2R3 1 1 2P1 322100 222 623P2 613511 102 723P3 314211 103 934P4 422019 420 936分析:可分配的

19、是(1,1,2),符合条件的只有P2,从P2开始,算出下一个Available=(1,1,2)+(5,1,1)=(6,2,3)。这时,符合条件都可以,所以随便选取一个进程来计算Available。依次类推,找到一个安全序列(P2P1P3P4),所以系统是安全的。解:(3)寻找一个安全序列如(P2P1P3P4),因为request2(0,0,2)向量的各个值都小于(1,1,2),由(2)知可以找到一个安全序列(P2P1P3P4),系统是安全的,可以分配资源给它。(4)同理可证,系统不能分配资源给它,因为找不到一个安全序列。(5)同理可证,系统不能分配资源给它,因为找不到一个安全序列。36.独木桥

20、问题1:东西向汽车驶过独木桥,为了保证交通安全,只要桥上无车,则允许一方的汽车过桥,待其全部过完后,才允许另一方的汽车过桥。请用信号量和PV操作写出汽车过独木桥问题的同步算法。解:分析:这是读者与写者的两类读者问题。Semaphore lmutex=rmutex=1,bridge=0;int lcar=rcar=0;process lcar()P(lmutex);lcar+;P(bridge);V(lmutex);if (lcar=1)过桥;P(lmutex);lcar-;if(lcar=0) V(bridge);V(lmutex);process rcar()P(rmutex);rcar+;

21、P(bridge);V(rmutex);if (rcar=1)过桥;P(rmutex);rcar-;if(rcar=0) V(bridge);V(rmutex);37.独木桥问题2:在独木桥问题1中,限制桥面上最多可以有k辆汽车通过.试采用信号量和PV操作写出汽车过独木桥问题的同步算法。解:分析指出:这是读者与写者的多个读者问题;Semaphorelmutex=rmutex=1,bridge=0,mutex=k;int lcar=rcar=0;process lcar()P(lmutex);lcar+;P(bridge);V(lmutex);if (lcar=1)P(mutex);过桥;V(m

22、utex);P(lmutex);lcar-;if(lcar=0) V(bridge);V(lmutex);process rcar()P(rmutex);rcar+;P(bridge);V(rmutex);if (rcar=1)P(mutex);过桥;V(mutex);P(rmutex);rcar-;if(rcar=0) V(bridge);V(rmutex);44.桌上有一只盘子,每次只能放入一只水果。爸爸专向盘子里放苹果(Apple),妈妈专向盘子放橘子,一个儿子专等吃盘子里的橘子,一个女儿专等吃盘子里的苹果。写出爸爸妈妈儿子女儿正确同步互斥的算法。解:分析:同时有效的是一个生产者和一个消

23、费者,所以这是一个生产者与一个消费者共享一个缓冲池问题。爸爸与妈妈是互斥关系,儿子与妈妈是同步关系,女儿与爸爸是同步关系,儿子与女儿无关系。Semaphoreempty1=1,full1=full2=0;/full1代表女儿,full2代表儿子process Father()P(empty);放苹果;V(full1);/唤醒女儿process Mother()P(empty);放橘子;V(full2);/唤醒儿子process Daugther()P(full1);取苹果;V(empty);吃苹果;process Son()P(full2);取橘子;V(empty);吃橘子;45.桌上有一只盘

24、子,最多可以容纳两个水果,每次仅能放入或取出一个水果。爸爸专向盘子里放苹果(Apple),妈妈专向盘子放橘子,一个儿子专等吃盘子里的橘子,一个女儿专等吃盘子里的苹果。写出爸爸妈妈儿子女儿正确同步互斥的算法。解:分析:这是多个生产者与多个消费者共享多个缓冲池问题。Semaphore empty1=k,empty2=m,full1=full2=0,mutex1=mutex2=1;/full1代表女儿,full2代表儿子process Father()P(empty1);P(mutex1);放苹果;V(mutex1);V(full1);/唤醒女儿process Mother()P(empty2);P

25、(mutex2)放橘子;V(mutex2);V(full2);/唤醒儿子process Daugther()P(full1);P(empty1);取苹果;V(empty1);V(mutex1);吃苹果;process Son()P(full2);P(empty2);取橘子;V(empty2);V(mutex2);吃橘子;第四章存储管理页面置换算法详细介绍:1) 最佳页面替换算法OPT淘汰将来再也不访问或长时间不访问的页面。2) 先进先出页面替换算法FIFO选择驻留主存时间最长的页面进行置换。3) 最近最少用页面替换算法LRU淘汰最近未使用的页面。每个页面设置一个多位计数器,又叫最不常用页面替换

26、算法LFU。每当访问一页时,就使它对应的计数器加。4) 第二次机会页面替换算法SCR5) 时钟页面替换算法Clock当页面被访问时,计数器加1,淘汰时,从当前位置开始循环扫描队列,若页面的访问位位1,则将它重新置0,在检查下一个,若访问位为0,则它就是将被淘汰的那个页面6、某计算机有cache、内存、辅存来实现虚拟存储器。如果数据在cache中,访问它需要20ns;如果在内存但不在cache,需要60ns将其装入缓存,然后才能访问;如果不在内存而在辅存,需要12us将其读入内存,然后,用60ns再读入cache,然后才能访问。假设cache命中率为0.9,内存命中率为0.6,则数据平均访问时间

27、是多少(ns)。解:ta为平均访问时间,tc为缓存时间,tm为主存时间,th为辅存时间,h为命中率。命中:tc+tm;不命中:tc+2tm;ta=hctc+(1-hc)hm(tc+tm)+(1-hm)(2tc+2tm+th)代入数据计算得ta=506ns。解析:先判断是否越界,如没有就计算其物理地址,反之,中断。如在0,430中,因为430600,没有发生越界中断,所以物理地址为219+430=649.15、在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096字节,现有一逻辑地址为2F6AH,且第0、1、2页依次存在物理块10、12、14号中,问相应的物理地址为多少?解:因为逻辑地

28、址长度为16位,而页面大小为4096(12位)字节,所以,前面的4位表示页号。把2F6AH转换成二进制为:0010 1 1 11 0110 1010,可知页号为2。故放在14号物理块中,写成十六进制为:EF6AH。(页内地址=块内地址)。注意:若改变页面大小为8kb(13位)呢,页号就为3,其他的类似,最后的结果为18F6AH.若改变一逻辑地址为9000呢,请看图:物理地址=块号*块长+块内地址(块长=页长)So,PA=14*4096+808=58152.31.设程序大小为460个字,考虑如下访问序列:55,20,108,180,79,310,170,255,246,433,488,369(1

29、)设页面大小为100个字,试给出访问序列的页面走向。(2)假设程序可用主存为200个字,采用FIFO先进先出、最近不常使用算法LRU求命中率。解:(1)用访问序列除以100取整,页面走向为0,0,1,1,0,3,1,2,2,4 ,4,3.(2)m=2采用FIFO算法,一直往下挤,命中一次记一次。LRU算法,一直往下挤,命中一次记一次但要提在第一位:请看图m=2FIFO LRU0 0 1 1 0 3 1 2 2 4 4 30 0 1 1 0 3 1 2 2 4 4 30 0 1 1 1 3 3 2 2 4 430 0 1 1 0 3 1 2 2 4 4 30 0 0 1 1 3 3 2 240 0 1 0 3 1 1 2 2 4红色代表命中:命中率:6/12=50%红色代表命中:命中率:6/12=50%47题中的m=4,FIFO、LRU算法与上面类似。第五章设备管理算法回顾详细介绍:移臂调度策略算法(核心)注意磁头方向电梯调度算法(一级一级地向磁头方向扫描,不到最后一个,然后反向扫描);最短查找时间优先算法SSTF(先执行查找时间最短的那个磁盘请求);先来先服务算法FCFS(先来的先执行请求);扫描算法SCAN(类似电梯调度算法,但是要扫描最后一个);分步扫描算法1. 循

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1