习题讲解第四版讲义_第1页
习题讲解第四版讲义_第2页
习题讲解第四版讲义_第3页
习题讲解第四版讲义_第4页
习题讲解第四版讲义_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

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

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

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

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

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

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

7、交互性:用户能计算机进行人机对话)交互性:用户能计算机进行人机对话。 典型的分时系统:典型的分时系统:UNIXChap1 操作系统引论操作系统引论n 6. 6.从动态性、并发性和独立性上比较进程和程从动态性、并发性和独立性上比较进程和程序。(序。(P84P84)答案)答案见见P36P36n 7. 7.说明说明PCBPCB作用,为什么作用,为什么PCBPCB是进程存在唯一标是进程存在唯一标志。(志。(P84P84)解答:解答:1)PCB 是进程实体的一部分,是操作系统是进程实体的一部分,是操作系统中最重要的记录型数据结构。中最重要的记录型数据结构。PCB 中记录了操中记录了操作系统所需的用于描述

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

9、 注意:处理机状态是注意:处理机状态是PCB的一部分,它描述了的一部分,它描述了进程在处理机上执行时的各种信息;当进行进进程在处理机上执行时的各种信息;当进行进程切换时,处理机中的这些信息通通要被其它程切换时,处理机中的这些信息通通要被其它进程覆盖,所以必须保存。作业中有提到进程进程覆盖,所以必须保存。作业中有提到进程状态的部分,不在此列。状态的部分,不在此列。Chap2 进程管理进程管理Chap2 进程管理进程管理n16.创建一个进程时所要完成的工作?创建一个进程时所要完成的工作?n解答:解答:n分配一个唯一的进程标识符分配一个唯一的进程标识符,索取一个空白索取一个空白PCBn为新进程的程序

10、和数据分配内存空间为新进程的程序和数据分配内存空间n初始化进程控制块,包括初始化标识符信息、初始化进程控制块,包括初始化标识符信息、处理机的状态信息和控制信息处理机的状态信息和控制信息n设置相应的链接设置相应的链接n 18. 18.同步应该遵循的基本原则?(同步应该遵循的基本原则?(P84P84) 答案见答案见P51 P51 空闲让进、忙则等待、有限空闲让进、忙则等待、有限等待、让权等待等待、让权等待n 19.19.记录型信号量的记录型信号量的waitwait和和signal signal 的物的物理含义理含义作业问题:作业问题: 1) 只答出只答出wait、signal操作的原子性。操作的原

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

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

13、执行结果有何影响?结果有何影响?Chap2 进程管理进程管理Producer:repeat wait(empty) wait(mutex) signal(mutex) signal(full)until falseConsumer:repeat wait(full) wait(mutex) signal(mutex) signal(empty)until false(2)Wait(empty)成功,继续成功,继续(当缓冲区放(当缓冲区放满后,生产者满后,生产者进程也阻塞)进程也阻塞)(1)Wait(full)不成不成功功,消费者进程,消费者进程阻塞阻塞Chap2 进程管理进程管理n 24:在生

14、产者:在生产者消费者问题中,如果将消费者问题中,如果将两个两个wait操作即操作即wait(full)和和wait(mutex)互互换位置,或者将换位置,或者将signal(mutex)与与signal(full)互换位置,结果会如何?互换位置,结果会如何?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)

15、Wait(empty)成功,继续成功,继续(3)Wait(mutex)失失败败,生产者进,生产者进程阻塞程阻塞(2)Wait(mutex)成功成功,继续,继续(4)Wait(full)失失败,消费者败,消费者进程阻塞进程阻塞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)成功成功(

16、2)Wait(full)成功成功,继续继续(3)wait(mutex)失败,消费者阻失败,消费者阻塞塞互换互换signal会不会死锁?会不会死锁?Chap2 进程管理进程管理Chap2 进程管理进程管理n26、Producer:beginrepeat produce an item in nextp; wait(mutex); wait(full); buffer(in):=nextp; signal(mutex);until false;endConsumer:beginrepeatwait(mutex);wait(empty);nextc:=buffer(out);out:=out+1;

17、signal(mutex);consume item in nextc;until falseendChap2 进程管理进程管理n27、试利用记录型信号量写出不会死锁的、试利用记录型信号量写出不会死锁的哲学家进餐问题的算法。哲学家进餐问题的算法。答:答:var c:array0.4 of semaphore:=(1,1,1,1,1);process iRepeat 思考;思考; Swait(ci, c(i+1) mod 5); 进食;进食; Ssignal(ci, c(i+1) mod 5);Until false;Chap2 进程管理进程管理n31、什么是、什么是AND型信号量?试利用型信号

