操作系统抢分攻略 真题分类分级详解

978-7-115-62460-4
作者: 海贼宝藏
译者:
编辑: 李莎

图书目录:

详情

 本书面向参加计算机相关专业的硕士研究生招生考试(以下简称计算机考研)的考生,以全国硕士研究生招生考试计算机学科专业基础(以下简称全国统考)的考试大纲中“操作系统”部分的内容为依据,在研究、分析全国统考和院校自主命题考试的历年真题及其命题规律的基础上编写而成。   本书就全国统考的考试大纲进行了深入解读,提供了应试策略,并根据“操作系统”所涉及考点的知识体系分章讲解,每章以“知识点分类+经典例题精解”的形式,剖析了常考题型、命题特点及解题方法,帮助考生掌握解题思路与解题技巧。此外,章末提供了“过关练习”,供考生进行自测练习。本书还提供了面向“操作系统”的2套全真模拟题,供考生实战演练。   本书适合参加计算机考研(包括全国统考和院校自主命题考试)的考生备考学习,也适合作为计算机相关专业学生的学习用书和培训机构的辅导用书。

图书摘要

版权信息

书名:操作系统抢分攻略:真题分类分级详解

ISBN:978-7-115-62460-4

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。


版  权

组  编 海贼宝藏

编  著 胡 光 宿叶露 孟 迪

责任编辑 李 莎

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315

内 容 提 要

本书面向参加计算机相关专业的硕士研究生招生考试(以下简称计算机考研)的考生,以全国硕士研究生招生考试计算机学科专业基础(以下简称全国统考)的考试大纲中“操作系统”部分的内容为依据,在研究、分析全国统考和院校自主命题考试的历年真题及其命题规律的基础上编写而成。

本书就全国统考的考试大纲进行了深入解读,提供了应试策略,并根据“操作系统”所涉及考点的知识体系分章讲解,每章以“知识点分类+经典例题精解”的形式,剖析了常考题型、命题特点及解题方法,帮助考生掌握解题思路与解题技巧。此外,章末提供了“过关练习”,供考生进行自测练习。本书还提供了面向“操作系统”的2套全真模拟题,供考生实战演练。

本书适合参加计算机考研(包括全国统考和院校自主命题考试)的考生备考学习,也适合作为计算机相关专业学生的学习用书和培训机构的辅导用书。

前  言

 本书主旨

“操作系统”是计算机学科的基础课程,也是计算机考研(包括全国统考和院校自主命题考试)涉及的重要内容。学好操作系统不仅有助于了解操作系统的工作原理,能更好地应对计算机考研,更有助于提高解决问题的能力,这对考生的个人成长大有裨益!

在计算机考研中,由于题量大、涉及的知识点多,不少考生难以抓住重点,导致考试成绩不理想。因此,为了帮助莘莘学子在较短的时间内掌握复习要点及解题方法,提高应试分数,我们深入研究与剖析计算机考研中的历年考点与考题,以新发布的全国统考大纲为蓝本,以计算机考研中的重点和难点为主线,精心编写了本书。

 主要学习目标

全国统考的考查内容包括4部分——数据结构、计算机组成原理、操作系统和计算机网络,重点考查考生掌握相关基础知识、基本理论的情况,以及分析问题、解决问题的能力。

根据全国统考大纲对于“操作系统”部分的考查要求,本书主要帮助考生达成以下学习目标。

(1)掌握操作系统的基本概念、基本原理和基本功能,理解操作系统的整体运行过程。

(2)掌握操作系统进程、内存、文件和I/O管理的策略、算法、机制以及相互关系。

(3)能够运用所学的操作系统原理、方法与技术分析问题和解决问题,并能利用高级程序设计语言(如C语言)描述相关算法。

 本书主要特色

(1)紧扣全国统考大纲,明确复习要点,减少复习时间。

本书深入研究全国统考和各院校自主命题考试的相关真题,依据全国统考大纲分类提炼考点,不仅有清晰的知识结构,而且准确地对各考点进行考情分析,归纳有效的学习方法,帮助考生抓住复习重点,提高复习效率。

(2)详细讲解大量真题和例题,揭示命题思路,点拨应试技巧。

对于每一考点注重结合不同的题型,采取以题带点、以点带面的方式进行讲解。所用题目为精选的相应历年真题或精心编写的典型例题,考生不仅能在学习解题的过程中巩固所学知识,而且能熟悉各种题型的解题思路与命题特点,从而有效提高应试能力。

(3)提供特色小栏目,直击命题要点,提高应试技能。

书中提供“知识链接”“误区警示”“解题技巧”“高手点拨”4个小栏目。其中,“知识链接”主要给出题目中涉及知识点的概念、理论,便于考生回顾考点,加深对知识的理解;“误区警示”主要用于点拨考生易犯的答题错误;“解题技巧”主要提供快速解题的方法和答题技巧;“高手点拨”主要是总结解题方法和归纳重点、难点。

(4)各章末尾均提供“过关练习”,考生可加以练习,提高解题能力。

在各章末尾,按该章考点所涉及的不同题型提供过关练习题。这些练习题是根据计算机考研的命题特点进行精心设计的。考生通过完成这些高质量的练习题,并与书中所提供的参考答案进行对照和检验,不仅可以巩固所学知识,还可进一步掌握重点、攻克难点,并能举一反三。

 怎样使用本书

若要更好地使用本书进行备考,建议阅读以下提示。

(1)充分了解计算机考研的要求,明确复习思路。建议考生在充分了解全国统考大纲的考查要求后,跟随本书复习考查重点,掌握解题思路和解题技巧,提高应试能力。

(2)抓住计算机考研的重点,有的放矢。不主张考生采用题海战术,因为并不是练习题做得越多就越好。考题的要求虽然会千变万化,但是考查的重点与方式基本不变。因此,考生应注意对各种知识点进行归纳总结,并全面提高自己的记忆能力,这样在复习时才能抓住重点,掌握解题要领,以不变应万变。

 说明

对于本书的选择题,若无特殊说明,均为单项选择题。

在本书的编写与出版过程中,尽管编者精益求精,但水平有限,书中若有不足之处,恳请广大读者批评指正,联系邮箱为wangxudan@ptpress.com.cn。

最后,我们相信一分耕耘,一分收获。衷心祝愿本书的每一位读者都能开卷有益,更上一层楼!

编 者

考纲分析与备考策略

一、考试简介

全国硕士研究生招生考试是指教育主管部门和招生机构为选拔研究生而组织的相关考试的总称。考试分初试和复试两个阶段进行。初试由国家统一组织,复试由招生单位自行组织。

初试一般设置4个考试科目,分别是思想政治理论、外语、业务课一和业务课二,满分分别为100分、100分、150分和150分。初试方式均为笔试,考试的第一天上午考查思想政治理论,下午考查外语;第二天上午考查业务课一(数学或专业基础课),下午考查业务课二(专业课)。每一科目考试时长均为3小时。

对于计算机考研而言,业务课一是数学,业务课二则根据学校或专业的不同,考查内容也会不同。目前来看,越来越多的学校对计算机或信息相关专业的业务课二,偏向于选择全国统考,也有一部分学校是自主命题。因而,考生在备考业务课二之前,要先明确所报考院校的考查科目和考查内容。例如,在中国海洋大学2023年的硕士研究生招生考试中,计算机科学与技术专业(专业代码为081200)的业务课二考查的是计算机学科专业基础,而保密科学与技术专业(专业代码为0812Z1)的业务课二则考查计算机网络与安全;在中南大学2023年的硕士研究生招生考试中,计算机科学与技术专业(专业代码为081200)的业务课二考查的是数据结构。

二、考试方式

全国统考主要考查计算机科学与技术领域的核心知识和技能,旨在培养学生在该领域的研究和应用能力。考试内容较为广泛,包括计算机科学与技术的基础理论、专业知识和应用技术,涉及了数据结构、计算机组成原理、操作系统和计算机网络4部分内容。

答题方式为闭卷、笔试;考试时间为180分钟;试卷满分为150分,其中数据结构45分、计算机组成原理45分、操作系统35分、计算机网络25分;试卷题型结构为选择题80分(40小题,每小题2分),综合应用题70分。

在全国统考中,操作系统的总体分值一般是35分,约占总分的23%。具体考查的题型与题量及分值如下表所示。

题型与题量

选择题

综合应用题

10道(第23~32题)

2道(第45、46题)

分值/题

2分

7分(第45题)、8分(第46题)

总分

20分

15分

合计

35分

一些自主命题院校会有所不同,以中国计量大学信息工程学院的2023年硕士研究生招生考试为例,其考查的专业课为数据结构和操作系统,其中操作系统占70分,其具体的题型与题量及分值如下表所示。

题型与题量

选择题

综合应用题

15道(第16~30题)

3~4道(第33~35或36题)

分值/题

2分

10分或20分

总分

30分

40分

合计

70分

而在哈尔滨工程大学软件工程专业的2023年硕士研究生招生考试中,考核的也是数据结构与操作系统,其中操作系统占60分,其具体的题型占题量及分值如下表所示。

题型与题量

选择题

填空题

综合应用题

10道

10道

4道

分值/题

1分

1分

10分

总分

10分

10分

40分

合计

60分

再次强调,考生在备考前一定要了解自己心仪院校相关专业业务课二的考查内容及分数的分配情况,从而协调分配自己的复习时间,以达到高效复习的目的。

三、考试大纲解读

在全国统考中,对操作系统部分的考查目标如下。

(1)掌握操作系统的基本概念、基本原理和基本功能,理解操作系统的整体运行过程。

(2)掌握操作系统的进程、内存、文件和I/O管理的策略、算法、机制以及相互关系。

(3)能够运用所学的操作系统原理、方法与技术分析问题和解决问题,并能利用C语言描述相关算法。

1.考查要点概览

根据新版的全国统考大纲,操作系统部分的主要考查内容是:操作系统概述、进程管理、内存管理、输入/输出管理、文件管理。其中输入/输出管理也是我们常说的I/O管理或者设备管理,为了方便读者阅读,在本书中统一称为I/O管理。

基于历年真题的分析,总结出常考知识点的分布情况,如下页表所示。

内容

考试大纲要求

历年高频考点

分值比例

复习重要程度

一、操作系统概述

了解操作系统结构、虚拟机;理解操作系统引导过程、操作系统发展历程;掌握操作系统的基本概念,了解程序运行环境

1.操作系统的概念、特征和功能

2.内核态与用户态

3.中断、异常

4.系统调用

12.7%

★★

二、进程管理

了解进程与线程的基本概念;理解线程的实现,进程与线程的组织与控制,进程间通信,锁,调度的基本概念、目标和实现,调度器,上下文及其切换机制,死锁的基本概念以及检测与解除;掌握进程和线程的基本方法、进程/线程的状态与转换、同步与互斥的基本概念以及基本实现方法、死锁预防;重点掌握信号量和经典同步问题、典型调度算法、死锁避免

1.进程与线程

2.进程状态与进程控制

3.处理机调度

4.进程同步与互斥

5.经典同步问题

6.死锁

7.管程

36.9%

★★★

三、内存管理

理解内存管理的基本概念、连续内存分配、段页式管理、内存映射文件、抖动、虚拟存储器的性能影响因素及改进方法;掌握页式管理和段式管理;重点掌握请求页式管理和页置换算法

1.内存管理的概念

2.连续分配管理方式

3.非连续分配管理方式

4.虚拟页式存储管理

5.抖动

24.5%

★★★

四、I/O管理

了解设备的基本概念、输入/输出应用程序接口、设备驱动程序接口、固态磁盘;理解I/O软件层次结构、设备分配与回收;掌握I/O控制方式、假脱机技术;重点掌握磁盘相关知识点

1.磁盘组织与管理

2.I/O软件的层次结构

3.I/O调度与缓冲区

4.设备分配与回收

9.6%

五、文件管理

