操作系统习题集
参考教材:
汤小丹等编着,计算机操作系统(第三版),西安电子科技大学出版社,2007年版; 何炎祥等编着,计算机操作系统,清华大学出版社,2005年版;
邹恒明着,计算机的心智操作系统之哲学原理,机械工业出版社,2009年4月。
第一章 操作系统引论 1.1 选择题
1.下列哪一条是在操作系统设计中引入多道程序技术的好处?A A. 使并发执行成为可能 B. 简化操作系统的实现 C. 减少对内存容量的需求 D. 便于实施存储保护 2.Windows XP属于下列哪一类操作系统?B
A. 单用户单任务 B. 单用户多任务 C. 多用户 D. 批处理 3.下列哪一条不是批处理系统的优点?D
A. 吞吐量大 B. 资源利用率高 C. 系统开销小 D. 响应及时
4.能及时处理由过程控制反馈的数据并作出响应的操作系统是( C )
A、分时系统 B、网络系统 C、实时系统 D、批处理系统
5.UNIX系统是一个____C______操作系统。
A、单用户 B、单用户多任务 C、多用户多任务 D、多用户单任务 6.在分时系统中,当用户数一定时,影响响应时间的主要因素是_B_。
A、时间片 B、调度算法 C、存储分配方式 D、作业的大小 7.Windows NT属于哪一类操作系统?B
A、单用户单任务 B、单用户多任务 C、单道批处理 D、多用户
8.多道程序设计技术是指:多道程序可同时进入 A ,在 A 的位置 B ,为使多道进程并发执行必须为每个用户作业创建进程,批处理系统由 C 创建,而分时系统由 D 创建。
选择答案:
(1)内存 (2)系统 (3)固定 (4)不定 (5)进程调度 (6)中级调度 (7) 作业调度 (8)输入进程 (9)系统调用 (10)命令解释进程
1.2 填空题
答案 A 1 B 4 C 7 D 10 1.在手工操作阶段,操作员在进行装卸卡片或磁带等手工操作时,CPU处于空闲等待,我们称这种现象
为 人机矛盾 。
2.多道批处理系统的特征为 并发?、共享、虚拟和异步 。
3.批量处理系统的缺点为 周转时间长 ; 缺乏人工干预(人机交互) 。 4.多道批处理 系统的出现,标志着操作系统的形成。
5.操作系统的基本类型有 批处理操作系统、分时系统和实时系统 。 6.分时系统的特征为 多路性、 独立性、 及时性、 交互性 四个基本特征。
7.以多道程序设计为基础的现代操作系统具有并发性 、共享性 、 虚拟性 、 异步性 。
8.计算机系统按用户指定的步骤,为用户一次上机解题所完成的工作的总和称为 作业 。
9.从资源管理的观点出发,可把操作系统分为 存储管理 、设备管理、 文件管理 、 处理机管理 和 作
业管理 五大部分。
10.单道批处理系统是在解决 人机矛盾 和 CPU与I/O设备速度不匹配 的矛盾中发展起来的。
1.3 判断题
1.分时操作系统必然建立在多道程序技术的基础之上。错
2.联机批处理解决了作业自动转接,减少了作业建立和手工操作时间。对
3.交互性是批处理系统的一个特征。错
4.解决了作业自动转接,减少了作业建立和手工操作时间。对 5.过载保护是分时系统的一个特征。错
6.多道程序的引入是为了提高CPU的利用率。对
7.多道程序技术可将一台物理CPU虚拟为多台逻辑CPU。对
8.在分时系统中,时间片越小,一个作业的总运行时间越短。错
1.4 简答题
1.研究操作系统的主要观点有那些?
答:(1)资源的观点:研究如何对计算机系统中的各种软、硬件资源进行管理;怎样使计算机系统协调一致地、有效地为用户服务;如何既发挥计算机系统资源的使用效率、提高计算机系统的服务质量,又确保计算机系统的安全可靠。
(2)用户观点:操作系统是一个黑盒子,配置了操作系统的计算机与原来真实的物理计算机迥然不同,因为它提供了用户使用计算机的更方便手段,构造了一台虚拟机,采用的操作命令决定了虚拟机的功能。
(3)进程观点:从进程角度分析操作系统,则所有进程的活动就构成了操作系统的当前行为,在每一个瞬间都有一棵进程家族树,它展示着操作系统行为主体的一个快照。
(4)模块分层观点:用模块分层观点讨论模块之间的关系或者说讨论如何形成操作系统的架构,如何安排连结这些程序模块才能构造一个结构简单清晰、逻辑正确、便于分析和实现的操作系统。 2.什么是操作系统?简述现代操作系统的特征。
答:操作系统是控制和管理计算机系统内各种硬件和软件资源、合理有效地组织计算机系统的工作,为用户提供一个使用方便可扩展的工作环境,从而起到连接计算机和用户的接口作用。 现代操作系统具有如下特征:
1并发(共行)性:指能处理多个同时性活动的能力。I/O操作和计算重叠,内存中同时存放几道用户程序,○
这些都是并发的例子。
2共享:指多个计算任务对资源的共同享用。并发活动可能要求共享资源和信息;多个用户共享一个程序的○
同一个副本,而不是分别向每个用户提供一个副本可以避免重复开发,节省人力资源。
3不确定性:指操作系统必须能处理任何一种事件序列,以使各个用户的算题任务正确地完成。 ○
3.操作系统和用户程序之间的关系是什么?
答:操作系统通过虚拟及其界面给用户程序提供各种服务,用户程序在运行过程中不断使用操作系统提供的服务来完成自己的任务。如用户程序在运行过程中需要读写磁盘,这时就要调用操作系统的服务来完成磁盘读写操作。
另一方面,用户程序不可能先于操作系统启动之前启动,因此每次启动一个用户程序,都相当于操作系统将控制转移给用户程序;而在用户程序执行完毕后,又将控制还回给操作系统。从这个角度看,操作系统是主程序,用户程序是子程序,操作系统在其生命周期内不断地调用各种应用程序。
因此操作系统和各种应用程序可以看作是互相调用,从而形成一个非常复杂的动态关系。 4.推动操作系统进化的原因有哪些?
答:推动操作系统进化的根本原因是:硬件成本的不断下降;计算机功能和复杂性的不断变化。成本降低意味着同样的价格可以买到更为先进的计算机;而复杂性的提高自然需要操作系统能力的提高。 另外,操作系统和攻击者之间的博弈也是影响操作系统发展的一个重要因素。
5.试简述操作系统的发展历史。
答:操作系统大致经历了如下几个重要阶段:
第一阶段:状态机操作系统(1940年以前)。此时计算机尚处于萌芽状态,操作系统运行在英国人贝巴斯想象的自动机上。驱动这一阶段操作系统的动力是个人英雄主义。
第二阶段:单一操作员、单一控制端操作系统(20世纪40年代)。这种单一操作员、单一控制端操作系统(SOSC,single operator,single console)的操作系统是刚出现计算机时人们能想到的最直观的控制计算机的方式,以美国宾西法尼亚大学的ENIAC计算机为代表。操作系统提供一个标准命令供用户使用,满足用户基本的人机交互需求。(串行执行) 第三阶段:批处理操作系统(20世纪50年代)。由于人操作缓慢,致使SOSC的运行效率低下,即人机矛盾,为了改变这种状况,出现了批处理操作系统,以IBM的1401和7094为代表。用户首先将自己的程序编在卡片或纸带上,交给计算机管理员,管理员在收到一定数量的用户程序后,将卡片及纸带上的程序和数据通过IBM 1401机器读入,并写在磁带上。然后,计算机操作系统将这盘磁带加载到IBM 7094上,一个个地运行用户程序,运行的结果写到另一个磁盘上。所有程序运行完毕后,将存有结果的磁盘连接到IBM 1401上输出。因此批处理操作系统就是由批处理监视器和原来的操作系统库函数组成的。(串行执行)
第四阶段:多道批处理操作系统(20世纪60年代)。批处理阶段不能很好地解决高速设备(CPU)等待低速设备(I/O)的问题。此阶段的主要目标是让CPU和I/O重叠运行,以IBM的OS 360为代表。同一时间可以运行多个程序(宏观上),但控制计算机的人还是一个,即用户将自己的程序交给计算机管理员,再由管理员负责加载运行。(并发执行)
第五阶段:分时/实时操作系统(20世纪70年代)。分时操作系统是为了解决人机交互问题而出现的,以MULTICS和UNIX为代表。用户重新回到了机器的前面,通过RS232与主机进行通信,管理自己的程序;主机给每个用户分配一定的时间片,轮流地为各个用户服务。
实时操作系统是为了解决对计算机相应时间有严格要求的临界系统或应用而产生的,以VxWorks和EMC的DART为代表。
第六阶段:现代操作系统(1980年以后)。是工作站和个人计算机出现的结果,代表性的有DOS,Windows,Unix和Linux等。这时以信息安全、网络为主要特征。 6.现代几个典型操作系统所属的类型?
答:操作系统是由于需要而产生的,它随着计算机技术本身及其计算机应用的日益发展而逐渐发展和不断完善。它的功能由弱到强,现已成为计算机系统的核心组成。经历了手工操作、早期批处理阶段、执行系统阶段、多道程序系统阶段、分时系统、实时系统、通用操作系统。进入80年代,硬件技术飞速发展以及微处理机的出现和发展,操作系统有了进一步发展,如单用户操作系统、网络操作系统、分布式操作系统及智能化操作系统。
单用户、单任务的操作系统,以DOS操作系统为代表,继CP/M操作系统之后,还出现了C-DOS、M-DOS、TRS-DOS、S-DOS和MS-DOS等磁盘操作系统。还包括Windows 3.1/3.2/95/98等版本。
多用户多道作业和分时系统,其典型代表有UNIX、XENIX、OS/2以及Windows NT及其后来版本的操作系统。
1.5 综合题
1.假设有一个支持多道程序设计的计算机系统,其中每个作业都有完全相同的属性。对一个作业,在一段计算周期T中,一半的时间用于I/O,另一半时间用于处理器操作。每个作业总共运行N段计算周期。有几个定义如下:
周期(Turnaround Time)=完成一个作业实际用的时间; 吞吐量(Throughput)=在一时间段T中完成的平均作业数;
处理器使用率(Processor Utilization)=处理器处于激活态(非等待)时间的百分比。
计算当有1,2或4个作业并发执行时的周期、吞吐量和处理器使用率,假设时间段T按一下任一种方式分布:
(1)I/O在前半段,处理器运行在后半段;
(2)将T分为4段,I/O在第1,4段,处理器运行于第2,3段。 答:(1)I/O在前半段,处理器运行于后半段 1 2 N 完成时刻 运行时间 利用率
A I/O CPU I/O CPU I/O … … CPU I/O CPU N N 50%
1 2 N