18、量?试利用AND型型信号量写出生产者信号量写出生产者-消费者问题的算法。消费者问题的算法。Process Pi(1m); /生产者生产者 Repeat 生产一个产品;生产一个产品; Swait(S,buf) ; 送产品到送产品到Buffer in ; in:=(in+1) mod n; Ssignal(S,prod) ; Until False ;Process Cj(1n); /消费者消费者 Repeat Swait(S, prod) ; 从从Bufferout取产品;取产品; out:=(out+1) mod N; Ssignal(S, buf) ; 消费产品消费产品; Until Fal

19、se ;Var S, buf, prod :semaphore:=1, N, 0; 信号量信号量 Buffer:array0.N-1 of item; 临界资源临界资源 in, out:integer:=0, 0; 是临界资源不是信号量是临界资源不是信号量 n 21:从调度性、并发性、拥有资源及系统开销:从调度性、并发性、拥有资源及系统开销方面比较进程与线程?(方面比较进程与线程?(P84)解答见)解答见P76n23:何谓用户级线程和内核支持线程?(:何谓用户级线程和内核支持线程?(P84)解答见解答见P79Chap2 进程管理进程管理n补充补充1 1:有没有这样的状态转换,为什:有没有这样的

20、状态转换,为什么?等待么?等待运行;运行; 就绪就绪等待等待 解答:没有。都要经过中间状态:解答:没有。都要经过中间状态: 1.等待状态的进程获得所需的资源后,等待状态的进程获得所需的资源后,必须转入就绪状态,直到获得必须转入就绪状态,直到获得CPU后才能后才能运行。运行。 2.进程在运行过程中才会请求资源,才进程在运行过程中才会请求资源,才有可能因请求不到资源而转入等待状态。有可能因请求不到资源而转入等待状态。Chap2 进程管理进程管理n补充补充2:一个状态转换的发生,是否一定导:一个状态转换的发生,是否一定导致另一个转换发生,列出所有的可能。致另一个转换发生,列出所有的可能。解答:不一定

21、。可能的情况如下:解答:不一定。可能的情况如下: 1)执行执行阻塞阻塞 导致导致 就绪就绪执行(就绪队列不空)执行(就绪队列不空) 2)执行执行就绪就绪 导致导致 就绪就绪执行执行 3)阻塞)阻塞就绪就绪 可能导致可能导致 就绪就绪执行执行 (在抢占方式下,该进程优先级高于当前进程和(在抢占方式下,该进程优先级高于当前进程和就绪队列中的所有进程)就绪队列中的所有进程)Chap2 进程管理进程管理n补充补充3:用用wait-signal操作解决下图之同步问题操作解决下图之同步问题:Chap2 进程管理进程管理getcopyputfstgVar Sfull, Sempty, Tfull, Temp

22、ty:semphore:=0,1,0,1;Get进程:进程:BeginRepeatWait(Sempty);Get(f, s);Signal(Sfull);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 进程管理进程管理Chap3 处理机调度与死锁处理机调度

23、与死锁6. 为什么要引入高响应比优先调度算法?优为什么要引入高响应比优先调度算法?优点?点?答:答: FCFS只考虑了等待时间,没有考虑作业只考虑了等待时间,没有考虑作业的运行时间,而的运行时间,而SJF恰恰相反,只考虑了作恰恰相反,只考虑了作业的运行时间,没有考虑等待时间。而引业的运行时间,没有考虑等待时间。而引入入高响应比优先调度算法既高响应比优先调度算法既考虑了等待时考虑了等待时间,又考虑作业的运行时间,可以改善处间,又考虑作业的运行时间,可以改善处理机的调度性能。理机的调度性能。 优点:既有利于短作业,又兼顾长作业,优点:既有利于短作业,又兼顾长作业,还考虑到了进程等待时间长短问题,改

24、善还考虑到了进程等待时间长短问题,改善了改善处理机的调度性能。了改善处理机的调度性能。Chap3 处理机调度与死锁处理机调度与死锁9. 在选择调度方式和调度算法时在选择调度方式和调度算法时,应遵循的准应遵循的准则是什么?则是什么?答:答: a. 面向用户的准则有周转时间短面向用户的准则有周转时间短,响应时响应时间快间快,截止时间的保证截止时间的保证,以及优先权准则。以及优先权准则。 b. 面向系统的准则有系统吞吐量高面向系统的准则有系统吞吐量高,处理处理机利用率好机利用率好,各类资源的平衡利用。各类资源的平衡利用。Chap3 处理机调度与死锁处理机调度与死锁11.何谓静态和动态优先级?确定静态