了解文件的基本概念、文件的操作、文件系统的全局结构、文件系统挂载;理解文件元数据和索引节点、文件保护、目录的基本概念、虚拟文件系统;掌握树形目录、目录的操作、硬链接和软链接;重点掌握文件的逻辑结构和物理结构、外存空闲空间管理方法

1.目录结构

2.文件共享和文件保护

3.文件的操作

4.文件实现

16.3%

★★

大家可以看到,进程管理分值比例超过了35%,所以在本书中,我们把进程管理的内容划分为两章来讲解,分别是第二章的“进程管理”和第三章的“处理机调度与死锁”。

2.命题趋势分析

2021年发布的2022年全国统考大纲是操作系统考查内容变化的一个转折点。

这次的大纲修订,主要强调了考生对操作系统整体运行过程的理解,因而考生要更加全面地理解计算机操作系统,而不是只关注具体的考点。这个变化在真题中也有所体现,题目的综合性更强,考生需要提高综合运用所学知识的能力,才能准确答题。其次,新增了外核、操作系统引导、虚拟机、线程、文件系统挂载、固态硬盘等考点。这些新增考点,虽然不是核心考查内容,但增大了操作系统考查内容的广度。

四、应试经验与解题技巧

考生若想在考试中取得好成绩,除了需要牢固掌握知识点外,还需要快速、准确地对一些题目作出判断和处理。因此,考生平时要多归纳和总结一些通用的答题技巧,这有助于考生更好地应对考试,提高复习效率。

1.关键词法

在全国统考中,因为时间有限,在选择题作答过程中,应做到尽快确定答案,然后稍作验证和确认,将更多的时间留给综合应用题的作答。如果能够抓住题目和选项中的关键词,就能快速锁定可能的答案,锁定答案之后,再将答案和题干一起验证,确保正确即可,没有必要花费过多的时间在其他选项上。

【全国统考2014】下列调度算法中,不可能导致饥饿现象的是(  )。

A.时间片轮转

B.静态优先级调度

C.非抢占式短任务优先

D.抢占式短任务优先

【解析】本题主要考查调度算法。

本题的关键词是“饥饿”,考生在读到这个关键词之后,应该马上想到“有优先,就会有饥饿”,也就是在学习的过程中,要将“饥饿”这个关键词与“优先”这个关键词绑定在一起。那么根据关键词法的技巧,就可以初步锁定答案——A选项。进一步验证,时间片轮转算法的特点是将CPU时间片分为一个一个时间片,每个就绪进程轮流执行,每个进程都会在一次调度周期内得到执行,确实不会产生饥饿现象。所以,确定A选项为正确答案。

【答案】A

2.理解易混淆的知识点

在全国统考中,有很多知识点相互关联,但各有侧重点。考生在准备不充分的时候,往往会混淆这些概念,导致无法正确答题。这就要求考生在复习阶段,对这些易混淆的概念重点掌握,明确其区别。

【全国统考2015】若系统S1采用死锁避免方法,S2采用死锁检测方法。下列叙述中,正确的是(  )。

Ⅰ.S1会限制用户申请资源的顺序,而S2不会

Ⅱ.S1需要进程运行所需资源总量信息,而S2不需要

Ⅲ.S1不会给可能导致死锁的进程分配资源,而S2会

A.仅Ⅰ、Ⅱ

B.仅Ⅱ、Ⅲ

C.仅Ⅰ、Ⅲ

D.Ⅰ、Ⅱ、Ⅲ

【解析】本题主要考查死锁避免、死锁检测、死锁预防的概念。

S1采用的是死锁避免方法,Ⅰ限制用户申请资源的顺序,也就是顺序资源分配法,这是为了破坏“循环等待条件”,属于死锁预防的范畴,并非死锁避免;死锁避免的方法主要采用的是银行家算法,所以需要知道进程运行所需资源的总量信息,在分配资源时,会进行安全检查,如果资源分配可能导致死锁,则不会给进程分配资源。S2采用死锁检测方法,死锁检测对资源分配不作限制,而是对是否发生死锁进行检测,进而决定如何解除死锁。综上所述,Ⅱ、Ⅲ叙述正确,正确答案是B选项。

【答案】B

3.理解操作系统的动态变化

操作系统是动态运行的,它在不同的情况下会以不同的方式运行和响应。仅仅掌握操作系统的静态概念是不够的,因为真实的操作系统在不同的负载、并发和资源分配条件下会有不同的行为。操作系统的调度算法、内存管理、进程同步等方面的问题通常涉及操作系统在实时环境中的行为。只有通过理解操作系统如何根据不同的负载情况调整资源分配、调度任务及处理各种竞争条件,才能正确地回答与操作系统实际运行相关的问题。

【全国统考2017】下列有关基于时间片的进程调度的叙述中,错误的是(  )。

A.时间片越短,进程切换的次数越多,系统也越大

B.当前进程的时间片用完后,该进程状态由执行态变为阻塞态

C.时钟中断发生后,系统会修改当前进程在时间片内的剩余时间

D.影响时间片大小的主要因素包括响应时间、系统开销和进程数量等

【解析】本题主要考查进程调度。

题目看似只是在考查基于时间片的进程调度,但实际上考查的是与进程调度、切换,以及进程状态变化等有关的诸多知识点。要正确解答本题,需要对进程调度的各种细节有充分的了解。这也就是我们强调的动态变化,考生需要明确知道进程调度的流程及细节。B选项中,当前进程的时间片用完后,该进程状态由执行态变为阻塞态是错误的,在这种情况下,进程应该切换到就绪态。

【答案】B

4.综合应用题:掌握常见题目的解题技巧

在全国统考中,操作系统的综合应用题有两道,题目主要涉及进程管理、文件管理和内存管理等内容。其中,在进程管理中进程同步与互斥的考核频率很高,主要考核方向为前驱关系、进程同步与互斥等。考生在备考时,需要明确综合应用题的考核形式。综合应用题的考核形式基本稳定,所以考生只要多做题,多总结解题方法与思路,往往就能做到胸有成竹。

以考核频率最高的进程同步与互斥为例,可以总结出以下几点。

(1)P操作又名wait,V操作又名signal。

(2)用于互斥的信号量,初始值为1。

(3)用于保护资源的同步信号量,初始值为资源的总量。

(4)用于表示前驱关系的信号量,事件未发生,信号量初始值为0。

(5)在互斥保护时信号量的P操作和V操作应该成对出现。

(6)要查看或者修改一个变量的值,都需要使用互斥信号量保护。

(7)“前V后P”。在进程同步时,信号量的P操作和V操作通常在不同的进程中出现,前面的操作之后,使用V操作对信号量加1,在操作之后,需要使用P操作对信号量减1。例如,只有生产了商品之后,才能销售商品,商品存放的仓库容量为N,则定义信号量Full的初始值为0,生产商品后需要使用V(Full)操作让仓库中的商品数量加1,商品销售后,使用P(Full)操作让商品数量减1。当然,细心的考生应该在此场景下发现另外一个同步关系,即只有仓库有空间时,才能生产新的商品,这就意味着需要定义信号量Empty的初始值为N,在销售出商品后,使用V(Empty)操作来将Empty加1,在生产商品之后,使用P(Empty)操作对Empty减1。

(8)前驱关系。前驱关系是一种特别特殊的同步关系。

【全国统考2022年】某进程的两个线程T1和T2并发执行A、B、C、D、E和F共6个操作,其中T1执行A、E和F,T2执行B、C和D。如图表示上述6个操作的执行顺序所必须满足的约束:C在A和B完成后执行,D和E在C完成后执行,F在E完成后执行。请使用信号量的wait()、signal()操作描述T1和T2之间的同步关系,并说明信号量的作用及其初值。

【解析】进程T1要执行A、E、F,T2要执行B、C、D。由图可知,T2执行C必须在T1执行完A之后,T1执行E必须在T2执行完C之后。所以,有两对同步关系。

这是一道典型的前驱关系题目,每一对同步关系都可以设置一个信号量,将其值初始化为0,表示前一事件默认未开始,比如定义信号量a的初始值为0,表示A事件暂未发生。当A执行后,应该执行V(a)操作,而在A的后续操作C之前,必须执行P(a),等待A事件发生,这就是我们所说的前V后P。

【答案】信号量的定义和同步关系的描述如下所示。

semaphore a = 0; //信号量a表示A过程是否执行,初始为0表示默认未执行
semphore c = 0;  //信号量c表示C过程是否执行,初始为0表示默认未执行
thread T1() {
    执行A;
    signal(a); //告知线程T2已经执行完A过程
    wait(c);    //等待线程T2执行完C过程
    执行E;
    执行F;
}
thread T2() {
    执行B;
    wait(a);    //等待线程T1执行完A过程
    执行C;
    signal(c); //告知线程T1已经执行完C过程
    执行D;
}

五、复习策略

对于参加全国统考的考生来说,操作系统的重要性次于数据结构和计算机组成原理,同时操作系统中有一些知识和计算机组成原理中的知识略有重叠(如内存管理、I/O管理等内容),如果考生对计算机组成原理比较熟悉,学习操作系统会轻松一些。

综合来看,可以给大家提出以下几个建议。

(1)第一章“操作系统概述”是操作系统的基础,虽然分值占比较低,但需要重点学习,深入理解并熟练掌握。第一章所涉及的基础知识和概念,会贯穿后续所有章节,如果第一章掌握得不好,在后续学习中,对很多知识点往往难以做到真正理解。

(2)对于常考的知识点,一定要做到熟练掌握。只有做到充分理解各考点对应的历年真题且能独立解题,才意味着理解和掌握了该知识点。在做真题时,如果发现有模棱两可的情况,则必须认真学习相关理论知识,直至对知识点、考点的细节都掌握透彻。

(3)对于典型题目,特别是综合应用题,一定要多做。虽然每次考的题目乍看起来千差万别,但实际上,这些题目都是万变不离其宗,只有掌握了核心考点和考核形式,解答综合应用题时才能游刃有余。

(4)建议历年真题卷至少准备2套。在第一轮基础学习的时候,不需要使用真题卷。在第二轮巩固提升阶段,在学习每一章时,可以将真题卷中涉及的题目挑出来练习。在冲刺阶段,可以拿全新的真题卷,按照真实考试的要求,在一定的时间内完成操作系统部分的作答,并参照答案自己评分。对于此阶段依然做错的题目,需要重点对待,看看自己遗漏或疏忽了哪些知识点,以查漏补缺。

在全国统考中,数据结构、计算机组成原理、操作系统和计算机网络4个模块在一定程度上相互关联,只有进行整体学习,才能达到相辅相成的效果。

考生在备考时,可以分3个阶段进行。

(1)基础学习阶段:全面学习操作系统的所有知识点,可通过思维导图等方式记录笔记,快速过一遍操作系统的所有知识点。

(2)巩固提升阶段:面向考点,对自己掌握不好的,以及重点的知识进行重点学习,确保掌握高频考点。

(3)模拟冲刺阶段:基于真题进行自测,快速定位自己的弱项,开展有针对性的学习,并总结综合应用题的考核形式,确保在考场上作答时能得心应手。

第一章 操作系统概述

本章内容是计算机考研“操作系统”部分的基础知识。在历年考题中,单独考查基础知识的考题比例呈下降趋势。2022年全国统考大纲就“操作系统”部分进行了较大调整,更为强调考生在掌握操作系统的基本概念、基本原理和基本功能的同时,能够深入理解操作系统的整体运行过程。这就意味着,关于操作系统基础知识的考题,会更加注重考查考生的综合运用能力。本章的考查重点是CPU运行模式、中断和异常、用户态和内核态的转换、系统调用等内容。

在全国统考中,所涉及的题型主要是选择题(单选题)。在近些年的全国统考中,相关的题型、题量、分值,以及高频考点的情况如下表所示。

题型

题量

分值

高频考点

选择题

2~3题

4~6分

