您好,欢迎访问三七文档
参考答案第3章一、填空题1.高级调度,中级调度,低级调度2.提交,后备,执行,完成3.就绪态,运行态4.非抢占式优先级法,抢占式优先级法5.剥夺方式,非剥夺方式6.同步机构7.轮转法,分时系统8.一次今允许一个进程访问的资源,进程中访问临界资源的那段程序代码9.P,V10.互斥条件,不可剥夺条件,请求与保持条件,环路条件11.多进程操作系统12.影响其他正在运行的进程13.直接共享一个逻辑地址(包括代码和数据)14.死锁15.调度程序16.进程调度,转让处理机17.时间片已经用完18.作业被提交给系统19.让某些紧急的作业能得到及时处理20.处理机的利用率21.决定那个处于就绪状态的进程进入CPU执行22.从后备队列中选出一个或若干估计运行的时间最短的作业,将它们调入内存运行23.系统吞吐量24.静态法,动态法25.进程类型,进程运行时间,用户要求26.长作业的运行得不到保证27.把CPU的处理时间划分为固定大小的时间片,各就绪进程轮流获得时间片而投入运行,从而让每个进程在就绪队列中的等待时间与享受服务的时间成比例28.并未指明进程的长度29.终端型作业用户,短批处理作业用户,长批处理作业用户30.具有两个或多个处理机并能相互进行通信以协同一个大的给定问题求解31.有两个或多个处理机,共享主存或高速通信网络,共享输人输出子系统,有单一完整的操作系统,各级硬件和软件相互作用32.进程分配,更好的利用多机硬件,资源在处理机之间的分配,改善程序的响应时间,处理机的负载平衡,处理机间的协调和同步,因处理机故障引起的系统重组33.独立监控系统34.一种是确定性模型,另一种是随机性模型35.基于优先级的抢占式调度算法36.每一个进程在运行过程中并非相互隔绝37.为临界区38.对一个字中的内容进行检测和修正39.单处理机和多处理机系统40.一般信号量和二元信号量41.竞争系统资源或由于彼此通信而永远阻塞42.“读者和写者问题”43.同步44.一个方便的阻塞和唤醒进程的机构45.由局部于管程的数据和一个或多个内部过程所组成的46.多于一个的线程在时间的任意一点在一个或多个关键代码部份执行代码47.这些并发进程在得到对方的资源之前是不会释放自己所拥有的资源48.预防,避免,检测与恢复49.动态预防50.长期调度,中期调度以及短期调度二、选择题1,C2.A3.B4.B5.C6.A7.A8.B9.C10.B11.B12.A13.C14.D15.C16.B17.B18.B19.A20.C21.[1]A,[2]D,[3]B,[4]C,[5]A22.A23,C24.C25.B26.B27,C28.D29.B30.A31.A32,D33.D34.A35.B36.A37.C38.D39.B40.A41.B42.A43.C44,A45.C46.B47.C48.B49.D50.A51.C52.B53.B54.B,C三、判断题1.√2.x3.√4.√5.X6.√7.√8.x9.√10.X四、简答题1.答:处理机调度的具体功能可总结为如下几点:(1)记录系统中所有进程的相关情况。系统为了对进程进行有效的管理,必须把每个进程的有关信息记人PCB中,所记录的信息包括每个进程的名字,该进程在当前的状态,优先级数。资源使用情况以及不活动的进程在它被暂停的那个时刻的现场信息等等。(2)确定分配处理机的原则。处理机分配是指如何调度进程到处理机上执行以及执行多长时间。处理机调度程序是根据处理机调度算法来调度处理机的。(3)分配处理机给进程。把处理机控制权交给被选中的进程,即让它开始执行。该进程由就绪状态变成运行状态。(4)从进程收回处理机。正在运行的进程,由于时间片用完,或是具有更高优先级数的进程需要处理机,或因等待某种资源等原因,必须交出处理机。系统根据调度原则,在选取合乎条件的进程投入运行。2.答:面向用户的目标:(1)周转时间短。所谓周转时间,是指从作业被提交给系统开始,到作业完成为止的这段时间间隔(称为作业周转时间)。(2)响应时间快。所谓的响应时间,是从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间,或者说,知道屏幕上显示出结果位置的一端时间间隔。(3)截止时间的保证。所谓截止时间,是指某任务必须开始执行的最迟时间,或必须完成的最短时间。(4)优先权准则。在批处理系统、分时系统和实时系统中选择调度算法时,都可遵循优先权准则,以便让某些紧急的作业能得到及时处理。在尤其较严格的场合,往往还必须选择可剥夺方式,才能保证紧急作业得到及时处理。面向系统的目标:(1)系统吞吐量高。吞吐量是指在单位时间内系统所完成的作业数。(2)处理机利用率好。对于大中型多用户系统,由于CPU的价格非常昂贵,致使处理机的利用率成为衡量系统性能的十分重要的指标。(3)各类资源的平衡利用。在大中型系统中,不仅要使处理机的利用率高,而且还应能有效地利用其他各类资源,如内存外存和I/O设备等。3.答:管程和进程的异同点如下:(1)管程和进程都定义了数据结构,进程定义的是私有数据结构进程控制块;管程定义是公共数据结构,如消息队列。(2)管程和进程都是各自的数据结构上进行有意义的操作。进程是由顺序程序执行有关操作,管程主要是同步操作和初启操作。(3)管程和进程设置的目的不同;进程是为了更好地刻画可实现系统的并发性而设置的,管程是为了解决进程的公共变量,解决公共资源的互斥使用问题而设置的。(4)进程通过调用管程中的过程对共享变量进行操作,此时该过程就如通常的子程序一样被调动而处于被动工作方式。因此称管程为被动成分,与此相对应的进程则处于主动工作方式而被成为主动成分。(5)由于进程是主动成分,故进程之间能被并发执行;而管程是被动成分,管程和调用它的进程不能被并发执行。4.答:信号量机制的基本原理是:两个或多个进程可以通过简单的信号进行合作,一个进程可以被迫在某一个位置停止,直到它接收到一个特定的信号。任何复杂的合作的需求都可以通过适当的信号结构得到满足。为了发信号,需要使用一个称作信号量的特殊变量。为通过信号量s传送信号,进程可以执行原语p(s);为通过信号量s接收信号,进程可执行原语v(s);如果相应的信号量仍然没有发送,进程被挂起,直到发生传送。对信号量的操作:(1)一个信号量可以初始化为非负数。(2)P操作使信号量减1。如果值变成负数,则执行P操作的进程被阻塞。(3)V操作使信号量加1。如果值不是正数,则被P操作阻塞的进程被解除阻塞。除了这三种操作,没有任何其他方法可以检查或操作信号量。5.答:所谓死锁,是指各并发进程已经拥有一定的资源,但是彼此互相等待对方所拥有的资源才能继续运行,而且这些并发进程在得到对方的资源之前是不会释放自己所拥有的资源。从而造成大家都想得到资源不能继续向前推进的状态。6.答:解决死锁的方法一般可分为预防、避免、检测与恢复。(1)预防是采用某种策略,限制并发进程对资源的请求,从而使得死锁的必要条件在系统执行的任何时间都不满足。(2)避免是指在系统分配资源时,根据资源的使用情况提前做出预测,从而避免死锁的发生。(3)死锁检测与恢复是指系统设有专门的机制,当死锁发生时,该机制能够检测到死锁发生时的位置和原因,并能通过外力破坏死锁发生的必要条件,从而使得并发进程从死锁中恢复。7.答:对一个单CPU的系统来说,任意时刻只能有一个进程在执行,而其他也想要被执行的进程则必须等待CPU空闲下来,然后通过调度器选出下一个可以使用CPU的进程。因此,如何调度是影响操作系统性能最重要的因素。8.答:长程调度器:其工作就是从磁盘中选出合适的进程,将进程放置于内存中准备执行:其执行的频率比短程调度器要低得多。短程调度器:其工作是在准备队列中选出一个进程,然后将CPU的使用权交给该进程。短程调度器从准备队列中选出下一个进程的操作是非常频繁的,所以其执行的频率比短程调度器要高。9.答:当CPU的使用权由一个进程转到另一个进程时,必须将上一个进程的相关信息存储起来,并且把即将要使用CPU的进程的相关信息加载到系统中,这个操作称为上下文切换。10.答:进程在CPU执行的期间称为CPU脉冲,而在等待I/O的期间称则为I/O脉冲。CPU为主的进程通常是由一些比较长的CPU脉冲所组成,而·I/O为主的进程则是由很多小的CPU脉冲所组成,要判断一个进程是属于CPU为主还是I/O为主时,评估的标准是CPU脉冲。11.答:有4种进程的执行状态转换时需要进行重新调度:(1)由执行状态切换到就绪状态(如发生中断)。(2)由执行状态切换到等待状态(如产生I/O请求或是等待某些事件的发生)。(3)由执行状态切换到结束状态。(4)由等待状态切换到就绪状态(如完成I/O)。12.答:同步与互斥特点比较下表所示。同步互斥进程-进程进程-资源-进程时间次序上受到某种限制竞争到某一物理资源时不允许其他进程工作相互清楚对方的存在及其作用,交换信息不一定清楚其他进程情况往往指有几个进程共同完成一个任务往往指多个任务多个进程间通讯制约,故更广泛举例:生产与消费之间,发送与接收之间,作者与读者之间,代考与用者之间举例:交通十字路口,单轨火车的拨道岔13.答:实时调度是为了完成实时处理任务而分配计算机处理器的调度方法。实时处理任务要求计算机在用户允许的时限范围内给出计算机响应信号。实时处理任务可分为硬实时任务(hardreal—timetask)和软实时任务(softreal—timetask)。硬实时任务要求计算机系统必须在用户给定的时限内处理完毕,软实时任务允许计算机系统在用户给定的时限左右处理完毕。针对硬实时任务和软实时任务,计算机系统可以有不同的实时调度算法。这些算法采用基于优先级的抢先式调度策略。具体地说,大致有如下几类:(1)静态表驱动模式。该模式用于周期性实时调度,它在任务到达之前对各任务抢占处理机的时间进行分析,并根据分析结果进行调度。(2)静态优先级驱动的抢先式调度模式。该模式也进行静态分析。分析结果不是用于调度,只是用于给各任务指定优先级。系统根据各任务的优先级进行抢先式调度。(3)基于计划的动态模式。该模式在新任务到达后,将以前调度过的任务与新到达的任务一起统一计划,分配CPU时间。(4)动态尽力而为模式。该模式不进行任何关于资源利用率的分析,只检查各任务的时限是否能得到满足。代表性的实时调度算法有两种。即时限式调度法(deadlinescheduling)和频率单调调度法(ratemonotonicscheduling)。实时调度与非实时调度的主要区别是:(1)实时调度所调度的任务有完成时限,而非实时调度没有。从而,实时调度算法的正确与否不仅与算法的逻辑有关,也与调度算法调度的时限有关。.(2)实时调度要求较快的进程或线程切换时间,而非实时调度的进程或线程的切换时间较长。(3)非实时调度强调资源利用率(批处理系统)或用户共享处理机(分时系统);实时调度则主要强调在规定时限范围内完成对相应设备的控制。(4)实时调度为抢先式调度,而非实时调度则很少采用抢先式调度。14.答:为了让用户进程可以与操作系统通信,操作系统提供了一些函数给用户,这组函数称为系统调用。系统调用是用户进程与操作系统间的接口,通过系统调用,用户进程可以通过操作系统来使用外围设备,或是得到较高的权限来处理工作。15.答:举例如下:(1)等待一段时间:闹铃程序会用到这种系统调用等待一段时间后发出响声,(2)等待事件发生:命令解释系统会需要等待用户输入字符串,这个时候就会用到这类的系统调用。(3)发出信号:当父进程想要将子进程结束时,可以发出信号将子进程结束。16.答:独立的进程是指进程之间不会相互影响,也就是说进程间没有任何共享的数据。反言之,合作的进程就是指进程之间会相互的影响,也就是说进程之间有共享的数据。17.答:机器码代号执行程序执行指令执行结果S1消费者registerl=counter;registerl=6S4生产者register2=counter;register2=6S5生产者register2=register2+1;
本文标题:参考答案第3章
链接地址:https://www.777doc.com/doc-2614249 .html