操作系统1-3章习题讲解操作系统期中考试讲评_第1页
操作系统1-3章习题讲解操作系统期中考试讲评_第2页
操作系统1-3章习题讲解操作系统期中考试讲评_第3页
操作系统1-3章习题讲解操作系统期中考试讲评_第4页
操作系统1-3章习题讲解操作系统期中考试讲评_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第13章章 习题讲解习题讲解2010 年春年春操作系统操作系统 Operating Systemn 1. OS的主要目标是什么?的主要目标是什么? (P33)解答:解答:1)方便性:方便用户、程序员;)方便性:方便用户、程序员; 2)有效性:提高软硬件资源利用率;)有效性:提高软硬件资源利用率; 3)可扩充性:便于扩充功能和性能;)可扩充性:便于扩充功能和性能; 4)开放性:增加系统兼容性和互操作)开放性:增加系统兼容性和互操作性。性。Chap1 操作系统引论操作系统引论n 2. OS的作用可表现在哪几个方面?的作用可表现在哪几个方面? (P33)解答:解答:1)从一般用户的观点,可把)从一

2、般用户的观点,可把OS看作看作是用户与计算机硬件系统之间的是用户与计算机硬件系统之间的接口接口; 2)从资源管理角度看,可把)从资源管理角度看,可把OS视为视为计算机系统计算机系统资源的管理者资源的管理者; 3)OS作为系统软件覆盖在裸机之上作为系统软件覆盖在裸机之上后,便可获得一台功能显著增强的虚拟机后,便可获得一台功能显著增强的虚拟机器,因此,器,因此,OS还有还有扩充机器扩充机器的作用。的作用。Chap1 操作系统引论操作系统引论n 13. OS有那几大特征?最基本的特征是什有那几大特征?最基本的特征是什么?(么?(P33) 解答:基本特征是:并发、共享、虚拟、解答:基本特征是:并发、共

3、享、虚拟、异步。最基本的特征是异步。最基本的特征是:并发性和共享性并发性和共享性Chap1 操作系统引论操作系统引论n 18. 什么原因使什么原因使OS具有异步性?具有异步性? (P33)解答:解答:1)程序执行结果是不确定的,即程序)程序执行结果是不确定的,即程序运行结果是不可再现的。运行结果是不可再现的。 2)每个程序在何时执行,多个程序)每个程序在何时执行,多个程序间的执行次序以及完成每个程序的时间都间的执行次序以及完成每个程序的时间都是不确定的,即不可预知性。是不确定的,即不可预知性。Chap1 操作系统引论操作系统引论n 22. 基于微内核的基于微内核的OS中,应用了哪些新中,应用了

4、哪些新技术?技术? (P33)解答:客户解答:客户/服务器技术、面向对象技术。服务器技术、面向对象技术。Chap1 操作系统引论操作系统引论n补充补充1 1:什么是多道程序设计:什么是多道程序设计? ? 实现多道实现多道程序设计的计算机需要那些必不可少的硬程序设计的计算机需要那些必不可少的硬件支持件支持? ? 采用多道程序设计会带来什么好采用多道程序设计会带来什么好处处? ?解答:在计算机内存中同时存放几道相互独解答:在计算机内存中同时存放几道相互独立的程序,它们在管理程序的控制下相互立的程序,它们在管理程序的控制下相互穿插地运行,共享穿插地运行,共享CPU和外设等资源。和外设等资源。硬件支持

5、:硬件支持:中断技术中断技术优点:资源的利用率、系统吞吐量大。优点:资源的利用率、系统吞吐量大。Chap1 操作系统引论操作系统引论n补充补充2 2:操作系统是如何从单道批处理,:操作系统是如何从单道批处理,发展到多道批处理,再到分时系统的,随发展到多道批处理,再到分时系统的,随之出现了哪些技术。之出现了哪些技术。解答:解答:1)单道)单道多道批处理:提高资源利多道批处理:提高资源利用里,产生了多道程序设计技术、通道、用里,产生了多道程序设计技术、通道、中断、作业管理、处理机管理、存储管理、中断、作业管理、处理机管理、存储管理、文件系统。文件系统。 2)批处理)批处理分时系统:提高系统的分时系

6、统:提高系统的交互能力,产生了时钟技术。交互能力,产生了时钟技术。Chap1 操作系统引论操作系统引论n补充补充3 3:分时系统的出现让用户感受到了:分时系统的出现让用户感受到了什么好处?典型的分时系统是什么?什么好处?典型的分时系统是什么?解答:解答:1)同时性或多路性:同时性或多路性:多用户同时操作、使多用户同时操作、使用计算机用计算机 2 2)独占性:独占性:各终端用户感觉到自己独占了各终端用户感觉到自己独占了计算机;计算机; 3 3)及时性:及时性:用户请求在较短时间内相应;用户请求在较短时间内相应; 4 4)交互性:交互性:用户能计算机进行人机对话用户能计算机进行人机对话。 典型的分

