操作系统习题解答

  • 格式:doc
  • 大小:255.00 KB
  • 文档页数:43

如有你有帮助,请购买下载,谢谢!

0页 《操作系统》习题解答

习题1

1.术语解释

裸机 虚拟机 操作系统 程序接口

命令接口 非特权指令 特权指令 核心态

用户态 系统调用 微内核 批处理系统

分时 实时 指令的执行周期 中断

中断源 中断请求 中断屏蔽 中断禁止

GPL POSIX 时间片

答案:

·未配置任何软件的计算机称为“裸机”。

·在裸机上安装一层软件,使机器的功能得以扩展,这时展现在用户面前的“机器”,就是所谓的虚拟机。

·操作系统是控制和管理计算机硬件和软件资源、合理地组织计算机工作流程以及方便用户使用计算机的一个大型系统软件。

·在用户编写的程序中,可使用系统调用命令获得操作系统提供的各种功能服务,这是操作系统在程序一级给予用户的支持,称其为程序接口。

·用户可使用操作系统提供的各种操作命令,通过键盘(或鼠标)控制和完成程序的运行,这是操作系统在作业控制一级给予用户的支持,称为命令接口。

·操作系统和用户程序都能使用的硬指令,称为非特权指令。

·只能由操作系统使用的硬指令,称为特权指令。

·所谓核心态,是指CPU处于可执行包括特权指令在内的一切机器指令的状态。

·所谓用户态,是指CPU处于只能执行非特权指令的状态。

·操作系统里预先编制了很多不同功能的子程序。用户在自己的程序里调用这些子程序,以求得操作系统提供的功能服务。就把这些功能服务子程序称为“系统功能调用”程序,简称“系统调用”。

·微内核即是把操作系统的内核分为基本功能和非基本功能两部分,在内核里只保留基本功能部分,在核心态下运行;非基本功能部分则从内核剥离下来,让它们以各种服务的形式,在用户态下运行。这一的操作系统内核,称为微内核。

·若在某系统中,用户作业被分批处理,在处理一批的过程中不允许用户与计算机发生交互作用,即使作业在运行中出现错误,也只能等到整批作业处理完毕后在机下修改。这样的系统,就是所谓的“批处理系统”。

·所谓分时,即指多个用户通过各自的终端同时访问系统,由操作系统控制每个用户程序以很短的时间为单位交替执行。

·所谓实时,是指能够及时响应随机发生的外部事件并对事件做出快速处理的一种能力。

·一个单一的指令需要的处理过程,称为指令的一个“执行周期”。

·所谓“中断”,是指在CPU执行程序过程中,由于内部或某个外部事件的发生,让CPU暂时中止正在执行的程序而转向该突发事件的处理,处理完毕后返回被中止的程序继续执行的这样一个处理过程。

·凡能引起中断的设备或事件均称为“中断源”。 如有你有帮助,请购买下载,谢谢!

1页 ·中断源向CPU发出中断信号,称为中断请求。

·中断屏蔽是指在提出中断请求后,CPU不予响应的情况。

·中断禁止是指在可能引起中断的事件发生时,系统不接收该中断信号,使之不可能提出中断请求或导致中断。

·GPL是“通用公共许可协议(General Public License,的缩写)”,其意是要求整个系统的源代码可以自由获取,并且在GPL许可的范围内自由修改、传播。

·POSIX(Portable Operating System Interface for Computing Systems,的缩写),是由IEEE和ISO/IEC开发的一系列标准。该标准基于已有Unix的实践和经验,描述系统调用的服务接口,并保证编制的应用程序可在多种操作系统上以源代码一级的形式进行移植和运行。

·指程序在被中断前可以执行的最大时间段。

2.为了管理系统中的各种资源,需要共同解决的问题是哪些?

答:计算机系统拥有四类资源:处理机(即CPU),存储器,外部设备,程序和数据。前三种属于硬资源,后一种属于软资源。

