《操作系统》习题参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题1参考答案
一、单项选择题
1.B 2.C 3.D 4.B 5.A
6.C 7.D 8.A 9.B 10.A
11.B 12.B 13.C 14.B 15.A
二、填空题
1.预约机器时间将程序手工装入内存指定开始地址启动程序运行从控制台上监控程序执行
2.进程管理存储管理设备管理文件管理作业管理
3.资源利用率高系统吞吐量大周转时间长无交互作用
4.利用率更大的内存
5.并行串行
6.人机矛盾CPU与I/O设备速度不匹配的矛盾
7.为了提高CPU的利用
8.提高系统资源利用率方便用户计算机硬件的不断更新换代
9.及时性和高可靠性
10.用户所能接受的等待控制对象所能接受的时延
11.CPU 外设
12.共享
13.中断通道
14.响应时间
15.内核核外
三、简答题
1.答:操作系统的主要目标是:
(1)为计算机用户提供一个良好的环境,使其能以方便、有效的方式在计算机硬件上
执行程序。
(2)根据解决某给定问题的需要,来分配计算机的各种资源。而且这种分配应尽可能
公平、有效。
(3)作为控制程序,它有如下两种主要功能:监控用户程序的执行,以避免各种错误和对计算机系统的不合理使用:对I/O设备的操作和控制的管理。
(4)合理地组织计算机系统的工作流程,以改善系统的性能。
2.答:操作系统的功能是管理和控制计算机系统中的所有硬、软件资源,合理地组织
计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括:处理机管理、存储管理、设备管理、文件管理和用户接口等。
3.答:现代操作系统具有以下基本特征:
(1)并发性。并发指的是在操作系统中存在着许多同时的或并行的活动。
(2)共享性。系统中存在的各种并发活动要求共享系统中的硬件、软件资源。
(3)虚拟性。虚拟是指将一个物理实体映射为若干个逻辑实体,例如虚拟处理机,虚拟存储器等。
(4)不确定性。在多道程序设计环境下,各程序按异步方式运行,每道程序在何时执行、各自执行的顺序以及每道程序所需的时间、程序执行的结果都是不确定的。
4.答:多道程序设计的硬件基础是中断系统和通道技术。它们为多道程序设计的实现提供了有力的支持。
在多道程序设计的环境下,当CPU要求在内存和外设间传输数据时,通过发I/O指令命令通道工作,完成相应的数据传输,使得CPU从繁琐的I/O操作中解放出来,当I/O操作完成后,通道以中断方式请求CPU的处理,从而实现了CPU的计算与I/O操作的并行。5.答:为了实现多道程序设计技术,必须解决以下三个问题:
(1)存储保护和地址重定位。
(2)处理机的管理和调度。
(3)资源的管理和调度。
6.答:在OS中引入多道程序设计技术,可带来如下好处:
(1)提高CPU的利用率。当内存中仅存放一道程序时,每逢该程序运行过程中发出I/O 请求时,CPU空闲,必须在其I/O完成后才继续运行。尤其是I/O设备的低速性,更使CPU 的利用率显著降低。在引入多道程序设计技术后,由于可同时把若干道程序装入内存,并可使它们交替地执行,这样当正在运行的程序因I/O而暂停执行时,系统可调度另一道程序运行,从而可保持CPU处于忙碌状态。
(2)可提高内存和I/O设备利用率。为了能运行较大作业,通常内存都具有较大容量。但由于80%以上的作业都属于中小型,因此在单道程序环境下也必定造成内存的浪费。类似地,系统中所配置的多种类型的I/O设备,在单道程序环境下,也不能充分利用。如果允许在内存中装入多道程序,并允许它们并发执行,则无疑会大大提高内存利用率和I/O设备的利用率。
(3)增加系统吞吐量。在保持CPU、I/O设备不断忙碌的同时,也必然会大幅度地提高系统的吞吐量,从而降低作业加工所需费用。
7.答:如果说批处理系统形成和发展的主要推动力是“不断提高系统资源利用率”和“提高系统吞吐量”,那么,分时系统形成和发展的主要动力则是“为了更好地满足用户需要”。主要表现在:
(1)缩短了作业的周转时间。在批处理系统中,用户把作业提交给系统后,往往要经过几个小时甚至几天的延迟,才能得到所需的结果。这样长的周转时间,对那些只需运行几分钟的小型作业的用户来说显然是不愿接受的。用户总是希望作业周转时间尽可能地短。
(2)提供人机交互能力。在批处理系统中,用户一旦把作业提交给系统,自己便失去
了对作业控制的能力,必须先写好作业说明书,然后连同作业一起交给系统,由系统根据说明书中的控制信息说明,对作业进行控制。为此,系统要求用户能事先充分估计到作业在运行过程中可能出现的各种情况。实际上这是难以做到的。因此,用户强烈地需要系统能够做到边运行作业,边告知运行中出现的问题。用户便可随时针对所出现的问题,采取适当的解决办法,亦即用户希望系统提供人机交互能力。这一点对于用户调试一个新程序,或修改老程序来说,尤为重要。
(3)多个用户共享一台计算机。在60年代,计算机的价格还十分昂贵,不可能为每一个上机用户配置一台计算机,只能让多个用户通过各自的终端,同时使用一台计算机来处理各自的作业,而不相互干扰。
8.答:设计实时系统时要考虑以下问题:
(1)实时时钟管理。
(2)连续人—机对话。
(3)过载的保护。
(4)高可靠性的保证。
9.答:分布式计算机系统具有以下主要特点:
(1)分布式系统中任意两台计算机之间可以利用通信交换信息。
(2)分布式系统各计算机具有相对的自主性或自治性。
(3)分布式系统具有透明性。各计算机上的资源可以共享,而且用户不必考虑资源所在的位置。
(4)分布式系统具有整体性或协同性。各计算机可以共同完成一个任务,每台计算机只完成整个任务的一部分。·
(5)分布式系统具有坚定性。任何一台计算机出现故障不会使系统瘫痪,可以“降级”使用。
10.答:网络操作系统作为一个操作系统,应具有传统(单机)操作系统的功能——进程管理、存储管理、文件管理、设备管理和作用管理等。除此之外,网络操作系统还应具有以下功能:
(1)实现网络中各节点机之间的通信
(2)实现网络中的资源共享。
(3)提供多种网络服务。
(4)提供网络用户的应用程序接口。
网络操作系统具有以下特点:
(1)复杂性。
(2)并行性。
(3)节点之间的通信与同步。
(4)安全性。
11.答:多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时执行多个作业;而多重处理(multiprocessing)系统配置了多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。
12.答:在操作系统中实现虚拟功能所采用的关键技术是“分时技术”。例如,将一台物理处理机虚拟为多台逻辑上的处理机,是靠多道程序分时地使用同一台物理处理机来实现的。微观上,该处理机在每一时刻只运行一道程序,它们分时地运行;然而宏观上,系统中确有几道程序在同时运行,从而给用户形成的感觉是,系统中同时有多台处理机在为其中的每一道程序服务。显然,用户所感觉到的处理机并不实际存在,故称为虚拟处理机。
四、思考题
1.答:实现分时系统的关键,是使用户能与自己的作业交互,即用户在自己的终端上键入一命令,以请求系统服务后,系统能及时地接收并处理该命令,并在用户能够接受的时延内将结果返回给用户。
及时地接收命令和返回输出结果是比较容易做到的,一般只要在系统中配置一多路卡,并为每个终端配置一个缓冲区,用来暂存用户键入的命令和输出的结果便可以了。因此,要着重解决的问题是,确保在较短的时间内,系统中所有的用户程序都能执行一次,从而使用户键入的命令能够得到及时处理。为此,系统不应让一个作业长期占用CPU,直至它运行结束,而应设置一个较短的时间片,并规定每个程序只能运行一个时间片,然后不管它是否运行完毕,都必须将CPU让给下一个作业,从而使所有的作业都得到及时的处理,使用户的请求得到及时的响应。
2.答:讨论操作系统可以从以下角度出发:操作系统是计算机资源的管理者:操作系统为用户提供使用计算机的界面;用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。
上述这些观点彼此并不矛盾,只不过代表了对同一事物(操作系统)站在不同的角度来看