CPU运行模式、中断和异常、用户态和内核态的转换、系统调用

【知识地图】

第一节 操作系统的基本概念

考点1 操作系统的概念和特征

重要程度

★★

历年回顾

全国统考:2013年(选择题)、2016年(选择题)、2022年(选择题)
院校自主命题:有涉及

【例1·选择题】【北京交通大学2014年】下面对操作系统描述正确的是(  )。

A.操作系统属于应用软件

B.操作系统控制和管理的对象是计算机硬件

C.操作系统具有并发、共享、虚拟和异步4个特性

D.操作系统跟数据库系统是同一类软件

【解析】本题主要考查操作系统的概念与特征。

首先要弄明白“应用软件”和“系统软件”的区别,系统软件为计算机提供最基本的功能,如操作系统、支撑软件的基本工具(编译器、文件系统、驱动管理等)。可见,系统软件的一个特征就是不针对特定领域提供特定功能。而应用软件则相反,它是根据用户的特定需求或者面向特定领域应用的功能性软件,如数据库、办公软件、微信(或QQ)等。

操作系统可谓是计算机硬件与用户的“桥梁”,其对下管理计算机硬件,对计算机的硬件资源进行相应的组织管理,将其合理地分配给应用软件;对上负责给应用软件和用户提供支持。

操作系统不属于应用软件,A选项描述错误。

操作系统控制和管理的对象是计算机硬件及软件,B选项描述错误。

操作系统具有4个特性——并发、共享、虚拟和异步,C选项描述正确。

数据库系统属于应用软件,D选项描述错误。

【答案】C

【例2·选择题】【重庆大学2017年】操作系统中最基本的两个特征是(  )。

A.并发和共享

B.并发和异步

C.并发和虚拟

D.共享与异步

【解析】本题主要考查操作系统的基本特征。

操作系统是直接控制和管理计算机硬件、软件资源,合理地对各类作业进行调度,以方便用户使用的程序集合。操作系统具备以下4个特征。

(1)并发性。两个或两个以上的程序在同一时间间隔内被执行。

(2)共享性。操作系统中的资源,可以供正在执行的多个程序共同使用。

(3)虚拟性。通过某种技术手段将一个物理实体转变成若干个逻辑上的对应物。

(4)异步性。在多道程序环境下,多个程序以不可预期的速度执行,无法确定谁先谁后,但如果运行环境保持不变,多次执行一定会得到相同结果。

其中,并发性和共享性是操作系统最基本的特征,因为并发提高了任务运行的效率,共享为资源的充分利用提供了可能性。

【答案】A

考点2 操作系统的功能

重要程度

历年回顾

全国统考:2010年(选择题)
院校自主命题:有涉及

【例1·选择题】【模拟题】操作系统的功能是进行处理机管理、(  )管理、设备管理及信息管理。

A.进程

B.存储

C.硬件

D.兼容性

【解析】本题主要考查的是操作系统的基本功能。

操作系统主要包括以下几个方面的功能。

(1)进程管理,也叫处理机管理或CPU管理,其工作主要是进程调度。在单用户、单任务的情况下,处理器仅为一个用户的一个任务所独占,进程管理的工作十分简单。在多道程序或多用户的情况下,组织多个作业或任务时,就要解决处理器的调度、分配和回收等问题。

(2)存储管理,包含存储分配、存储共享、存储保护、存储扩张。

(3)设备管理,主要的功能有缓冲管理、设备分配、设备传输控制、设备独立性。

(4)文件管理,包含文件存储空间的管理、目录管理、文件操作管理、文件保护等功能。

(5)提供用户接口,包括命令接口、程序接口和图形接口。

【答案】B

【例2·选择题】【中国科学院大学2015年】下面不是操作系统的功能的是(  )。

A.CPU管理

B.存储管理

C.网络管理

D.数据管理

【解析】本题主要考查的是操作系统的基本功能。

操作系统作为计算机系统资源的管理者,管理着各种各样的硬件和软件资源,所以A选项正确。操作系统的功能包括处理器、存储器、文件、I/О设备以及信息等资源的存储管理,所以B选项正确。数据管理属于文件管理的范畴,所以D选项正确。网络管理不是操作系统的功能,所以本题选择C选项。

【答案】C

【例3·选择题】【全国统考2010年】下列选项中,操作系统提供给应用程序的接口是(  )。

A.系统调用

B.中断

C.库函数

D.原语

【解析】本题主要考查的是系统调用的概念。

系统调用指的是操作系统提供给应用程序的接口,应用程序可以通过系统调用来请求内核服务,所以A选项正确。

中断是操作系统底层的一种机制,不是接口,所以B选项错误。

库函数是由编程语言为程序员提供的通用函数,在库函数中可能会使用系统调用,但也可以全部是简单的功能实现,如数学计算,所以C选项错误。

原语是对需要一次性执行的代码的总称,原语总是不可中断地、一气呵成地执行,原语也是操作系统内核的一部分,所以D选项错误。

【答案】A

第二节 操作系统的发展和分类

考点3 单道批处理系统

重要程度

历年回顾

全国统考:2009年(选择题)、2016年(选择题)
院校自主命题:有涉及

【例1·选择题】【模拟题】单道批处理系统的主要缺点是(  )。

A.CPU的利用率不高

B.失去了交互性

C.不具备并行性

D.以上都不是

【解析】本题主要考查单道批处理系统的缺点。

A选项、B选项、C选项讲的都是单道批处理系统的缺点,那么单道批处理系统的主要缺点是哪个呢?这就得全面且详细地了解操作系统的发展史。

单道批处理系统中的单道是指内存中只有一道程序在运行,批处理是指在系统监督程序的控制下磁带里的一批作业能一个接一个地连续处理。单道批处理系统是在解决人机矛盾以及CPU与I/O设备速度不匹配的矛盾中形成的,它提高了系统资源的使用率,具有自动性、顺序性、单道性的特点。

因为单道批处理系统在内存中仅有一道程序,所以当程序在运行中发出I/O请求后,CPU便只能等待。因此单道批处理系统最主要的缺点是CPU的利用率不高。为了解决这个缺点,产生了多道批处理系统。多道批处理,也就是在同一时间段内,有多个作业在运行。这解决的是单道批处理系统在发起I/O请求后,CPU阻塞,等待I/O数据的问题。多道批处理系统在I/O请求阻塞后,CPU转而去执行其他任务,这提升的是CPU的利用率。

【答案】A

【例2·选择题】【全国统考2009年】单处理机系统中,可并行的是(  )。

Ⅰ.进程与进程

Ⅱ.处理机与设备

Ⅲ.处理机与通道

Ⅳ.设备与设备

A.I、Ⅱ、Ⅲ

B.I、Ⅱ、Ⅳ

C.I、Ⅲ、Ⅳ

D.Ⅱ、Ⅲ、Ⅳ

【解析】本题主要考查单处理机系统的特点。

此题有一个关键词——并行,并行和并发的联系和区别一定要清楚。

联系:并行和并发都能增加对资源的利用率,增加系统吞吐量。

区别:并行是指在同一时刻,有两个或两个以上的进程在运行;而并发是指,在同一时间段内,有两个或两个以上的进程得到了运行。

因为只有一个CPU,所以两个进程不可能并行,所以Ⅰ错误。

设备由设备控制器来控制,当设备忙碌的时候,等待设备数据的进程可能会被阻塞,CPU可以去运行其他进程,这样CPU也就运行了起来,处理机和设备之间就并行了,所以Ⅱ正确。

通道是简化版的CPU,通道在处理数据的时候,不需要CPU处于阻塞状态等待,通道和CPU是可以并行的,所以Ⅲ正确。

操作系统的多个设备可以在各自设备控制器的管理下并行,如磁盘和显示器,所以Ⅳ正确。

【知识链接】并行的前提一定是具有多个处理机,因为进程在CPU上运行,且一个CPU同时只能运行一个进程,想在同一时刻运行多个进程,必须要有多个CPU。

在单处理机中只有一套硬件资源(单核CPU),进程是程序在CPU上的运行过程,因此,在单处理机中,进程与进程需要争夺CPU硬件资源,只能并发而不能并行。处理机与设备是计算机硬件系统中的不同部件,两者之间不存在争夺资源的情况,因此,是可以并行的。同理,处理机与通道、设备与设备也是可以并行的。

【答案】D

【例3·选择题】【全国统考2016年】下列关于批处理系统的叙述中,正确的是(  )。

Ⅰ.批处理系统允许多个用户与计算机直接交互

Ⅱ.批处理系统分为单道批处理系统和多道批处理系统

Ⅲ.中断技术使得多道批处理系统的I/O设备可与CPU并行工作

A.仅Ⅱ、Ⅲ

B.仅Ⅱ

C.仅Ⅰ、Ⅱ

D.仅Ⅰ、Ⅲ

【解析】本题主要考查批处理系统。

Ⅰ错误,批处理系统中,作业执行时用户无法干预其运行,只能通过实现编制作业控制说明书来间接干预,缺少交互能力,也因此才发展出分时系统。Ⅱ正确,批处理系统按发展历程分为单道批处理系统和多道批处理系统。Ⅲ正确,多道程序设计技术允许同时把多个程序放入内存,并允许它们交替地在CPU中运行。多个程序共享系统中的各种硬件、软件资源,当一道程序因I/O请求而暂停运行时,CPU便立即转去运行其他程序,即多道批处理系统的I/O设备可与CPU并行工作,这都是借助中断技术实现的。

【答案】A

【例4·选择题】【浙江大学2012年】批处理系统的主要特点是(  )。

A.CPU利用率高

B.不能并发执行

C.缺少交互性

D.以上都不是

【解析】本题主要考查批处理系统的特点。

批处理系统分为单道批处理系统和多道批处理系统。

CPU利用率高是多道批处理系统的主要特点,但是题目没有说明是单道批处理系统还是多道批处理系统,所以如果是单道批处理系统的话,CPU利用率就不高了,A选项错误。

对于多道批处理系统,是支持作业的并发执行的,B选项错误。

缺乏交互性是单道批处理系统和多道批处理系统共有的主要缺点,也是主要特点。一旦提交作业,用户就失去了对其运行的控制能力,使用不方便,C选项正确。

【答案】C

考点4 多道批处理系统

重要程度

★★

历年回顾

全国统考:2012年(选择题)、2016年(选择题)、2017年(选择题)、2018年(选择题)、2022年(选择题)
院校自主命题:有涉及

【例1·选择题】【全国统考2012年】一个多道批处理系统中仅有P1和P2两个作业,P2比P1晚5ms到达,它们的计算和I/O操作顺序如下:

P1:计算60ms,I/O80ms,计算20ms。

P2:计算120ms,I/O40ms,计算40ms。

若不考虑调度和切换时间,则完成两个作业需要的时间最少是(  )。

A.240ms

B.260ms

C.340ms

D.360ms

【解析】本题主要考查多道批处理系统作业完成时间的计算。

由于P2比P1晚5ms到达,因此P1先占用CPU,计算60ms后释放CPU,时间到达60ms。

P1进行I/O操作,80ms后释放I/O,时间到达140ms;同时P2占用CPU,计算120ms后释放CPU,时间到达180ms。在140ms后P1等待P2释放CPU,时间到达180ms,此时CPU和I/O皆为空闲。

P2进行I/O操作,40ms后释放I/O,时间到达220ms,同时P1占用CPU,计算时间20ms,时间到达200ms,P1结束。

P2占用CPU,40ms后释放CPU,时间到达260ms,两个作业全部结束。

【解题技巧】此种类型题目建议读者画出作业运行的甘特图。甘特图简洁、直观地表达了作业随时间发展的过程,可以很快得到计算结果。

该题目作业运行的甘特图如下图所示。

【答案】B

【例2·选择题】【全国统考2016年】某单CPU系统中有输入和输出设备各1台,现有3个并发执行的作业,每个作业的输入、计算和输出时间均分别为2ms、3ms和4ms,且都按输入、计算和输出的顺序执行,则执行完3个作业需要的时间最少是(  )。