在计算机的运行过程中,对每种资的管理,需要共同解决的问题是:

(1)记住资源当前状态:是否被使用,谁在使用。

(2)制定资源分配策略:如何分配,何时分配,分配多少,应该分配给谁。

(3)实施资源分配:根据分配策略完成分配。

(4)完成资源回收:使用结束收回资源,以便进行下次分配。

3.应用程序与系统程序有什么区别?

答:可把软件大致划分为应用软件和系统软件两类。应用软件是为解决某类需要或某个特定问题而编制的程序,它涉及计算机应用的各个领域。系统软件不是针对特定需要或特殊问题编制的程序,而是对计算机系统的资源实施管理、控制,为其他程序的运行提供支持和服务的通用软件,系统软件都是由计算机生产厂家提供的。

4.CPU的核心态与用户态有何区别?

答:当CPU处于核心态时,可以执行包括特权指令在内的一切机器指令;当CPU处于用户态时,禁止使用特权指令,只能执行非特权指令。如果在用户态下发现取到了一条特权指令,中央处理机就会拒绝执行,产生“非法操作”中断。

5.操作系统的单内核模式和微内核模式有什么区别?

答:单内核模式也称集中模式或整体模式,整个系统是一个大的模块。这时,操作系统提供的工作流程是应用主程序用给出的参数值去执行操作系统中的各种系统调用命令。由于完全实行内部调用,因此运行效率极高。但因其源代码是一个整体,因此各模块间的界限不很清晰,调用极为随意。这样,在为内核程序的修改和升级带来极大麻烦。

微内核模式则是把操作系统的内核分为基本功能和非基本功能两部分,内核里只保留基本功能部分,在核心态下运行;非基本功能部分则从内核剥离下来,让它们以各种服务的形式,在用户态下运行。这时内核的主要功能是在客户程序和运行在用户空间的各种服务(属系统程序)之间进行通信,客户程序和各种服务之间不会直接交互,而是必须通过内核的消息交换才能完成相互通信。这种模式的优点是内核小,便于系统的扩充和修改。

6.根据例1-3的数据,分别对单道程序设计和多道程序设计最终完成对表1-2的填写。

表1-2 例1-3中不同情况下的资源利用统计

单道程序设计 多道程序设计

处理器使用 20% 40%

存储器使用 33% 67%

磁盘使用 33% 67%

打印机使用 33% 67% 如有你有帮助,请购买下载,谢谢!

2页 总共运行时间 30分钟 15分钟

吞吐量 6个作业/小时 12个作业/小时

注:所谓一个系统的吞吐量,是指系统在单位时间(通常为小时)内处理的作业数。

7.在分时系统和实时系统中,其响应时间分别是由(E)和(F)来确定的。

A.时间片大小 B.用户数目 C.计算机运行速度 D.实时调度

E.用户所能忍受的等待时间 F.控制对象所能接受的延时

8.试问,在分时系统中用户数是100个,为保证响应时间不超过2秒,所设定的时间片的最大值应为多少?

答:应为20ms。

9.在一个分时操作系统中,用户提交了一个作业,其执行流程是:申请存储区→计算,并将结果暂存于主存→请求打印机→将主存中内容在打印机上输出→释放打印机→归还占用的存储区→结束。试从资源管理的观点分析该作业从提交到结束,操作系统为其提供服务涉及到的各个功能模块。

答:第1,通过存储管理,为其分配所需存储区;第2,通过处理机管理将CPU分配给它,完成作业计算,并将计算结果存入主存;第3,通过设备管理,把打印机分配给该作业;第4,执行打印机驱动程序,驱动打印机进行打印;第5,打印机完成打印,发出中断信号,请求CPU处理;第6,CPU响应中断,执行打印机中断处理程序,并释放打印机;第7,通过存储管理,回收存储区;第8,撤销该作业。

10.为进行单道批处理系统和多道批处理系统的特点,请完成表1-3的填写。

