第1章 操作系统引论
1.1 简答题参考答案
1.在计算机系统上配置 OS(operating system,操作系统)的目标是什么?作用主
要表现在哪几个方面?
【参考答案】在计算机系统上配置OS,主要目标是实现:方便性、有效性、可扩充性和开
放性。
OS的作用主要表现在以下3个方面:①OS作为用户与计算机硬件系统之间的接口;②OS作
为计算机系统资源的管理者;③OS实现对计算机资源的抽象。
2.试说明 OS 与硬件、其他系统软件以及用户之间的关系。
【参考答案】OS是覆盖在硬件上的第一层软件,它负责管理计算机的硬件和软件资源,并
向用户提供良好的界面。OS与硬件紧密相关,它直接管理着硬件资源,为用户完成所有与硬件
相关的操作,极大地方便了用户对硬件资源的使用并提高了硬件资源的利用率。OS是一种特殊
的系统软件,也是其他系统软件与硬件之间的接口。其他系统软件运行在OS的基础之上,可获
得OS提供的大量服务。而一般用户使用计算机除了需要OS支持外,还需要用到大量的其他系统
软件和应用软件,以使其工作更高效。可见,在OS、硬件、其他系统软件以及用户之间存在着
图1-1-1所示的层次关系。
3.试说明推动 OS 发展的主要动力是什么。
【参考答案】推动OS发展的主要动力表现在:①计算机系统资源的利用率不断提高;②方
便用户;③器件不断更新换代;④计算机体系结构不断发展;⑤新的应用需求不断被提出。
4.在 OS 中,何谓脱机 I/O(input/output,输入 / 输出)方式和联机 I/O 方式?
【参考答案】脱机I/O方式是指事先将装有用户程序或数据的纸带或卡片装入纸带输入机或
卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上,该方式下的I/O操作
由外围机控制完成,并且是在脱离主机的情况下进行的,因此叫作脱机I/O方式。联机I/O方式是
指程序和数据的I/O都是在主机的直接控制下进行的。
5.试说明推动分时系统形成和发展的主要动力是什么。
【参考答案】推动分时系统形成和发展的主要动力是“为了更好地满足用户的需要”。其
主要表现在:①CPU(central processing unit,中央处理机)的分时使用缩短了作业的平均周转
时间;②人机交互功能的提供使用户能方便地直接控制自己的作业;③主机的共享使多个用户
(包括远程用户)能同时使用一台计算机独立地、互不干扰地处理各自的作业。
6.实现分时系统的关键问题是什么?应如何解决?
【参考答案】实现分时系统的关键问题是使用户能与自己的作业进行交互,即用户在自己
的终端上输入一条命令以请求系统服务后,系统能及时地接收并处理该命令,并在用户能接受
的时延内将结果返回给用户。
及时地接收命令和返回输出结果的实现方式是在系统中配置一个多路卡,并为每个终端配
置一个缓冲区以暂存用户输入的命令和输出的结果。因此,关键要解决的问题是确保在较短的
时间内系统中所有的用户程序都能执行一次,从而使用户输入的命令能够得到及时响应。为
此,一方面,用户作业被提交后应立即进入内存;另一方面,系统应设置一个被称为时间片的
很短的时间,并规定每个程序每次最长只能连续运行一个时间片,如果时间片用完,则不管它
是否运行完毕,都必须将CPU让给下一个作业。通过使作业分时共享CPU,所有的作业都可以
得到及时的处理,用户的请求亦可得到及时的响应。
7.为什么要引入实时系统 ?
【参考答案】实时系统是指系统能及时响应外部事件的请求,在规定的时间内完成对外部
事件的处理,并控制所有实时任务协调一致地运行。引入实时系统是为了更好地满足实时控制
领域和实时信息处理领域的需要。
8.什么是硬实时任务和软实时任务?试举例说明。
【参考答案】①硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果,如运载火箭的控制等。②软实时任务对截止时间的要求并不严格,偶尔错过任务的
截止时间,对系统产生的影响也不大,如网页内容的更新、火车售票系统剩余票数的更新等。
9.试从及时性、交互性及可靠性方面对分时系统与实时系统进行比较。
【参考答案】本题分步解答如下。
(1)从交互性方面来考虑。交互性问题是分时系统的关键问题。在分时系统中,用户可以
通过终端与系统进行广泛的人机交互,如文件编辑、数据处理和资源共享等。实时系统也具有
交互性,但在实时系统中,交互性仅限于访问系统中某些特定的专用服务程序,也就是说,它
的交互性具有很大的局限性。
(2)从及时性方面来考虑。分时系统的及时性是指用户能在很短的时间间隔内获得系统的
响应,这一时间间隔是根据人们能接受的等待时间来确定的,一般为2~3s。对实时系统来说,
及时性是它的关键问题之一,实时信息系统的及时性要求与分时系统相似,而实时控制系统的
及时性要求则是由被控制对象所要求的开始截止时间和完成截止时间决定的,一般为秒级、百
毫秒级、毫秒级,甚至更低。
(3)从可靠性方面来考虑。可靠性是实时系统的另一个关键问题,实时系统中的任何差错
都可能带来巨大的经济损失,甚至导致无法预料的灾难性后果,因此实时系统往往采取多级容
错措施来保证系统高度可靠。分时系统虽然也要求可靠,但比实时系统的要求要低。
10.微机 OS 按运行方式来分,可以分为哪几类?举例说明。
【参考答案】现在流行的微机OS按运行方式可以分为以下3类。
(1)单用户单任务OS:只允许一个用户上机(使用计算机),且只允许用户程序作为一个
任务运行,主要配置在8位和16位微机上。最具代表性的单用户单任务OS是CP/M(8位)和MSDOS(16位)。
(2)单用户多任务OS:只允许一个用户上机,但允许用户把程序分为若干个任务并发执
行,从而有效地改善了系统性能。最具代表性的单用户多任务OS是由微软公司推出的Windows
系列,如Windows 3.1、Windows 95、Windows 98等。
(3)多用户多任务OS:允许多个用户通过各自的终端使用一台机器,共享主机系统中的各
种资源,而每个用户程序又可进一步分为若干个任务并发执行,从而可以进一步提高资源利用
率和系统吞吐量。最具代表性的多用户多任务OS是UNIX系统,各种类UNIX系统(如Solaris、
Linux系统等)以及Windows NT/Server系列的系统。
11.OS 具有哪几大特征?它们之间有何关系?
【参考答案】OS具有并发、共享、虚拟和异步这4个基本特征。它们之间的关系包含以下
几个方面。①并发和共享是OS最基本的特征。为了提高计算机资源的利用率,OS必然要采用
多道程序设计技术,使多个程序共享系统的资源、并发地执行。②并发性和共享性互为存在的
条件。一方面,资源的共享是以程序(进程)的并发执行为条件的,若系统不允许程序并发执
行,就不会存在资源共享问题;另一方面,若系统不能对资源共享实施有效管理,协调好各进
程对共享资源的访问,则必将影响程序的并发执行,甚至会使程序无法并发执行。③虚拟性以
并发性和共享性为前提。为了使并发进程能更方便、更有效地共享资源,OS常采用多种虚拟技
术在逻辑上增加CPU和设备的数量以及存储器的容量,从而解决并发进程对有限系统资源的共
享问题。④异步性是并发性和共享性的必然结果。OS允许多个并发进程共享资源、相互合作,
使得每个进程的运行过程受到了其他进程的制约,不再“一气呵成”,这必然会导致异步这一
特征的产生。
12.是什么原因使 OS 具有异步特征?
【参考答案】在多道程序环境下,允许多个进程并发执行。但由于资源等因素的限制,进
程的执行通常并非“一气呵成”,而是以“走走停停”的方式进行。内存中的每个进程在何时
执行、何时暂停、以怎样的速度向前推进,都是不可预知的。故而作业完成的先后次序与进入
内存的先后次序并不完全一致,亦即进程是以异步方式运行的。但在有关进程控制及同步机制
等的支持下,只要运行环境相同,作业经多次运行都会获得完全相同的结果,因而异步方式是
允许的。因此,OS具有异步特征。
13.何谓 OS 内核? OS 内核的主要功能是什么?
【参考答案】在现代OS理论中,一般将OS划分为若干层次,再将OS的不同功能分别设置
在不同层次中。通常将一些与硬件紧密相关的模块(如中断处理程序等)、各种常用设备的驱
动程序以及运行频率较高的模块(如时钟管理模块、进程调度模块和公用基本操作模块等)都
安排在紧靠硬件的软件层次中,让它们常驻内存,进而形成了所谓的OS内核。
OS内核的主要功能有:①支撑功能,包括中断处理、时钟管理和原语操作等;②资源管理
功能,包括进程管理、存储器管理、设备管理等。
14.何谓原语?何谓原子操作?
【参考答案】原语,是指由若干条指令组成的,用于完成一定功能的一个过程。原子操
作,是指一个操作中的所有动作要么全做,要么全不做,换言之,它是一个不可分割的基本单
位。因此,原语在执行过程中是不允许被中断的。原子操作在内核态下执行,常驻内存。
15.简要描述处理机的双重工作模式。
【参考答案】一般地,处理机至少需要两种单独运行模式:用户态和内核态。
(1)用户态也称为目态,计算机硬件可以通过一个模式位为1来表示它。当计算机系统执
行用户程序时,系统处于用户态。
(2)内核态也称为管态或系统态,计算机硬件可以通过一个模式位为0来表示它。每当OS
能够控制计算机时,它就处于内核态。例如,当用户程序通过系统调用请求OS服务时,系统必
须从用户态切换到内核态,以响应请求。
16.简述中断处理过程。
【参考答案】一旦CPU响应中断,系统就会开始进行中断处理。中断处理过程主要包括以
下3步。
(1)保护被中断进程的现场。为了在中断处理结束后能使进程正确地返回中断点,系统必
须保存当前处理机状态字和程序计数器的值。
(2)分析中断原因,转去执行相应的中断处理程序。在多个中断请求同时发生时,处理优
先级最高的中断源所发出的中断请求。
(3)恢复被中断进程的现场,CPU继续执行被中断的原进程。
17.处理机管理有哪些主要功能?它们的主要任务是什么?
【参考答案】处理机管理的主要功能有进程管理、进程同步、进程通信和处理机调度。各
部分的主要任务为:①进程管理,为作业创建进程,撤销已结束进程,控制进程在运行过程中
的状态转换;②进程同步,协调多个进程(含线程)的运行;③进程通信,实现在相互合作
的进程之间进行信息交换;④处理机调度,包括作业调度和进程调度。作业调度是按照一定的算法从后备队列里选出若干个作业,为它们分配运行所需的资源;进程调度是按照一定的
算法从进程的就绪队列中选出一个进程,把处理机分配给它,并设置运行现场,使进程投入
执行。
18.内存管理有哪些主要功能?它们的主要任务是什么?
【参考答案】内存管理的主要功能有内存分配、内存保护、地址映射和内存扩充。各部分
的主要任务为:①内存分配,为每道程序分配内存;②内存保护,确保每道程序仅在自己的内
存空间运行,彼此互不干扰;③地址映射,将地址空间的逻辑地址转换为内存空间对应的物理
地址;④内存扩充,即从逻辑上扩充内存,实现请求调入功能和置换功能等。
19.设备管理有哪些主要功能?它们的主要任务是什么?
【参考答案】设备管理的主要功能包括缓冲管理、设备分配、设备处理以及设备虚拟等。
各部分的主要任务为:①完成用户提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定
的I/O操作;②提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用I/O设备。
20.文件管理有哪些主要功能?它们的主要任务是什么?
【参考答案】文件管理的主要功能有:文件存储空间的管理、目录管理、文件的读/写管理
和保护。其主要任务是对用户文件和系统文件进行管理以方便用户使用,并保证文件安全。
21.现代 OS 的新功能有哪些?
【参考答案】现代OS是在传统OS的基础上发展而来的,它除了具有传统OS的功能外,还
具有保障系统安全、支持用户通过联网获取服务和可处理多媒体信息等功能。
22.什么是微内核 OS ?它具有哪些优点?
【参考答案】微内核OS具有如下4个特征:①足够小的内核;②基于客户/服务器模式;
③应用策略与机制分离原则;④采用面向对象技术。
微内核OS的主要优点包括:①提高了系统的可扩展性;②增强了系统的可靠性和可移植
性;③提供了对分布式系统的支持;④融入了面向对象技术。
23.外核 OS 的基本思想是什么?
【参考答案】外核OS的基本思想是:内核不提供传统OS中的进程、虚拟存储等抽象事物,
而是专注于物理资源的隔离(保护)与复用。具体来说,在基于外核结构的OS中,内核负责保
护系统资源,而硬件资源的管理职责则委托给了应用程序,这样,OS就可以做到在保证资源安
全的前提下,减少对应用程序的限制,充分满足应用程序对硬件资源的不同需求。
24.什么是系统调用?系统调用与一般用户程序和库函数有何区别?
【参考答案】系统调用是OS提供给程序员的唯一接口。程序员利用系统调用,在源程序层
面动态请求和释放系统资源,并调用系统中已有的系统功能来完成那些与机器硬件部分相关的
工作以及控制程序的执行速度等。因此,系统调用像一个“黑箱子”,对用户屏蔽了OS的具体
动作而只提供有关的功能。
系统调用与一般用户程序、库函数的区别在于:①系统调用(程序)在内核态执行,调用
它们时需要一个类似于硬件中断处理机制的中断处理机制来提供系统服务;②普通的用户程序
是直接为用户完成某特定功能而设计的,它们一般在用户态执行;③库函数是把函数放到库里
供别人使用的一种方式,是面向应用开发、方便人们编程的。
1.2 计算题参考答案
25.设有 3 道程序 A、B、C,它们按照优先次序(A → B → C)顺序执行,它们的
计算时间和 I/O 操作时间如表 1-1-1 所示,假设 3 道程序以串行方式使用相同的设备进行
I/O 操作,试画出单道程序运行和多道程序运行的时间关系图,并计算完成这 3 道程序所须
花费的时间。
表1-1-1 时间表
程序
时间(ms)
计算 I/O操作 计算
A 30 40 10
B 60 30 10
C 20 40 20
【参考答案】计算时间时,CPU处理时间,I/O操作时间是输入与输出时间。3个程序共享I/
O设备,即串行使用I/O设备。
(1)单道程序运行时,3道程序串行执行,即先执行A、再执行B、最后执行C,时间关系
图如图1-1-2所示。
单道程序运行时,3道程序使用的时间为:(30+40+10)+(60+30+10)+(20+40+20)
=260ms。 (2)多道程序运行时,3道程序的计算与I/O操作可部分并行,分为非立即抢占式和立即抢
占式两种,时间关系图如图1-1-3和图1-1-4所示。
多道程序运行时,3道程序非立即抢占式的总时间为180ms,立即抢占式的总时间为
190ms。
26.(考研真题)一个多道批处理系统中仅有 P1 和 P2 两个作业,P2 比 P1 晚 5ms 到达,
它们的计算和 I/O 操作顺序如下。
P1 :计算 60ms,I/O 操作 80ms,计算 20ms。
P2 :计算 120ms,I/O 操作 40ms,计算 40ms。
不考虑调度和切换时间,请计算完成两个作业需要的最少时间。
【参考答案】作业执行时间关系图如图1-1-5所示。由于在多道批处理系统中,P1与P2可
以部分并行,因此,P1先到达系统,其会先占用CPU进行计算(到60ms),然后执行I/O操作
的时间是60ms~140ms;而在P1执行I/O操作的过程中,P2可获得CPU运行120ms,到180ms结
束;当P1执行完它的I/O操作后,执行计算,此时CPU正被P2占用,因此P1须等P2执行完后才能
获得CPU执行剩余的20ms,执行完成后退出系统;此时,P2会执行I/O操作40ms,到220ms;
最后P2获得CPU运行剩余的40ms(计算),到260ms结束。由图1-1-5可知,完成两个作业需要
的最少时间为260ms。
1.3 综合应用题参考答案
27.OS 的概念、特征和功能是什么?
【参考答案】该问题分步解答如下。
(1)OS是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度以方便用户
使用计算机的程序集合。OS是配置在计算机硬件上的第一层系统软件,是对硬件系统的首次扩
充;是硬件系统和应用软件间的桥梁;是用户与计算机硬件进行交互的接口;是计算机系统资
源的管理者。
(2)OS的4个特征:并发、共享、虚拟、异步。①并发:一段时间间隔内多个进程(线
程)并发执行,是宏观上的并行,微观上的串行。②共享:系统中的资源可供内存中多个并发
执行的进程或线程共同使用。③虚拟:通过某种技术将物理实体变为若干个逻辑上的对应物。
④异步:进程以人们不可预知的速度向前推进,每次运行只要环境相同,则结果必定一致。
(3)OS的5大功能:处理机管理、存储器管理、设备管理、文件管理、接口管理。①处理机管理:进程(线程)是处理机调度的单位,因此对外理器的管理实际上是对进程(线程)的
管理。②存储器管理:内存的分配与回收、地址转换、虚拟内存的实现等。③设备管理:设备
的分配与回收、缓冲区管理、磁盘调度、设备虚拟等。④文件管理:文件存储空间的管理、文
件目录管理、文件共享与保护等。⑤接口管理:用户接口、程序接口、命令接口和网络接口。
28.(考研真题)若某计算问题的执行情况如图 1-1-6 所示。
则请回答下列问题。
(1)叙述该计算问题中处理机、输入机和打印机是如何协同工作的。
(2)计算在图 1-1-6 所示执行情况下处理机的利用率。
(3)简述处理机利用率不高的原因。
(4)请画出能提高处理机利用率的执行方案。
【参考答案】(1)处理机、输入机和打印机是按照输入→处理→打印的顺序依次执行的,
输入机为处理机提供数据,处理机得到数据后进行处理,处理结果通过打印机打印输入。输入
机读取一批数据,花费时间为100;处理机对这批数据进行计算,花费时间为20;打印机打印计
算结果,花费时间为40。 (2)处理机的利用率=[20/(100+20+40)]×100%=12.5%。 (3)当一道程序在运行中发出I/O请求后,处理机只能处于等待状态,即必须等I/O完成后
才能继续运行,因此处理机会长时间处于空闲状态,这会导致其利用率不高。
(4)采用多道程序设计技术使处理机、输入机和打印机并行工作,可以提高处理机的利用
率,如图1-1-7所示。