A.15ms

B.17ms

C.22ms

D.27ms

【解析】本题主要考查多道批处理系统作业完成时间的计算。

因CPU、输入设备、输出设备都只有一台,因此各个操作步骤不能重叠。画出该题运行的甘特图后可以清楚地看到不同作业间的时序关系,如下图所示。

可得出时间为17ms。

【答案】B

【例3·选择题】【全国统考2017年】与单道程序系统相比,多道程序系统的优点是(  )。

Ⅰ.CPU利用率高

Ⅱ.系统开销小

Ⅲ.系统吞吐量大

Ⅳ.I/O设备利用率高

A.仅Ⅰ、Ⅲ

B.仅Ⅰ、Ⅳ

C.仅Ⅱ、Ⅲ

D.仅Ⅰ、Ⅲ、Ⅳ

【解析】本题主要考查单道批处理系统(单道程序系统)与多道批处理系统(多道程序系统)的对比。

多道程序系统的作业在外存上形成后备队列,由作业调度程序从队列中挑选几个作业调入内存,这样当一个占据内存的作业不使用CPU使用I/O设备,CPU可以选择内存中的其他作业运行。与单道程序系统相比,多道程序系统中允许多个作业在内存中停留,共享资源,使系统长时间处于忙碌状态,各种资源可以被充分利用,CPU的利用率也大大提高。

另外多道程序系统具有多道性、无序性和调度性的特点。

在多道程序系统中,一个任务阻塞后,CPU不再等待,转而去执行其他任务,提高了CPU利用率,也提高了内存和I/O设备的利用率。在单位时间内,利用率变高,做的事情也就多了,吞吐量也就变大了,所以Ⅰ和Ⅲ正确。

在单道程序系统中,CPU会一直服务于一个作业,直到作业运行结束。但在多道程序系统中,一个作业阻塞,CPU会转而执行其他作业,虽然CPU的利用率提高了,但是作业的平均周转时间增长,并且需要调度算法去调度,因此其开销一定是大于单道程序系统的,所以Ⅱ错误。

在内存中可能存在多道程序在并发运行,每个程序都可以使用不同的设备,同时CPU和设备可以并行运行,I/O设备的利用率一定变高,所以Ⅳ正确。

【答案】D

【例4·选择题】【全国统考2018年】下列关于多任务操作系统的叙述,正确的是(  )。

Ⅰ.具有并发和并行的特点

Ⅱ.需要实现对共享资源的保护

Ⅲ.需要运行在多CPU的硬件平台上

A.仅Ⅰ

B.仅Ⅱ

C.仅Ⅰ、Ⅱ

D.Ⅰ、Ⅱ、Ⅲ

【解析】本题主要考查多任务操作系统的特点。

多道批处理系统可以并发执行多个程序,这样的系统又称多任务操作系统。Ⅰ叙述正确,多任务操作系统可以在同一时间内运行多个应用程序。Ⅱ叙述正确,多个任务必须互斥地访问共享资源,为达到这一目标必须对共享资源进行必要的保护。Ⅲ叙述错误,现代操作系统都是多任务的,并不一定需要运行在多CPU的硬件平台上,单个CPU也可以满足要求。

【答案】C

【例5·选择题】【全国统考2022年】下列关于多道程序系统的叙述中,不正确的是(  )。

A.支持进程的并发执行

B.不必支持虚拟存储管理

C.需要实现对共享资源的管理

D.进程数越多,CPU利用率越高

【解析】本题主要考查多道程序系统的概念和特征。

A选项、C选项叙述正确。现代计算机操作系统几乎全部支持多道程序处理,操作系统的基本特点是并发、共享、虚拟、异步,其中最基本的特点是并发和共享。

B选项叙述正确。早期的多道程序系统会将所有进程的数据全部调入主存,再让多道程序并发执行,即使不支持虚拟存储管理,也能实现“多道程序并发”。

D选项叙述错误。进程多并不意味着CPU利用率高,进程数量越多,进程之间的资源竞争越激烈,甚至可能出现死锁现象,导致CPU利用率降低。

【答案】D

【例6·选择题】【模拟题】下面叙述中,错误的是(  )。

A.操作系统既能进行多任务处理,又能进行多重处理

B.多重处理是多任务处理的子集

C.多任务是指同一时间内在同一系统中同时运行多个进程

D.一个CPU的计算机上也可以进行多重处理

【解析】本题主要考查多任务操作系统的特点。

多任务处理指同一个时间内计算机系统中允许多个进程同时处于运行状态;多重处理指对于有多个CPU的计算机,同时在多个CPU上执行进程,能同时执行多道程序。只有一个CPU的计算机,操作系统可以进行多进程并发执行,实现多任务处理。如果一台计算机有多个CPU,其操作系统既能进行多任务处理又能进行多重处理。

【答案】D

【例7·选择题】【南京航空航天大学2017年】引入多道程序的目的在于(  )。

A.充分利用CPU,减少CPU等待时间

B.提高实时响应速度

C.有利于代码共享,减少主、辅存信息交换量

D.解放CPU对外设的管理

【解析】本题主要考查单道批处理系统与多道批处理系统的特点。

首先明确引入多道程序的目的是解决单道批处理系统的主要问题——CPU利用率较低。

A选项正确。在单道批处理系统中,内存中只有一道作业,无法充分利用系统资源。在多道批处理系统中,所有待处理的进程形成一个队列,由作业调度程序根据适当的算法,选择若干个进程调入内存,因此充分利用了CPU和系统资源,也减少了CPU的等待时间。

B选项错误。提高实时响应速度是实时操作系统解决的主要问题。

C选项错误。多道程序设计只是在一个作业阻塞的时候,可以转而去执行另一个作业,从而提升CPU利用率,但是在内存上,并没有实现虚拟存储相关的内容。

D选项错误。解放CPU对外设的管理主要是设备控制器和通道的功能,与多道程序设计无关。

【答案】A

考点5 分时操作系统

重要程度

历年回顾

全国统考:未涉及
院校自主命题:有涉及

【例1·选择题】【模拟题】分时操作系统通常采用(  )策略为用户服务。

A.可靠性和灵活性

B.时间片轮转

C.时间片加权分配

D.短作业优先

【解析】本题主要考查分时操作系统的策略。

分时操作系统允许一台主机为多个用户服务,并能及时响应用户的请求,主要用到的是时间片轮转算法,核心策略是时间片轮转策略。分时操作系统将CPU时间分割为一个个小的时间片,每个用户(作业)轮流使用时间片,让用户觉得自己是“独占”整个计算机。分时操作系统具有多路性、独立性、及时性和交互性的特点。

A选项错误,可靠性和灵活性并不是策略,而是描述操作系统的特点。B选项正确,时间片轮转策略是分时操作系统的主要策略。C选项错误,时间片加权分配是将分时操作系统和优先级调度算法结合的分配方式,在分时操作系统中,只是简单的时间片轮转。D选项错误,短作业优先算法是作业调度算法,不符合分时操作系统所具备的与用户的交互性。

【答案】B

【例2·选择题】【北京交通大学2014年】推动操作系统发展的动力有多个方面的原因。其中,推动分时操作系统出现和发展的最主要原因是(  )。

A.提高资源利用率

B.方便用户

C.器件更新

D.计算机体系结构的发展

【解析】本题主要考查分时操作系统产生的原因。

推动分时操作系统出现和发展的主要原因是多道批处理系统的缺陷,其最大的缺陷在于多道批处理系统在作业运行时,无法与用户交互。

提高资源利用率,是多道批处理系统解决的主要矛盾,所以A选项错误。

方便用户是推动分时操作系统出现和发展的主要原因,主要是提升交互性,所以B选项正确。

在操作系统的发展过程中,虽然器件更新在一定程度上也推动了系统的发展,但不是主要原因,所以C选项错误。

计算机体系结构的发展关注的是操作系统的结构,涉及无结构操作系统、分层操作系统、模块化操作系统、宏内核操作系统、微内核操作系统等,与本题问题无关,所以D选项错误。

把计算机与许多终端用户连接起来,分时操作系统将系统处理机时间与内存空间按一定的时间间隔,轮流地切换给各终端用户使用。由于时间间隔很短,给每个用户的感觉就像在“独占”计算机一样。分时操作系统的特点是可有效增加资源的使用率。例如,UNIX系统就采用剥夺式动态优先的CPU调度来支持分时操作。

【答案】B

考点6 实时操作系统

重要程度

历年回顾

全国统考:未涉及
院校自主命题:有涉及

【例1·选择题】【模拟题】下列不需要采用实时操作系统的产业应用是(  )。

A.办公自动化

B.机床系统

C.股票交易系统

D.航空订票系统

【解析】本题主要考查实时操作系统的应用。

实时操作系统要求系统及时响应外部时间的请求,并在规定时间内完成相应操作。按照截止时间的要求可以把实时操作系统分为硬实时操作系统和软实时操作系统,区别在于能否接受不能及时响应的情况,前者要求必须在截止时间内完成,否则会造成很严重的后果,后者则接受超过时间限制内的完成,如果没有及时响应,也不会带来严重后果。

A选项,办公自动化软件虽然有效率上的需求,但并不需要实时,所以不是实时操作系统;B选项,机床系统属于硬实时操作系统,机床要求在发生异常时实时反馈并处理,否则可能会引发严重后果;C选项和D选项,股票交易系统和航空订票系统都属于软实时操作系统,在多数情况下,能够严格地在规定的时间内完成任务,可以允许偶尔出现一定的时间偏差,并不会造成严重后果。

【答案】A

【例2·选择题】【南京航空航天大学2017年】在下列系统中,(  )是实时系统。

A.计算机激光照排系统

B.军用反导弹系统

C.办公自动化系统

D.计算机辅助设计系统

【解析】本题主要考查实时操作系统(简称实时系统)的应用。

判断是不是实时系统的主要依据是此系统是否要求及时响应,响应不及时是否会给此系统带来极严重甚至毁灭的后果。

计算机激光照排系统是将汉字通过激光扫描成字,并存储的系统,显然在时间维度上,它没有很强的急迫性,所以A选项错误。

军用反导弹系统、武器系统、自动驾驶、汽车的防抱死系统等,对时间是极其敏感的,所以这些都是实时系统,所以B选项正确。

办公自动化系统也不要求能够及时响应,不是实时系统,所以C选项错误。

计算机辅助设计系统要求的是机器和人的交互,这种系统在乎交互性,而非实时性,所以D选项错误。

【答案】B

【例3·选择题】【广东工业大学2017年】在(  )的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应。

A.批处理操作系统

B.实时操作系统

C.分时操作系统

D.多处理机操作系统

【解析】本题主要考查多种计算机系统的区别。

及时处理数据是解答本题的关键。各个操作系统的特点如下。

单道批处理系统:作业串行,无并发,资源利用率低。

多道批处理系统:作业并发,资源利用率高。

分时操作系统:交互性强。

实时操作系统:响应及时处理。

多处理机操作系统:用于管理和协调多处理器。

实时操作系统能及时响应外部发生的事件,并对事件做出快速处理,在限定的时间内对外部的请求和信号做出响应。故选B选项。

【答案】B

第三节 操作系统的运行环境

考点7 CPU运行模式

重要程度

★★★

历年回顾

全国统考:2011年(选择题)、2012年(选择题)、2014年(选择题)、2021年(选择题)
院校自主命题:有涉及

【例1·选择题】【全国统考2011年】下列选项中,在用户态执行的是(  )。

A.命令解释程序

B.缺页处理程序

C.进程调度程序

D.时钟中断处理程序

【解析】本题主要考查在用户态和内核态执行的程序。

A选项正确,命令解释程序属于命令接口,在用户态执行。

B选项和D选项错误,缺页处理程序和时钟中断处理程序都属于中断,都在内核态执行。