表1-3 单道批处理和多道批处理的特性比较

单道批处理系统 多道批处理系统

主存中驻留程序的个数 一道 多道

占用CPU的情况 独占 交替占用

是否需要对用户作业进行调度 不需要 需要

程序完成次序与其进入主存次序间的关系 严格对应 不严格对应

11.在批处理和分时系统相结合的操作系统中,为什么要引入“前台”和“后台”作业的概念?

答:通常,将终端用户作业作为前台作业,将批处理作业作为后台作业。这样的搭配,一方面可以保证系统及时响应前台用户作业的操作请求,并使其得到及时的处理。而作为批处理的后台作业,则只是利用系统不处理前台作业的空闲时间,在CPU上运行,从而达到提高CPU利用率的目的。

12.就CPU的利用率的高低,对手工操作、单道批处理、多道批处理和多用户分时系统进行排序。

答:手工操作阶段,没有操作系统进行管理,大量时间是机器等人,因此CPU的利用率最低。

单道批处理系统与手工操作相比,提高了系统自动化处理的程度。但由于主存内只有一道作业程序,CPU与I/O只能串行工作,所以CPU的利用率仍然很低。

多用户分时系统属于多道程序系统,比起手工操作和单道批处理来,它的CPU利用率较高。但由于系统的交互性和及时性要求,CPU必须在多个用户程序之间进行切换,从而增加了系统的额外开销。

多道批处理系统完全自动处理各个用户的程序,只有在程序等待某事件发生时,才会产生程序间的切换,因此系统花费在程序间切换上的开销,要远小于多用户分时系统。因此,它是这四种系统中CPU利用率最高的系统。 如有你有帮助,请购买下载,谢谢!

3页 习题2

1.术语解释

并发 并行 进程 用户进程

系统进程 创建状态 就绪状态 运行状态

阻塞状态 终止状态 就绪/挂起状态 阻塞/挂起状态

进程控制块PCB 进程映像 原语 线程

用户级线程 线程库 内核级线程 位图

答案:

·所谓“并发”,是指从宏观上看在一段时间内有多个程序在同时运行,而从微观上看这些程序是在交替运行。或所谓“并发”,是指逻辑上相互独立的几个应用程序,同时处于活动状态,并竞争使用系统中的各种资源(如CPU、内存、硬设备等)。

·所谓“并行”,是指多个程序在同一时刻运行。

·所谓“进程”是指一个程序在给定数据集合上的一次执行过程,是系统进行资源分配和运行调度的独立单位。

·操作系统中用于管理系统资源的那些可以并发执行的程序,构成了一个个系统进程,它们提供系统的服务,分配系统的资源

·可以并发执行的用户程序段,形成了一个个用户进程,它们是操作系统的服务对象,是系统资源的实际的享用者。

·创建状态:一个进程正在初创时期,操作系统还没有把它列入到可执行的进程行列中。

·就绪状态:一个进程已经具备运行的条件,只要有机会获得CPU就可以投入运行。

·运行状态:一个进程获得了CPU正在被执行中。假定系统中只有一个CPU,因此任何时候最多只有一个进程处于运行状态。

·阻塞状态:进程正在等待某个事件(比如I/O的完成)的发生,在事件到来之前,即使把CPU分配给这个进程,它也无法运行。

·终止状态:一个进程或正常结束,或因某种原因被强制结束。这时,系统正在为其进行善后处理。

·就绪/挂起状态:进程在辅存,只要被激活,进程就可以调入内存,如果获得CPU就可以投入运行。

·阻塞/挂起状态:进程在辅存等待事件的发生。只要被激活,进程就可以调入到内存里去等待事件的发生。

·为了便于管理和控制进程的执行,为了随时刻画进程的动态特性,为了反映进程间的相互关系,操作系统就用一个与进程有关的数据结构来完成这样的任务。这个数据结构就称为“进程控制块(PCB)”。