7、时系统:典型的分时系统:UNIXChap1 操作系统引论操作系统引论n 6 6:从动态性、并发性和独立性上比较进程和:从动态性、并发性和独立性上比较进程和程序程序. .(P81P81)答案答案见见P37-38P37-38n 7 7:说明:说明PCBPCB作用,为什么作用,为什么PCBPCB是进程存在唯一是进程存在唯一标志标志. .(P81P81)解答:解答:1)PCB 是进程实体的一部分,是操作系统是进程实体的一部分,是操作系统中最重要的记录型数据结构。中最重要的记录型数据结构。PCB 中记录了操中记录了操作系统所需的用于描述进程情况及控制进程运作系统所需的用于描述进程情况及控制进程运行所需的

8、全部信息。行所需的全部信息。 2)在进程的整个生命周期中,系统总是在进程的整个生命周期中,系统总是通过其通过其PCB 对进程进行控制,系统是根据进程对进程进行控制,系统是根据进程的的PCB 而不是任何别的什么而感知到该进程的而不是任何别的什么而感知到该进程的存在的存在的。Chap2 进程管理进程管理n 10 10:进程切换时保存:进程切换时保存CPUCPU状态信息包含哪状态信息包含哪些?(些?(P81P81)解答:解答:1)通用寄存器)通用寄存器 2)指令计数器)指令计数器 3)程序状态字)程序状态字 4)用户栈指针)用户栈指针 注意:处理机状态是注意:处理机状态是PCB的一部分,它描的一部分

9、,它描述了进程在处理机上执行时的各种信息;述了进程在处理机上执行时的各种信息;当进行进程切换时,处理机中的这些信息当进行进程切换时,处理机中的这些信息统统要被其它进程覆盖,所以必须保存。统统要被其它进程覆盖,所以必须保存。Chap2 进程管理进程管理n 18 18:同步应该遵循的基本原则?(:同步应该遵循的基本原则?(P82P82) 答案见答案见P50P50n 19 19:记录型信号量的:记录型信号量的waitwait和和signal signal 的物的物理含义(理含义(P82P82)作业问题:作业问题: 1) 只答出只答出wait、signal操作的原子性。操作的原子性。 2)只答出)只答

10、出wait表示申请一个资源,表示申请一个资源,signal表示释放一个资源。表示释放一个资源。Chap2 进程管理进程管理解答:解答: 1)wait操作意味着请求一个单位的资源;操作意味着请求一个单位的资源; 若减若减1后后S.value0时,表示资源已分配完时,表示资源已分配完 毕,故进程调用毕,故进程调用block原语进行自我阻塞,原语进行自我阻塞,并被插入到等待队列中。并被插入到等待队列中。 2)signal操作意味着释放一个单位的资源;操作意味着释放一个单位的资源;若加若加1后后S.value=0,表示等待队列中仍有表示等待队列中仍有进程等待该资源,故进程调用进程等待该资源,故进程调用

11、wakeup原原语唤醒一个等待进程。语唤醒一个等待进程。Chap2 进程管理进程管理Cont.n 21:如何使用信号量机制实现多个进程:如何使用信号量机制实现多个进程对临界资源的互斥访问?(对临界资源的互斥访问?(P82)解答解答: 1)设置记录型信号量)设置记录型信号量mutex,初值为,初值为1。 2)将访问临界资源的代码放置于)将访问临界资源的代码放置于wait(mutex); 和和 signal(mutex)之间。之间。Chap2 进程管理进程管理n 23:在生产者:在生产者消费者问题中,如果缺消费者问题中,如果缺少了少了signal(full)和和signal(empty),对执行,

12、对执行结果有何影响?结果有何影响? (P82)作业问题:作业问题: 1)认为缓冲区满后会溢出(或缓冲区中原有)认为缓冲区满后会溢出(或缓冲区中原有数据被覆盖)。数据被覆盖)。 2)认为消费者(或生产者)阻塞就是死锁。)认为消费者(或生产者)阻塞就是死锁。 3)只下结论,缺少分析过程。)只下结论,缺少分析过程。 Chap2 进程管理进程管理Producer:repeat wait(empty) wait(mutex) signal(mutex) signal(mutex)until falseConsumer:repeat wait(full) wait(mutex) signal(mutex)

13、 signal(empty)until false(2)Wait(empty)成功,继续成功,继续(当缓冲区放当缓冲区放满后,生产者满后,生产者进程也阻塞进程也阻塞)(1)Wait(full)不成不成功功,消费者进程消费者进程阻塞阻塞Chap2 进程管理进程管理n 24:在生产者:在生产者消费者问题中,如果将消费者问题中,如果将两个两个wait操作即操作即wait(full)和和wait(mutex)互互换位置,或者将换位置,或者将signal(mutex)与与signal(full)互换位置,结果会如何?互换位置,结果会如何?(P82)作业问题:作业问题: 1)认为认为signal互换会引起