C选项错误,进程调度程序需要操作系统内核的参与,需要在内核态执行。

【知识链接】大多数的现代操作系统中,CPU是在内核模式和用户模式两种不同的模式下运行的。依据在CPU上执行的代码类型,CPU在两个模式之间切换。

内核模式运行也称为核心态、管态、特权态、内核态、系统态。用户模式运行也称为用户态、目态。运行在内核态的代码不受任何限制,可以自由地访问任何有效地址,也可以直接进行端口的访问。而在用户态运行的代码则要受到处理器的诸多检查,只能访问其用户地址空间的数据,且只能对在用户态下可访问的设备进行访问。由用户态切换到内核态,可以通过系统调用、异常、外围设备中断实现。由内核态切换为用户态,只能是由内核主动让出。

【答案】A

【例2·选择题】【全国统考2012年】下列选项中,不可能在用户态发生的事件是(  )。

A.系统调用

B.外部中断

C.进程切换

D.缺页

【解析】本题主要考查对用户态状态的理解。

系统调用可能在用户态和内核态发生,系统调用把应用程序的请求(用户态的请求)传入内核,由内核(内核态)处理请求并将结果返回给应用程序(用户态),所以A选项可能发生。

中断的发生与CPU当前的状态无关,既可以发生在用户态,又可以发生在内核态,因为无论系统处于何种状态都需要处理外部设备发来的中断请求,所以B选项可能发生。

进程切换属于系统调用执行过程中的事件,只能在内核态下完成,不能发生在用户态,所以C选项不可能发生。

缺页(异常)也可能在用户态发生,所以D选项可能发生。

【答案】C

【例3·选择题】【全国统考2014年】下列指令中,不能在用户态执行的是(  )。

A.trap指令

B.跳转指令

C.压栈指令

D.关中断指令

【解析】本题主要考查在用户态执行的指令。

trap指令、跳转指令和压栈指令均可以在用户态执行,其中trap指令负责由用户态转换为内核态。而关中断指令为特权指令,必须在内核态执行。

【答案】D

【例4·选择题】【模拟题】在操作系统中,只能在内核态下运行的指令是(  )。

A.读时钟指令

B.置时钟指令

C.取数指令

D.寄存器清零指令

【解析】本题主要考查不同指令的运行状态约束。

指令可以分为特权指令和非特权指令,特权指令只能在内核态下运行。

特权指令是指只能提供给操作系统的核心程序使用的指令,如启动I/O设备、设置时钟、控制中断屏蔽位、清主存、建立存储键、加载程序状态字(Program Status Word,PSW)等。非特权指令是指操作系统和用户应用程序都能使用的指令。

读时钟指令是非特权指令,不同于置时钟指令,置时钟指令只能在内核态下运行,而读时钟指令可以在用户态下运行,所以A选项错误。

置时钟指令是特权指令,只能在内核态下运行,设置时钟属于内核功能,所以B选项正确。

取数指令是非特权指令,用于读取内存上的存储单元内的数据,所以C选项错误。

寄存器清零指令是非特权指令,对于寄存器的清零有两种,一种是在用户态下,进程可以清除自己的可清零寄存器,而在内核态下,进程可以清除全部可清零的寄存器,所以寄存器清零指令也可以在用户态下运行,所以D选项错误。

【答案】B

【例5·选择题】【模拟题】下列选项中,必须在CPU内核态下运行的软件是(  )。

A.JVM

B.中间件

C.中断处理程序

D.库程序

【解析】本题主要考查可以运行在CPU内核态的软件。

在做这种类型的题目时,可以抓住题目核心点:必须在CPU内核态下运行的软件。在内核态下运行意味着高权限,也意味着该程序需要直接带计算机硬件进行操作。

Java虚拟机(Java Virtual Machine,JVM)是通过虚拟化技术,在宿主机上构建一个完整的虚拟机器,用来执行Java程序。JVM是基于宿主机操作系统提供的服务来工作的,所以无须在内核态下运行,故A选项错误。

中间件是一类基础软件的统称,它工作在用户软件和系统软件之间,连接系统和应用软件,是在操作系统之上运行的,不属于内核功能,所以无须在内核态下运行,故B选项错误。

中断机制是内核的基本功能,中断处理程序必须在内核态下运行,中断会将应用程序由用户态转为内核态,故C选项正确。

库是指由编程语言官方封装的功能库或第三方的功能库,这些库是在用户态下运行的,如果需要系统服务,会在内部使用系统调用,所以D选项错误。

【答案】C

【例6·选择题】【南京大学2013年】下列指令中,在用户态执行的是(  )。

A.访管指令

B.关中断

C.启动I/O指令

D.设置时钟

【解析】本题主要考查特权指令与非特权指令的区别。

B选项、C选项、D选项都是系统底层的服务,属于特权指令,只能在内核态下执行。

A选项正确,访管指令又称trap指令,在系统调用中使用。通过trap指令,应用程序由用户态转入内核态,为用户的请求提供服务。访管指令是唯一一个不能在内核态下执行的指令。

【答案】A

【例7·选择题】【南京大学2013年】当计算机提供了管态和目态时,(  )必须在管态(核心态)下执行。

A.从内存取数的指令

B.把运算结果送入内存的指令

C.算术运算指令

D.输入/输出指令

【解析】本题主要考查的是在管态(内核态)和目态(用户态)下,能够运行的指令有哪些。

A选项错误。从内存取数的指令,如果是用户空间内的数据操作,读一个变量的值,就是从内存中取数,并不需要在管态下执行。

B选项错误。将运算结果送入内存的指令,也要区分是用户空间还是内核空间。对于普通情况下,用户程序将运算的结果存入内存都是在目态下完成的。

C选项错误。算数运算指令是非特权指令,可在目态下执行。

D选项正确。输入/输出指令属于操作硬件资源的指令,用户程序在目态下是不能直接操作硬件的,必须通过系统调用才能实现,系统调用会让用户程序由目态转换为管态。

【知识链接】从目态转换为管态的唯一途径是中断;从管态到目态可以通过修改程序状态字来实现,这将伴随着由操作系统程序到用户程序的转换。硬件资源不可由用户程序在目态下直接驱动。

【答案】D

【例8·选择题】【全国统考2021年】下列指令中,只能在内核态执行的是(  )。

A.trap指令

B.I/O指令

C.数据传送指令

D.设置断点指令

【解析】本题主要考查在内核态执行的指令。

在内核态下,CPU可执行任何指令,在用户态下CPU只能执行非特权指令。

常见的特权指令包括对I/O设备操作的有关指令、访问程序状态的有关指令、存取特殊寄存器指令,以及其他指令。

A选项、C选项和D选项都是提供给用户使用的指令,可以在用户态下执行,使CPU从用户态切换到内核态。

【答案】B

考点8 中断和异常

重要程度

★★★★

历年回顾

全国统考:2012年(选择题)、2015年(选择题)、2016年(选择题)、2018年(选择题)、2020年(选择题)
院校自主命题:有涉及

【例1·选择题】【模拟题】下面对中断的描述正确的是(  )。

A.中断是由硬件引起的

B.时钟中断不属于外中断

C.中断分为内中断与外中断

D.外中断又称为异常

【解析】本题主要考查中断的基本概念。

引起中断的原因有很多,按照引发的因素可将其分为内、外两类中断:一类是系统外界的干预(与程序执行无关的因素)引起的中断,称为外中断;一类是自身运行出错引起的中断,称为内中断,又叫作异常。B选项中的时钟中断属于外中断。

【知识链接】CPU会在每个指令周期末尾检查是否有外中断,如果有外中断,则CPU会暂停下一条即将要执行的指令,转而执行中断处理程序;如果之前执行的是用户态指令,那么处理中断就势必会发生由用户态到内核态的切换。

异常发生在CPU正在执行的指令中,由指令内部触发中断,所以是内中断。在CPU执行用户态下的程序时,发生了某些事先不可知的异常,如缺页异常,这时会导致进程由当前的用户态切换到内核态。

【答案】C

【例2·选择题】【模拟题】中断发生后进入的中断处理程序属于(  )。

A.用户程序

B.可能是用户程序,也可能是OS程序

C.OS程序

D.单独的程序,既不是用户程序也不是OS程序

【解析】本题主要考查中断发生后的情况。

引起中断的程序可以是任意程序,也可以是外界的中断事件。当中断发生时,系统将从用户态转入内核态,根据中断类型,执行对应的中断处理程序,所以中断处理程序属于内核程序,是操作系统(Operating System,OS)程序。

【答案】C

【例3·选择题】【模拟题】以下对原语的表述正确的是(  )。

A.原语在执行的过程中可以进行相应的进程切换

B.原语是一段小程序,完成特定的常用的功能

C.原语是通过硬件实现的

D.原语的执行过程可以被其他中断打断

【解析】本题主要考查的是原语的概念。

首先需要确定原语的定义,以及原语在操作系统中的位置。

【知识链接】原语是一段程序,具有原子性,在执行过程中会保证一气呵成地执行,不会被外界(外中断)中断。

原语在执行时,不能被中断,也就意味着不能进行进程切换,切换必然导致此时正在CPU运行着的原语的中断,所以A选项错误。

原语是一段小程序,在操作系统内核中,用于完成特定操作而不被中断,所以B选项正确。

原语是一段小程序,不是通过硬件实现的,所以C选项错误。

原语不能被中断,所以D选项错误。

【答案】B

【例4·选择题】【全国统考2012年】中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是(  )。

A.程序计数器

B.程序状态字寄存器

C.通用数据寄存器

D.通用地址寄存器

【解析】本题主要考查程序状态字寄存器的特点。

程序状态字寄存器用于记录当前处理器的状态和控制指令的执行顺序,并且保留与运行程序相关的各种信息,主要作用是实现程序状态的保护和恢复。所以中断处理程序要将PSW保存,子程序调用在进程内部执行只需保存程序断点,即该指令的下一条指令的地址,不会更改PSW。

【高手点拨】在中断处理中,最重要的两个寄存器是程序计数器和程序状态字寄存器。

【答案】B

【例5·选择题】【全国统考2015年】内部异常(内中断)可分为故障(fault)、陷阱(trap)和终止(abort)3类。下列有关内部异常的叙述中,错误的是(  )。

A.内部异常的产生与当前执行指令相关

B.内部异常的检测由CPU内部逻辑实现

C.内部异常的响应发生在指令执行过程中

D.内部异常处理后返回到发生异常的指令继续执行

【解析】本题主要考查内中断和外中断的概念区分。

A选项正确。内中断是指来自CPU和内存内部产生的中断,包括程序运算引起的各种错误,如地址非法、页面失效、用户程序执行特权指令自行中断(INT)和除数为零等,以上各种错误都是在指令的执行过程中产生的。

B选项正确。内中断产生在指令运行的过程中,检测由CPU内部逻辑实现,这是内中断的特点。

C选项正确。当内中断发生时,内中断不能被屏蔽,必须马上处理,所以内部异常的响应是发生在指令执行过程中。

D选项错误。内部异常发生后,必须立刻响应处理,处理完后,不一定会返回到发生异常的那条指令,如果是终止,则进程终止。

【高手点拨】本题需要着重弄清楚,到底什么是内中断,什么是外中断。“内”和“外”到底有什么深意,明确了这两个概念之后,此类题目就可以迎刃而解。

【答案】D

【例6·选择题】【全国统考2015年】处理外部中断时,应该由操作系统保存的是(  )。

A.程序计数器(PC)的内容

B.通用寄存器的内容

C.快表(TLB)中的内容

D.Cache中的内容

【解析】本题主要考查外部中断的处理过程。

PC的内容由中断隐指令自动保存,而通用寄存器的内容由操作系统保存。快表、Cache中的内容不需要在外部中断的时候保存。

【答案】B

【例7·选择题】【全国统考2016年】异常是指令执行过程中在处理器内部发生的特殊事件,中断是来自处理器外部的请求事件。下列关于中断或异常情况的叙述中,错误的是(  )。