25、优先级何谓静态和动态优先级?确定静态优先级的依据是什么?的依据是什么?答:静态优先级是在创建进程时确定的,且在进程答:静态优先级是在创建进程时确定的,且在进程的整个运行期间保持不变。动态优先级是指,在的整个运行期间保持不变。动态优先级是指,在创建进程时所赋予的优先权,是可以随进程的推创建进程时所赋予的优先权,是可以随进程的推进或随其等待时间的增加而改变的,以便获得更进或随其等待时间的增加而改变的,以便获得更好的调度性能。确定静态优先级的依据有:好的调度性能。确定静态优先级的依据有:进程类型;进程类型;进程对资源的需求;进程对资源的需求;用户要求。用户要求。Chap3 处理机调度与死锁处理机调度

26、与死锁27.何谓死锁何谓死锁? 产生死锁的原因和必要条件是产生死锁的原因和必要条件是什么什么?答:答:a. 死锁是指多个进程因竞争资源而造成的一种死锁是指多个进程因竞争资源而造成的一种僵局僵局,若无外力作用若无外力作用,这些进程都将永远不能再向这些进程都将永远不能再向前推进前推进; b. 产生死锁的原因有二产生死锁的原因有二,一是竞争资源一是竞争资源,二是进程二是进程推进顺序非法推进顺序非法; c. 必要条件是必要条件是: 互斥条件互斥条件,请求和保持条件请求和保持条件,不剥夺不剥夺条件和环路等待条件。条件和环路等待条件。ProcessAllocationNeedAvailabeP000320

27、0121622P110001750P213542356P303320652P400140656(1 1)该状态是否安全?)该状态是否安全?(2 2)若)若P2P2提出资源请求提出资源请求Request(1,2,2,2)Request(1,2,2,2)后,系后,系统能否将资源分配给它?统能否将资源分配给它?31.银行家算法银行家算法Chap3 处理机调度与死锁处理机调度与死锁安全性算法n设置工作向量设置工作向量Work=Available,Finishi=False;n挑选一个进程挑选一个进程i,满足条件:,满足条件:nFinishi=False;nNeedi,j=Workjn如果找到这样的进程

28、,则执行如果找到这样的进程,则执行3,否则跳转到,否则跳转到4nPi执行完后释放资源,执行完后释放资源,Workj+=Allocationi,j, Finishi=True;跳转到跳转到2;n如果所有如果所有Finishi=True; 则安全,否则不安则安全,否则不安全全安全状态判断过程ProcessAllocationNeedWorkWork + AllocationFinishP0003200121622P110001750FalseP213542356FalseP303320652P40014065616541686169ATrueTrueTrue无路可走了无路可走了,不安全呀不安全呀P

29、2请求(1,2,2,2),尝试分配并判断是否为安全状态ProcessAllocationNeedWorkWork + AllocationFinishP0003200121622(0400)FalseP110001750FalseP21354(2576)2356(1134)FalseP303320652FalseP400140656False寸步难行呀寸步难行呀,不安全不安全* 红色的数字代表P2进行预分配后的资源状况n补补1. 3个进程共享个进程共享4个资源,每个进程至多个资源,每个进程至多需要两个资源,问:会不会死锁?需要两个资源,问:会不会死锁? 解答:不会。因为不会。因为3个进程中必然

30、会有个进程中必然会有1个进个进程能够获得程能够获得2个资源,该进程得以顺利执行完,个资源,该进程得以顺利执行完,并释放资源供其余并释放资源供其余2个进程使用。个进程使用。Chap3 处理机调度与死锁处理机调度与死锁补补2 2、设三个进程、设三个进程P1, P2, P3, P1, P2, P3, 各按如下顺序执行:各按如下顺序执行: 进程进程P1 进程进程P2 进程进程P3 在执行时能否产生死锁?如果可能,请说明在在执行时能否产生死锁?如果可能,请说明在什么情况下会产生死锁?并给出一个防止死锁产生什么情况下会产生死锁?并给出一个防止死锁产生的修改办法。的修改办法。P(S1)P(S2) :V(S1

31、)V(S2)P(S3)P(S1) :V(S3)V(S1)P(S2)P(S3) :V(S2)V(S3)Chap3 处理机调度与死锁处理机调度与死锁Chap7操作系统接口操作系统接口n1.操作系统用户接口中包括哪几种接操作系统用户接口中包括哪几种接口?它们分别适用于哪种情况口?它们分别适用于哪种情况?答:联机命令接口,直接提供给用户在终端答:联机命令接口,直接提供给用户在终端使用;使用;系统调用接口(程序接口),提供给用户系统调用接口(程序接口),提供给用户在编程时使用;在编程时使用;图形用户接口(图形操作)和网络用户接图形用户接口(图形操作)和网络用户接口(网络操作)口(网络操作)Chap7操作系统接口操作系统接口16.试比较一般的过程调用与系统调用。试比较一般的

温馨提示

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

评论

0/150

提交评论