14、死锁互换会引起死锁。 2)缺少分析过程缺少分析过程。Chap2 进程管理进程管理Producer:repeat wait(empty) wait(mutex) signal(mutex) signal(full)until falseConsumer:repeat wait(mutex) wait(full) signal(mutex) signal(empty)until false(1)Wait(empty)成功,继续成功,继续(3)Wait(mutex)失失败败,生产者进,生产者进程阻塞程阻塞(2)Wait(mutex)成功成功,继续,继续(4)Wait(full)失失败,消费者败,消费

15、者进程阻塞进程阻塞Chap2 进程管理进程管理Consumer:repeat wait(full) wait(mutex) signal(mutex) signal(empty)until falseProducer:repeat wait(empty) wait(mutex) signal(full) signal(mutex)until false(1)Signal(full)成功成功(2)Wait(full)成功成功,继续继续(3)wait(mutex)失败,消费者阻失败,消费者阻塞塞互换互换signal会不会死锁?会不会死锁?Chap2 进程管理进程管理n 38:从调度性、并发性、拥有

16、资源及系统开销:从调度性、并发性、拥有资源及系统开销方面比较进程与线程?(方面比较进程与线程?(P83)解答解答见见P73n40:用于实现线程同步的私有信号量和共有信:用于实现线程同步的私有信号量和共有信号量之间的差别?号量之间的差别?(P83)解答见)解答见P76n41:何谓用户级线程和内核支持线程?:何谓用户级线程和内核支持线程?(P83)解答见解答见P77Chap2 进程管理进程管理n补充补充1 1:有没有这样的状态转换,为什:有没有这样的状态转换,为什么?等待么?等待运行;运行; 就绪就绪等待等待 解答:没有。都要经过中间状态:解答:没有。都要经过中间状态: 1.等待状态的进程获得所需

17、的资源后,等待状态的进程获得所需的资源后,必须转入就绪状态,必须转入就绪状态,直到获得直到获得CPU后后才能才能运行。运行。 2.进程在进程在运行过程中运行过程中才会请求资源,才才会请求资源,才有可能因请求不到资源而转入等待状态。有可能因请求不到资源而转入等待状态。Chap2 进程管理进程管理n补充补充2:一个状态转换的发生,是否一定导:一个状态转换的发生,是否一定导致另一个转换发生,列出所有的可能。致另一个转换发生,列出所有的可能。解答:不一定。可能的情况如下:解答:不一定。可能的情况如下: 1)执行执行阻塞阻塞 导致导致 就绪就绪执行(就绪队列不空)执行(就绪队列不空) 2)执行执行就绪就

18、绪 导致导致 就绪就绪执行执行 3)阻塞)阻塞就绪就绪 可能导致可能导致 就绪就绪执行执行 (在抢占方式下,该进程优先级高于当前进程和(在抢占方式下,该进程优先级高于当前进程和就绪队列中的所有进程)就绪队列中的所有进程)Chap2 进程管理进程管理n补充补充3:用用wait-signal操作解决下图之同步问题操作解决下图之同步问题:Chap2 进程管理进程管理getcopyputfstgVar Sfull, Sempty, Tfull, Tempty:semphore:=0,1,0,1;Get进程:进程:BeginRepeatWait(Sempty);Get(f, s);Signal(Sful

19、l);Until false;endCopy进程:进程:BeginRepeatWait(Sfull);Wait(Tempty);Copy(s, t);Signal(Sempty);Signal(Tfull);Until false;endPut进程:进程:BeginRepeatWait(Tfull); Put(t, g);Signal(Tempty);Until false;endChap2 进程管理进程管理n补充补充4:理发师睡觉问题理发师睡觉问题Chap2 进程管理进程管理 理发店里有一位理发师理发店里有一位理发师, , 一把理发椅和一把理发椅和N N把供等候理发的顾客坐的椅子。把供等候理