A.“访存时缺页”属于中断

B.“整数除以0”属于异常

C.“DMA传送结束”属于中断

D.“存储保护错”属于异常

【解析】本题主要考查中断与异常的区别。

异常也称为内中断、例外或陷入,是指CPU执行指令内部的事件,常见的异常有非法操作码、地址越界、算术溢出、虚拟存储系统的缺页、异常指令引起的事件等。中断是指CPU执行指令外发生的事件,如设备发出的I/O中断和时钟中断等。

A选项错误,“访存时缺页”是指访问数据时发现请求的页面不在内存中,而是在指令周期内,发生在正在执行的指令上的事件,所以这是内中断,属于异常,不属于中断。

B选项正确,“整数除以0”也是在指令周期内,发生在正在执行的指令上的事件,所以属于异常。

C选项正确,“DMA传送结束”是在已通过DMA方式管理的设备中,完成了数据的传输后,由外部设备向CPU发起的中断,中断产生于CPU之外,不是发生在正在执行的指令中,所以是外中断,属于中断。

D选项正确,“存储保护错”是在访问存储时,发现存储保护机制不允许当前进程访问或修改内存,属于发生在当前指令内部的异常。

【答案】A

【例8·选择题】【全国统考2018年】当定时器产生时钟中断后,由时钟中断服务程序更新的部分内容是(  )。

Ⅰ.内核中时钟变量的值

Ⅱ.当前进程占用CPU的时间

Ⅲ.当前进程在时间片内的剩余执行时间

A.仅Ⅰ、Ⅱ

B.仅Ⅱ、Ⅲ

C.仅Ⅰ、Ⅲ

D.Ⅰ、Ⅱ、Ⅲ

【解析】本题主要考查时钟中断的主要工作。

时钟中断的主要工作是处理和时间有关的信息以及决定是否执行调度程序。因此,和时间有关的所有信息,包括系统时间、进程的时间片、延时、使用CPU的时间、各种定时器都会更新,故全部正确。

【答案】D

【例9·选择题】【全国统考2020年】下列与中断相关的操作中,由操作系统完成的是(  )。

Ⅰ.保存被中断程序的中断点

Ⅱ.提供中断服务

Ⅲ.初始化中断向量表

Ⅳ.保存中断屏蔽字

A.仅Ⅰ、Ⅱ

B.仅Ⅰ、Ⅱ、Ⅳ

C.仅Ⅲ、Ⅳ

D.仅Ⅱ、Ⅲ、Ⅳ

【解析】本题主要考查中断操作过程。

Ⅰ错误,当CPU检测到中断信号后,由硬件(即程序计数器)自动保存被中断程序的中断点。Ⅲ正确,硬件找到该中断信号对应的中断向量(各中断向量统一存放在中断向量表中,该表由操作系统初始化),中断向量指明中断服务程序入口地址。Ⅱ和Ⅳ正确,由操作系统保存PSW、保存中断屏蔽字、保存各通用寄存器的值,并提供与中断信号对应的中断服务。中断服务程序属于操作系统内核。

【答案】D

考点9 用户态和内核态的转换

重要程度

★★★

历年回顾

全国统考:2013年(选择题)、2015年(选择题)
院校自主命题:未涉及

【例1·选择题】【全国统考2013年】下列选项中,会导致用户进程从用户态切换到内核态的操作是(  )。

Ⅰ.整数除以零

Ⅱ.sin()函数调用

Ⅲ.read()系统调用

A.仅Ⅰ、Ⅱ

B.仅Ⅰ、Ⅲ

C.仅Ⅱ、Ⅲ

D.Ⅰ、Ⅱ和Ⅲ

【解析】本题主要考查从用户态切换到内核态的操作。

sin()是数学函数,不是系统调用函数,所以Ⅱ错误。Ⅰ操作是异常,Ⅲ操作是系统调用。

由用户态切换到内核态,可以通过系统调用、异常、外围设备中断这3种方式。由内核态切换为用户态,只能是由内核主动让出。

【答案】B

【例2·选择题】【全国统考2015年】假定下列指令已装入指令寄存器,则执行时不可能导致CPU从用户态变为内核态(系统态)的是(  )。

A.DIV R0,R1 ;(R0)/(R1)→R0

B.INT n ;产生软中断

C.NOT R0 ;寄存器R0的内容取非

D.MOV R0,addr ;把地址addr处的内存数据放入寄存器R0中

【解析】本题主要考查用户态和内核态转换情况的判断。

指令A有除零异常的可能,指令B为中断指令,指令D有缺页异常的可能,指令C不会发生异常。

【答案】C

考点10 系统调用

重要程度

★★★

历年回顾

全国统考:2010年(选择题)、2017年(选择题)、2021年(选择题)、2022年(选择题)
院校自主命题:有涉及

【例1·选择题】【全国统考2010年】下列选项中,操作系统提供给应用程序的接口是(  )。

A.系统调用

B.中断

C.库函数

D.原语

【解析】本题主要考查系统调用的基本概念。

操作系统为应用程序提供的接口是系统调用,应用程序的代码翻译成机器语言后,会在需要系统提供服务时执行相应的访管指令,切换到内核态。

系统调用是操作系统提供给应用程序的接口,应用程序可以通过系统调用来请求内核服务,所以A选项正确。

中断是操作系统底层的一种机制,不是接口,所以B选项错误。

库函数是由编程语言为程序员提供的通用函数,在这些函数中可能会使用系统调用,但也可以全部是简单功能的实现,如数学计算,所以C选项错误。

原语是对需要一次性执行的代码的总称,原语总是“不可中断的、一气呵成”地执行,原语也是操作系统内核的一部分,所以D选项错误。

【答案】A

【例2·选择题】【模拟题】处理器运行系统调用时,处于(  )。

A.用户态

B.内核态

C.阻塞态

D.挂起态

【解析】本题主要考查系统调用的执行环境。

系统调用又称软中断,是一种由用户进程主动发起、可将用户态切换到内核态的方法。用户进程通过系统调用申请使用操作系统提供的服务程序来完成工作。用户程序在用户态下被执行,操作系统的程序是在内核态下被执行的。系统调用被执行时,是在执行操作系统的代码,属于内核态。

【答案】B

【例3·选择题】【模拟题】为方便系统调用处理,操作系统内部设立存有系统调用号与子程序入口地址映射关系的系统调用表。系统调用表本质上是(  )。

A.函数指针数组

B.中断向量表

C.逻辑设备表

D.工作集

【解析】本题主要考查系统调用表的本质。

A选项正确。以Linux 4.8为例,其内核提供了将近500个系统调用,系统调用是以函数指针数组的形式存储的,数组的下标是系统调用号,数组内容为函数指针,指向系统调用程序的首地址。

B选项错误。系统中所有的中断类型码及对应的中断向量按一定的规律存放在一个区域内,这个存储区域就叫作中断向量表。中断向量表存储在系统中最低端的1K字节空间中,存储了256个中断向量,每个向量就是中断服务程序的入口地址,但是存储为“(段基址,段内偏移)”的形式。

C选项错误。逻辑设备表是设备管理中的内容,用来存储逻辑设备名和物理设备之间的映射关系。

D选项错误。工作集是虚拟内存的知识点,工作集指在某段时间内,进程要访问的页面的集合。

【高手点拨】不少读者会根据自己的第一感觉选择B选项,因为系统调用是一种特殊的中断,那就意味着,系统调用表很有可能就是中断向量表,这是本题最大的误区。

实际上,应用程序是通过SYSENTER、SYSCALL或INT 0x80中断进入系统调用,然后通过系统调用表定位系统调用程序,最终获得系统服务。系统调用表指明了操作系统各项服务所对应的程序的位置,该表实际上是一个索引表,实现方式是使用函数指针数组,数组的下标为系统调用号,服务程序的地址为数据的内容项,是一个函数指针。

【答案】A

【例4·选择题】【南京理工大学2013年】系统调用的目的是(  )。

A.请求系统服务

B.终止系统服务

C.申请系统资源

D.释放系统资源

【解析】本题主要考查系统调用的目的。

先明确系统调用的功能,即用户程序通过系统调用来调用内核提供的服务。

从CPU模式层面来看,CPU有内核态和用户态;从指令层面来看,指令分为特权指令和非特权指令。操作系统为了安全性,不允许应用程序执行某些危险操作,如操纵外设、读取文件等,如果应用程序需要这些功能或服务,可以通过系统调用请求内核完成。

【答案】A

【例5·选择题】【全国统考2017年】执行系统调用的过程包括如下主要操作:① 返回用户态;② 执行陷入(trap)指令;③ 传递系统调用参数;④ 执行相应的服务程序。正确的执行顺序是(  )。

A.②→③→①→④

B.③→②→④→①

C.②→④→③→①

D.③→④→②→①

【解析】本题主要考查系统调用的过程。

在操作系统中,在执行系统调用的时候首先需要传递系统调用的参数,再执行陷入(trap)指令,并使系统进入内核态。在内核态下执行相应的服务程序以后,再返回到用户态。故选B选项。

【答案】B

【例6·选择题】【全国统考2021年】下列选项中,通过系统调用完成的操作是(  )。

A.页置换

B.进程调度

C.创建新进程

D.生成随机数

【解析】本题主要考查系统调用的操作过程。

A选项错误。当内存中的空闲页框不够时,操作系统会通过页置换将某些页面调出,并将要访问的页面调入,这个过程完全由操作系统完成,不涉及系统调用。

B选项错误。进程调度完全由操作系统完成,无法通过系统调用完成。

C选项正确。创建新进程可以通过系统调用来完成,比如Linux通过fork系统调用来创建新进程。

D选项错误。生成随机数只需要普通的函数调用,并不涉及请求操作系统的服务。

【答案】C

【例7·选择题】【北京交通大学2019年】下列关于系统调用描述正确的是(  )。

A.直接通过键盘交互方式使用

B.只能通过用户程序间接使用

C.是命令接口中的命令

D.与系统的命令一样

【解析】本题主要考查系统调用的基本概念。

系统调用是编程接口,在操作系统中对应着一个特定功能的子程序。命令接口则不同,它是提供给用户来组织和控制作业的执行的。

A选项错误。直接通过键盘交互的是命令接口,用户可以直接在终端输入命令来请求操作系统的服务。

B选项正确。系统调用是操作系统提供给应用程序的接口,也只能由程序来使用。

C选项错误。对于每个命令接口的命令,背后都有相应的解释器来解释并执行,与系统调用不在同一层面。

D选项错误。系统的命令需要有对应的解释器来解释并执行,与系统调用不在同一层面。

【答案】B

【例8·选择题】【全国统考2022年】执行系统调用的过程涉及下列操作,其中由操作系统完成的是(  )。

Ⅰ.保存断点和程序状态字

Ⅱ.保存通用寄存器的内容

Ⅲ.执行系统调用服务例程

Ⅳ.将CPU模式改为内核态

A.仅Ⅰ、Ⅲ

B.仅Ⅱ、Ⅲ

C.仅Ⅱ、Ⅳ

D.仅Ⅱ、Ⅲ、Ⅳ

【解析】本题主要考查系统调用的过程。

发生系统调用时,CPU执行陷入(trap)指令,检测到“内中断”后,由CPU负责保存断点和程序状态字,并将CPU模式改为内核态,然后执行操作系统内核的系统调用入口程序,该内核程序负责保存通用寄存器的内容,再执行某个特定的系统调用服务例程。综上,Ⅰ、Ⅳ是由硬件完成的,Ⅱ、Ⅲ是由操作系统完成的。

【答案】B

考点11 程序的链接和装入

重要程度

★★

历年回顾

全国统考:未涉及
院校自主命题:有涉及

【例1·选择题】【中国计量大学2017年】采用动态重定位方式装入作业,在执行中允许(  )将其移走。

A.用户有条件地

B.用户无条件地

C.操作系统有条件地

D.操作系统无条件地

【解析】本题主要考查作业的装入过程。

动态重定位方式不是在程序装入内存时完成的,而是CPU每次访问内存时由动态地址变换机构(硬件)自动把相对地址转换为绝对地址。动态重定位方式需要软件和硬件相互配合完成。采用动态重定位方式装入作业,装入内存的作业仍然保存原来的逻辑地址,必要时可通过操作系统有条件地将其移动。故选C选项。

【答案】C

【例2·选择题】【四川大学2015年】虚拟内存管理中,地址变换机构将逻辑地址变换为物理地址,形成该逻辑地址的阶段是(  )。

A.程序录入

B.编译

C.链接

D.内外存对换

【解析】本题主要考查应用程序的链接过程。

编译后形成的目标文件可以理解为一个小块一个小块的程序碎片,这样的程序小块一般都是具有从0开始的逻辑地址。目标文件在和相应的库函数链接以后形成一个可执行的文件,需要修改这些程序小块的逻辑地址,使之统一、有序。所以,在链接的过程中又把每个程序小块的逻辑地址按照一定的顺序组装成一个统一的逻辑地址范围,用来标识出此程序。

【知识链接】虽然编辑后的目标文件形成的程序小块内的地址也叫逻辑地址,但是和链接后形成的逻辑地址是截然不同的。

【答案】C

考点12 程序运行时的内存映像与地址空间

重要程度

历年回顾

全国统考:未涉及
院校自主命题:未涉及

【例·选择题】【模拟题】程序运行时内存映像的静态区域包含(  )。

Ⅰ.代码段

Ⅱ.只读数据段

Ⅲ.已初始化读写数据段

Ⅳ.未初始化数据段

A.Ⅰ、Ⅱ和Ⅲ

B.Ⅱ、Ⅲ和Ⅳ

C.Ⅰ、Ⅲ和Ⅳ

D.Ⅰ、Ⅱ、Ⅲ和Ⅳ

【解析】本题主要考查程序运行时内存映像的结构。

程序运行时的内存映像分为静态区域与动态区域。静态区域包含代码段、只读数据段、已初始化读写数据段和未初始化数据段。动态区域包含栈和堆。因此,本题选D选项。

【答案】D

第四节 操作系统的结构设计

考点13 模块化操作系统

重要程度

历年回顾

全国统考:未涉及
院校自主命题:未涉及

【例·选择题】【模拟题】下列有关模块化操作系统的描述错误的是(  )。

A.模块化是将操作系统按功能划分为若干个具有一定独立性的模块,各模块之间相互协作

B.内核由主模块和可加载内核模块构成

C.主模块负责核心功能和设备驱动程序

D.任何模块都可以直接调用其他模块,无须采用消息传递进行通信

【解析】本题主要考查模块化操作系统的基本概念。

模块化是将操作系统按功能划分为若干个具有一定独立性的模块,各模块之间相互协作。模块化操作系统的内核由主模块和可加载内核模块构成。其中,主模块只负责核心功能,如进程调度、内存管理等。可加载内核模块可以动态加载新模块到内核而无须重新编译整个内核,如设备驱动程序。模块化操作系统的优点是任何模块都可以直接调用其他模块,无须采用消息传递进行通信。

【知识链接】模块化操作系统采用模块化程序设计的技术,按其功能划分为若干个独立的模块,管理相应的功能,同时规定好各模块之间的接口,以实现其交互,对较大模块又可按子模块进一步细化下去。

优点:提高了操作系统设计的正确性、可理解性和可维护性。

缺点:模块及接口划分比较困难,未区分共享资源和独占资源,由于资源管理之间存在差异,使得操作系统结构变得不清晰。

【答案】C

考点14 分层式操作系统

重要程度

历年回顾

全国统考:未涉及
院校自主命题:未涉及

【例·选择题】【模拟题】下列有关分层式操作系统的描述,(  )是正确的。

Ⅰ.便于调试和验证

Ⅱ.易扩充和易维护,各层之间调用接口清晰固定

Ⅲ.仅可调用相邻低层,难以合理定义各层的边界

Ⅳ.效率低,不可跨层调用,系统调用执行时间长

A.仅Ⅱ

B.Ⅰ和Ⅱ

C.Ⅰ、Ⅱ和Ⅲ

D.全部

【解析】本题主要考查分层式操作系统的优、缺点。

优点:(1)便于调试和验证,简化了系统的设计和实现。可以先调试第一层而无须考虑系统的其他部分,因为它只使用了基本硬件。第一层调试完且验证正确之后,就可以调试第二层,如此向上调试。如果在调试某层时发现错误,那么错误应该在这一层上,因为它的底层都调试好了。

(2)易扩充和易维护,各层之间调用接口清晰固定。在系统中增加、修改或替换一层中的模块或整层时,只要不改变相应层的接口,就不会影响其他层。

缺点:(1)仅可调用相邻低层,难以合理定义各层。因为依赖关系固定后,往往就显得不够灵活。

(2)效率较低,不可跨层调用,各层之间有相应层间的通信机制,增加了额外开销,使得系统调用执行时间长。

【答案】D

考点15 微内核操作系统

重要程度

历年回顾

全国统考:未涉及
院校自主命题:未涉及

【例1·选择题】【模拟题】下列关于微内核的说法正确的是(  )。

A.微内核的执行速度较大内核快

B.微内核的可维护性低

C.微内核没有大内核稳定

D.微内核添加服务时,不必修改内核

【解析】本题主要考查微内核的概念。

本题答题关键在于了解微内核中“微”的含义,以及“微”带来的优势和执行代价。

执行速度等价于执行效率,与执行的代价成反比,因为微内核导致进程在用户态和内核态之间的切换次数增加,协作成本增加,执行速度一定会降低,所以A选项说法错误。

微内核将不需要内核态执行的功能移出到用户态,服务外移之后,耦合性降低,扩展性增强,可维护性一定是变高了,所以B选项说法错误。

微内核通过解耦操作,让内核的可扩展性和可维护性都增加,具有架构上的优势,稳定性增加,所以C选项说法错误。

微内核只保留了最基本的功能,增加服务时,无须修改内核,只在用户空间实现就行,所以D选项说法正确。

【知识链接】微内核将很多不需要在内核态执行的功能移出到用户态,只在内核态中保留一部分最基本的功能。具有耦合性低、可维护性强、可扩展性强等优势。

实现微内核的代价是进程在内核态与用户态之间的切换次数增加,执行速度减慢。

【答案】D

【例2·选择题】【模拟题】与早期的操作系统相比,采用微内核结构的操作系统具有很多优点,但这些优点不包含(  )。

A.提高了系统的可扩展性

B.提高了操作系统的运行效率

C.增强了系统的可靠性

D.使操作系统的可移植性更好

【解析】本题主要考查微内核操作系统的优点。

微内核将操作系统内核微小化,将内核功能做减法,将原本应该由内核来完成的功能变为非内核功能,这样导致内核各个服务之间耦合性降低,同时提升了可扩展性、可靠性、通用性和可移植性。但是,微内核的运行效率会下降,将各服务功能解耦之后,交互增加,无法很好地利用共享特性,协作的成本增加。

微内核结构存在诸多优势,但运行效率却一定是降低了,所以选择B选项。

【知识链接】微内核操作系统与宏内核操作系统的比较。

在宏内核操作系统中,操作系统的功能都是在内核中实现的。

在微内核操作系统中,内核只保留一些最基本的功能,而将其他服务都分离出去,由工作在用户态的进程(客户进程)来实现,形成了所谓的“客户/服务器”模式,客户进程可通过内核向服务器进程发送请求,以取得操作系统服务。

从理论上来说,微内核操作系统的思想更好一些,微内核将系统分为各个小的功能块,降低了设计难度,系统的维护和修改也更容易,单微内核的设计增加了模块之间的交互以及内核态和用户态的切换频率,导致系统会有性能损失。微内核便于扩充操作系统,具有很好的移植性。宏内核每个功能模块之间的耦合性很高,导致系统维护和修改的代价太高,但宏内核没有性能损失,所以宏内核操作系统的性能和效率更高。

【答案】B

【例3·选择题】【模拟题】相对于传统的操作系统设计方式,微内核方式具有很多的优点。关于微内核操作系统的描述不正确的是(  )。

A.微内核可以增加操作系统的可靠性

B.微内核可以提高操作系统的执行效率

C.微内核可以提高操作系统的可移植性

D.微内核可以提高操作系统的可拓展性

【解析】本题主要考查微内核的优点。

微内核操作系统把操作系统分为微内核和多个服务器,可移植性更好,可靠性更高。因为服务器可以进行扩展,所以,微内核操作系统的扩展性更好。但是微内核操作系统的执行效率降低,因为在传统操作系统的设计中,用户程序直接向操作系统请求服务,而在微内核操作系统中,用户程序向操作系统请求服务需要由微内核转发给服务器程序,因此执行效率更低。

【答案】B

考点16 外核

重要程度

历年回顾

全国统考:未涉及
院校自主命题:未涉及

【例·选择题】【模拟题】以下不属于外核的优点的是(  )。

A.外核使用户进程可以更灵活地使用硬件资源

B.减少了虚拟硬件资源的“映射层”,提升了效率

C.将多道外核内程序与用户空间内的操作系统代码加以分离,相应的负载并不重,保持多个虚拟机彼此不发生冲突

D.内核外的某个功能模块出错不会导致整个系统崩溃

【解析】本题主要考查外核的优点。

D选项是微内核的优点。

【知识链接】外核架构能为不同的应用提供定制化的高效资源管理,按照不同应用领域的要求,对硬件资源进行抽象模块化处理,将其封装为一系列的库,与应用直接连接,降低了应用开发的复杂度。

外核架构有以下两个好处。

(1)可以按照应用领域的特点与需求,动态组装成适合该应用领域的库操作系统(LibOS),最小化非必要代码,从而获得更高的性能。

(2)处于硬件特权级的操作系统可以做到非常小,并且由于对各个LibOS之间的强隔离性,从而可以提升整个计算机系统的安全性和可靠性。

外核架构的缺点是LibOS通常是为某种应用定制的,缺乏跨场景的通用性,应用生态差,较难应用于功能要求复杂,生态与接口丰富的场景。

【答案】D

第五节 操作系统引导

考点17 操作系统引导

重要程度

★★

历年回顾

全国统考:2022年(选择题)
院校自主命题:未涉及

【例1·选择题】【模拟题】以下关于BIOS说法错误的是(  )。

A.BIOS一旦写入,永远不可修改

B.主板上有专用的纽扣电池为BIOS供电,防止BIOS设置信息丢失

C.BIOS能够设置开机引导设备的顺序

D.经典BIOS的设置操作不能使用鼠标,只能使用键盘

【解析】本题主要考查基本输入输出系统(Basic Input Output System,BIOS)的基本概念。

早期的BIOS是直接焊在主板上的,是个只读储存器,控制程序是烧录在其中的,但并不是说它就永远无法修改。后来为了便于升级和维修,便改成了可拆可写的。因此,A选项说法错误。

【知识链接】操作系统引导是指将操作系统装入内存并启动系统的过程。

整个操作系统引导的过程可以总结为以下几个步骤。

(1)BIOS负责为操作系统内核的运行进行预先检测,主要包括中断服务程序、系统设置程序、上电自检和系统启动自举程序。

中断服务程序:是系统软、硬件之间的一个可编程接口,用于完成硬件的初始化

系统设置程序:用来设置CMOS RAM中的各项参数

上电自检:主要是对关键外设进行检查

系统启动自举程序:用来完成接下来的系统启动过程

(2)系统启动自举程序按照CMOS中的启动顺序配置,顺序查找有效驱动器,读入操作系统引导程序。

(3)BIOS将操作系统控制权交给引导程序,并由引导程序装入内核代码。