20、发的顾客坐的椅子。 如果没有顾客如果没有顾客, , 理发师便在理发椅上睡觉。理发师便在理发椅上睡觉。当一个顾客到来时当一个顾客到来时, , 他必须先唤醒理发师。他必须先唤醒理发师。 如果顾客到来时理发师正在理发如果顾客到来时理发师正在理发, , 则如果则如果有空椅子有空椅子, , 可坐下来等可坐下来等; ; 否则离开。否则离开。Chap2 进程管理进程管理问题分析:问题分析:理发师(理发师(barberbarber)重复的下列活动:()重复的下列活动:(1 1)睡觉;)睡觉;(2 2)为顾客理发;)为顾客理发;每个顾客(每个顾客(customerscustomers)执行下列活动:()执行下列

21、活动:(3 3)在椅)在椅子上等候;(子上等候;(4 4)理发;离开;)理发;离开;显然,理发师在(显然,理发师在(1 1)处要考察是否有顾客等候理发,)处要考察是否有顾客等候理发,如果没有,理发师睡觉;在(如果没有,理发师睡觉;在(2 2)处理发师等待最先)处理发师等待最先进入理发店的顾客唤醒,开始理发。进入理发店的顾客唤醒,开始理发。顾客在(顾客在(3 3)处先看是否有座位,没有则离开;等候)处先看是否有座位,没有则离开;等候理发的顾客在(理发的顾客在(4 4)处被理发师唤醒(最先理发的顾)处被理发师唤醒(最先理发的顾客要唤醒理发师);理发结束后离开。客要唤醒理发师);理发结束后离开。Va

22、r barber, customers, mutex:semaphore:=1,0,1; 简化版简化版int custCount=0;BarbarRepeatwait(customers);Cut hair;signal(barber);Until false;CustomersRepeatwait(mutex);if (cust_count=N+1) then signal(mutex); leave.;else custCount=custCount+1; signal(mutex); signal(customers); wait(barber); Get hair cut . wait

23、(mutex); custCount=custCount-1; signal(mutex);Until false;Var barber, customers, mutex:semaphore:=1,0,1; 改进版改进版int custCount=0;BarbarRepeatwait(mutex);if (custCount=0 ) then signal (mutex); Sleep.; wait(customers);else signal(mutex); Cut hair; signal(barber); end if Until false;CustomersRepeatwait(m

24、utex);if (cust_count=N) then signal(mutex); leave.;else custCount=custCount+1; if(custCount=1) then signal(customers); signal(mutex); wait(barber); Get hair cut . wait(mutex); custCount=custCount-1; signal(mutex);Until false;课堂练习课堂练习 有一个阅览室,共有有一个阅览室,共有100个座位,读者进入时必个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表须先在

25、一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:记的信息,试问:(1)为描述读者的动作,应编写几个程序,设置几)为描述读者的动作,应编写几个程序,设置几个进程?个进程?(2)试用)试用wait/signal 操作描述读者进程之间的同步操作描述读者进程之间的同步关系。关系。 Chap2 进程管理进程管理n 6:在抢占式调度方式中,抢占的原则是什么?:在抢占式调度方式中,抢占的原则是什么?(P114)解答解答见见P87n7:在选择调度方式和调度算法时,应遵循的准:在选择调度方式和调度算法时,应遵循的准则是

26、什么?则是什么?(P114)解答见)解答见P9091n9:何谓静态和动态优先级?确定优先级的依据:何谓静态和动态优先级?确定优先级的依据是什么?是什么?(P115)解答见)解答见P9394n13:为什么说多级反馈队列调度算法能较好的:为什么说多级反馈队列调度算法能较好的满足各方面用户的需要?满足各方面用户的需要?(P115)解答见)解答见P97Chap3 处理机调度与死锁处理机调度与死锁n补补 1. 死锁的原因和必要条件及解决死锁的方法。死锁的原因和必要条件及解决死锁的方法。 n解决死锁解决死锁的基本方法的基本方法n预防死锁:事先破坏死锁的必要条件,容易实预防死锁:事先破坏死锁的必要条件,容易

27、实现,但是资源利用率和系统吞吐量较低。现,但是资源利用率和系统吞吐量较低。n避免死锁:在资源分配过程中防止系统进入不避免死锁:在资源分配过程中防止系统进入不安全状态,从而避免死锁,实现较难,资源利安全状态,从而避免死锁,实现较难,资源利用率和系统吞吐量最高。用率和系统吞吐量最高。n检测死锁与解除死锁:无任何事先限制措施,检测死锁与解除死锁:无任何事先限制措施,进程执行过程中也不检测是否安全,允许死锁进程执行过程中也不检测是否安全,允许死锁产生并能清除死锁,实现较难,资源利用率和产生并能清除死锁,实现较难,资源利用率和系统吞吐量高。系统吞吐量高。Chap3 处理机调度与死锁处理机调度与死锁n补补 1. 死锁的原因和必要条件及解决死锁的方法。死锁的原因和必要条件及解决死锁的方法。 n解决死锁解决死锁的基本方法的基本方法n预防死锁:事先破坏死锁的必要条件,容易实预防死锁:事先破坏死锁的必要条件,容易实现,但是资源利用率和系统吞吐量较低。现,但是资源利用率和系统吞吐量较低。n避免死锁:在资源分配过程中防止系统进入不避免死锁:在资源分配过程中防止系统进入不安全状态,从而避免死锁,实现较难,资源利安全状态,从而避免死锁,实现较难,资

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论