(4)引导程序将CPU控制权交给内核,内核开始运行。

(5)完成内核初始化功能,包括对硬件电路等的低级初始化,以及对内核数据结构,如页表、中断向量表等的初始化。

(6)内核启动用户接口,使操作系统处于等待命令输入的状态。

(7)如果操作系统有图形用户界面(Graphical User Interface,GUI),GUI将在整个操作系统引导过程的最后运行。

【答案】A

【例2·选择题】【全国统考2022年】下列选项中,需要在操作系统进行初始化过程中创建的是(  )。

A.中断向量表

B.文件系统的根目录

C.硬盘分区表

D.文件系统的索引节点表

【解析】本题主要考查操作系统的初始化过程。

在操作系统进行初始化的过程中需要创建中断向量表,用于实现“中断处理”,CPU检测到中断信号后,根据中断号查询中断向量表,跳转到对应的中断处理程序,A选项正确。当硬盘被逻辑格式化时,需要对硬盘进行分区,即创建硬盘分区表。分区完成后,需要在每个分区初始化一个特定的文件系统,并创建文件系统的根目录。如果某个分区采用UNIX系统,则需要在该分区中建立文件系统的索引节点表。综上,C选项是在硬盘被逻辑格式化的过程中完成的,B选项、D选项是在初始化文件系统的过程中完成的。

【答案】A

第六节 虚拟机

考点18 虚拟机

重要程度

历年回顾

全国统考:未涉及
院校自主命题:未涉及

【例·选择题】【模拟题】关于虚拟机,以下说法正确的是(  )。

A.所有虚拟机共享操作系统内核资源

B.客户操作系统可以直接访问I/O设备

C.在没有硬件支持的虚拟化环境中,客户操作系统直接管理自己内部运行的应用的虚拟内存映射

D.虚拟机管理器是一个比操作系统简单的软件系统

【解析】本题主要考查虚拟机的基本概念。

虚拟机是指“虚拟”的计算机,是由软件模拟实现出来的计算机,实际上它是将本地主机上的硬盘和内存划分出一部分或几部分,虚拟成一台或多台子机。这些虚拟出的新计算机拥有独立的硬盘、软驱、光驱和操作系统,可以像使用普通计算机一样使用它们,如同时运行多个不同的操作系统等,对真实的计算机不会产生任何的影响。所以A选项、B选项、C选项说法错误。虚拟机管理器是一个管理虚拟机的应用软件,它建立和维护一个管理虚拟机的框架,同时为其他虚拟设备驱动程序提供许多重要的服务,所以D选项说法正确。

【知识链接】虚拟机管理器可以模拟运行在一个完全隔离环境中的具有完整硬件系统功能的计算机系统。在大多数情况下,在实体计算机上能完成的工作在虚拟机中都能完成。承载虚拟机的机器称为虚拟机的宿主机。

【答案】D

过关练习

选择题

1.【模拟题】操作系统必须提供的功能是(  )。

A.GUI

B.命令接口

C.处理中断

D.编译源程序

2.【模拟题】下列关于操作系统结构的说法中,正确的是(  )。

Ⅰ.当前广泛使用的Windows操作系统采用的是分层式操作系统结构

Ⅱ.模块化操作系统结构设计的基本原则是每一层都仅使用其底层所提供的功能和服务,这样使系统的调试和验证都变得容易

Ⅲ.由于微内核结构能有效支持多处理机运行,故非常适合于分布式系统环境

Ⅳ.采用微内核结构设计和实现操作系统具有诸多好处,如添加系统服务时不必修改内核,使系统更高效等

A.仅Ⅰ、Ⅱ

B.仅Ⅰ、Ⅲ

C.仅Ⅲ

D.仅Ⅲ、Ⅳ

3.【模拟题】操作系统的功能不包括(  )。

A.设备管理

B.处理器管理和存储管理

C.文件管理和作业管理

D.用户管理

4.【模拟题】设计实时操作系统,首先要考虑的是(  )。

A.周转时间和系统吞吐量

B.交互性和响应时间

C.灵活性和可适应性

D.实时性和可靠性

5.【电子科技大学2014年】引入多道程序技术的前提条件之一是系统具有(  )。

A.分时功能

B.中断功能

C.多CPU技术

D.SPOOLing技术

6.【模拟题】在操作系统中,有些指令只能在系统的内核状态下运行,而不允许普通用户程序使用。下列操作中,可以运行在用户态下的是(  )。

A.设置定时器的初值

B.触发trap指令

C.内存单元复位

D.关闭中断允许位

7.【全国统考2022年】下列关于CPU模式的叙述中,正确的是(  )。

A.CPU处于用户态时只能执行特权指令

B.CPU处于内核态时只能执行特权指令

C.CPU处于用户态时只能执行非特权指令

D.CPU处于内核态时只能执行非特权指令

8.【全国统考2019年】下列关于系统调用的叙述中,正确的是(  )。

Ⅰ.在执行系统调用服务程序的过程中,CPU处于内核态

Ⅱ.操作系统通过提供系统调用避免用户程序直接访问外设

Ⅲ.不同的操作系统为应用程序提供了统一的系统调用接口

Ⅳ.系统调用是操作系统内核为应用程序提供服务的接口

A.仅Ⅰ、Ⅳ

B.仅Ⅱ、Ⅲ

C.仅Ⅰ、Ⅱ、Ⅳ

D.仅Ⅰ、Ⅲ、Ⅳ

9.【模拟题】下列关于批处理技术和多道程序设计技术的说法中,正确的是(  )。

Ⅰ.批处理系统的最大缺点是不能并发执行

Ⅱ.所谓多道程序设计,是指每个时刻都有若干个进程在执行

Ⅲ.引入多道程序设计的前提条件之一是系统具有中断功能

Ⅳ.在采用多道程序设计的系统中,系统的程序道数越多,系统的效率越高

A.仅Ⅰ、Ⅱ

B.仅Ⅱ、Ⅲ

C.仅Ⅲ

D.仅Ⅰ、Ⅳ

10.【浙江大学2003年】下列选项中,(  )不是操作系统关心的主要问题。

A.管理计算机逻辑

B.设计、提供用户程序与计算机硬件系统的界面

C.管理计算机系统资源

D.高级程序设计语言的编译器

答案与解析

答案速查表

题号

1

2

3

4

5

6

7

8

9

10

答案

C

C

D

D

B

B

C

C

C

D

1.【解析】本题主要考查操作系统的功能。

A选项错误。GUI是为方便用户使用而出现的,实际上它的功能是通过各种指令来实现的,操作系统可以不提供这个功能。

B选项错误。命令接口是操作系统提供给用户的接口,可以让用户使用命令来管理计算机,但这不是操作系统的必备组成。

C选项正确。处理中断是操作系统必须提供的功能,开机时程序中的第一条指令就是一个Jump指令,指向一个中断处理程序的地址,进行开机自检等一系列操作。

D选项错误。对于操作系统来说,一般是不提供编译源程序这项功能的。对于各种编译源程序,通常都有相应的编译程序或者编译器。

【答案】C

2.【解析】本题主要考查操作系统多种结构的特点。

Ⅰ说法错误。当前比较流行的、能支持多处理机运行的操作系统,大多采用微内核结构,如Windows操作系统。

Ⅱ说法错误。模块化操作系统结构设计的基本原则是分解和模块化。Ⅱ中描述的是分层式操作系统结构设计的基本原则。

Ⅳ说法错误。微内核结构将操作系统的很多服务移动到内核外(如文件系统),且服务使用进程间的通信机制进行信息交换,这种通过进程间的通信机制进行的信息交换影响了系统的效率,所以微内核结构设计并不会使系统更高效。一般来说,内核的服务越少,内核越稳定。

Ⅲ说法正确。

【答案】C

3.【解析】本题主要考查操作系统的功能。

操作系统的功能一般包括处理器管理、存储管理、文件管理、设备管理和作业管理等。

【答案】D

4.【解析】本题主要考查实时操作系统的概念。

实时操作系统首要考虑的是实时性和可靠性。

【答案】D

5.【解析】本题主要考查多道程序技术的特点。

A选项错误。分时功能主要是基于时间片轮转来实现的,增加了用户和系统的交互性。

B选项正确。在I/O操作发生阻塞时,可以调度其他可运行的作业继续运行。也就是说,内存中同时保持多道程序,主机以交替的方式同时处理,从而实现CPU与I/O设备的并行工作。多道程序交替执行必须要有中断功能的支持。因此,引入多道程序技术的操作系统必须具备中断功能。

C选项错误。多CPU技术可以让系统实现并行,而多道程序技术讲的只是并发,在一个CPU上也可以实现。

D选项错误。SPOOLing技术是设备虚拟化技术,可以将一个独占式设备转换为共享设备,这属于I/O管理的范畴,跟多道程序技术没有关系。

【答案】B

6.【解析】本题主要考查用户态与内核态。

设定定时器的初值属于时钟管理的内容,需要在内核态运行,所以A选项错误;触发trap指令是用户态到内核态的入口,可以在用户态下运行,所以B选项正确;内存单元复位属于存储器管理的系统调用服务,用户态下随便控制内存单元的复位是很危险的行为。关闭中断允许位属于中断机制,它们都只能运行在内核态下。

【答案】B

7.【解析】本题主要考查对用户态、内核态以及特权指令的理解。

用户态下只能执行非特权指令,这是明确的。那么在内核态下,是只能执行特权指令呢,还是也可以执行非特权指令?大家可以直接思考系统调用的过程,在进行系统调用的时候,进程会进入内核态,但是在内核态中,进程并不是只可以执行特权指令,也可以执行类似于简单的数据计算等非特权的指令。

【答案】C

8.【解析】本题主要考查系统调用的基本概念。

用户可以在用户态调用操作系统的服务,但执行具体的系统调用服务程序是处于内核态的,所以Ⅰ正确。

设备管理属于操作系统的职能之一,包括对输入/输出设备的分配、初始化、维护等,用户程序需要通过系统调用使用操作系统的设备管理服务,所以Ⅱ正确。

操作系统不同,底层逻辑、实现方式也会不同,为应用程序提供的系统调用接口也不同,所以Ⅲ错误。

系统调用是用户在应用程序中调用操作系统提供的子功能,所以Ⅳ正确。

【答案】C

9.【解析】本题主要考查批处理技术和多道程序设计的基本概念。

Ⅰ说法错误。批处理系统的最大缺点是缺乏交互性。

Ⅱ说法错误。多道程序设计是指把多个程序同时存放在内存中,使它们同时处于运行状态。但是,在单处理机环境中,同一时刻只能有一个进程在执行。

Ⅲ说法正确。有了中断后才能实现进程并发,而实现了进程间的并发才有可能把多个进程装入内存实现多道程序设计技术。

Ⅳ说法错误。程序道数如果过多的话,会导致每个程序分配到的内存不够,很多程序所需的代码需要临时从磁盘调入内存,系统会频繁地处于I/O状态中,导致系统效率降低。

【答案】C

10.【解析】本题主要考查操作系统的作用。

从计算机资源的角度来看,操作系统的作用是管理计算机的硬件(逻辑)和软件等各种系统资源,所以A选项、C选项正确;从用户角度来看,操作系统的作用是提供用户程序和计算机硬件系统之间的接口,所以B选项正确;而高级程序设计语言的编译器不属于操作系统的作用范围,因此应该选择D选项。

【答案】D

相关图书

统信UOS应用开发详解
统信UOS应用开发详解
统信UOS操作系统使用教程 (第2版)
统信UOS操作系统使用教程 (第2版)
统信UOS应用开发实战教程
统信UOS应用开发实战教程
统信UOS应用开发进阶教程
统信UOS应用开发进阶教程
龙芯应用开发标准教程
龙芯应用开发标准教程
FreeBSD操作系统设计与实现(第2版)英文版
FreeBSD操作系统设计与实现(第2版)英文版

相关文章

相关课程