跳到主要内容

408模拟选择题 · 操作系统 · 第1章 计算机系统概述

1.1 操作系统的基本概念

1.1.1 操作系统的概念

  1. 【王道·卷一-Q27】 下列关于进程的相关说法中,正确的是( )。
A. 一个进程的状态发生变化总会引起其他一些进程的状态发生变化
B. wait、signal操作可以解决一切互斥问题
C. 在进程对应的代码中使用wait、signal操作后,可以防止系统发生死锁
D. 程序的顺序执行具有不可再现性
查看答案与解析

答案: B

解析: wait、signal 操作是信号量机制的基本操作。只要合理设置并正确使用信号量,就可以实现进程之间的互斥访问,因此 B 正确。A 错误,一个进程的状态变化不一定影响其他进程,例如运行进程因时间片用完转为就绪态时,其他进程的状态未必变化。C 错误,wait、signal 使用不当仍可能产生死锁,例如多个进程以不同顺序申请多个资源。D 错误,程序顺序执行具有顺序性、封闭性和可再现性;不可再现性通常是并发执行且缺少正确同步时可能出现的特征。


  1. 【王道·卷五-Q24】 系统中有 n(n>2)\displaystyle n(n > 2) 个进程,且当前未执行进程调度程序,则( )不可能发生。
A. 有1个运行进程,没有就绪进程,剩下的 n1\displaystyle n - 1 个进程处于等待状态
B. 有1个运行进程和 n1\displaystyle n - 1 个就绪进程,但没有进程处于等待状态
C. 有1个运行进程和1个就绪进程,剩下的 n2\displaystyle n - 2 个进程处于等待状态
D. 没有运行进程但有2个就绪进程,剩下的 n2\displaystyle n - 2 个进程处于等待状态
查看答案与解析

答案: D

解析: 在单处理机系统中,任一时刻至多有一个进程处于运行态。若当前没有进程运行,但就绪队列中已有进程,则处理机应由调度程序选取一个就绪进程投入运行。题目明确说明当前未执行进程调度程序,因此“不存在运行进程、却存在就绪进程”的状态不可能稳定出现,D 正确。A、B、C 均可能出现:只要有一个进程占用处理机,其余进程可以全部就绪、全部等待,或部分就绪部分等待。


  1. 【王道·卷六-Q30】 在下列选项中,( )不能提高对文件的访问速度。
A. 改进文件的目录结构和检索目录的方法来减少对目录的查找时间
B. 选取好的文件存储结构,以提高对文件的访问速度
C. 提高磁盘的I/O速度,文件中的数据能快速地从磁盘传输到内存,或者相反
D. 优化进程的调度算法,提高CPU的利用率
查看答案与解析

答案: D

解析: 文件访问时间主要由目录检索时间、文件块定位时间以及磁盘 I/O 传输时间构成。A 可缩短文件名查找和目录检索时间;B 可通过合理的连续、链接或索引等文件存储结构减少寻道和块定位开销;C 可直接缩短磁盘与内存之间的数据传输时间。D 优化的是处理机分配与 CPU 利用率,并不能直接缩短文件目录查找、磁盘寻道或数据传输时间,因此不能提高文件本身的访问速度。


  1. 【王道·卷八-Q26】 假设系统有5个进程,以及 A\displaystyle AB\displaystyle BC\displaystyle C 三类资源。某时刻进程和资源状态如下:
AllocationMaxAvailable
ABCABCABC
P1212559233
P2402536
P34054011
P4204425
P5314424

在下列叙述中,正确的是( )。

A. 系统不安全    B. 该时刻系统安全,安全序列为 <P1,P2,P3,P4,P5>\displaystyle < P_1, P_2, P_3, P_4, P_5>
C. 该时刻系统安全,安全序列为 <P2,P3,P4,P5,P1>\displaystyle < P_2, P_3, P_4, P_5, P_1>    D. 该时刻系统安全,安全序列为 <P4,P5,P1,P2,P3>\displaystyle < P_4, P_5, P_1, P_2, P_3>
查看答案与解析

答案: D

解析: 先计算各进程尚需资源向量 Need=MaxAllocation\displaystyle Need=Max-Allocation

进程Need(A,B,C)
P1(3,4,7)\displaystyle (3,4,7)
P2(1,3,4)\displaystyle (1,3,4)
P3(0,0,6)\displaystyle (0,0,6)
P4(2,2,1)\displaystyle (2,2,1)
P5(1,1,0)\displaystyle (1,1,0)

初始可用资源为 Work=(2,3,3)\displaystyle Work=(2,3,3)。此时 P4 和 P5 均可满足。按照选项 D 检查:

P4 完成后: Work=(2,3,3)+(2,0,4)=(4,3,7)P5 完成后: Work=(4,3,7)+(3,1,4)=(7,4,11)P1 完成后: Work=(7,4,11)+(2,1,2)=(9,5,13)P2 完成后: Work=(9,5,13)+(4,0,2)=(13,5,15)P3 完成后: Work=(13,5,15)+(4,0,5)=(17,5,20)\displaystyle \begin{aligned} P4\text{ 完成后: }Work&=(2,3,3)+(2,0,4)=(4,3,7)\\ P5\text{ 完成后: }Work&=(4,3,7)+(3,1,4)=(7,4,11)\\ P1\text{ 完成后: }Work&=(7,4,11)+(2,1,2)=(9,5,13)\\ P2\text{ 完成后: }Work&=(9,5,13)+(4,0,2)=(13,5,15)\\ P3\text{ 完成后: }Work&=(13,5,15)+(4,0,5)=(17,5,20) \end{aligned}

每一步均满足当前进程的 Need 不超过 Work,因此 <P4,P5,P1,P2,P3>\displaystyle <P4,P5,P1,P2,P3> 是安全序列,系统处于安全状态。B 中 P1 初始不能获得所需资源,C 中 P2 初始也不能获得所需的 C 类资源。


1.1.2 操作系统的功能和目标

  1. 【王道·卷一-Q23】 操作系统可以管理计算机系统的各类资源,并对资源进行虚拟化。下列关于虚拟化的说法中,正确的是( )。 I. 时间片轮转调度算法是一种对CPU资源的虚拟化 II. 内存分区是一种对内存资源的虚拟化 III. SPOOLing是一种设备虚拟技术,采用了类似于脱机输入/输出的思想 IV. 虚拟机管理程序一定运行在内核态
A. I、II、III    B. I、II    C. II、III    D. I、II、III、IV
查看答案与解析

答案: A

解析: I 正确,时间片轮转通过时分复用,使多个进程在逻辑上分别拥有自己的“虚拟 CPU”。II 正确,内存分区属于空间复用,将一块物理内存划分为多个相互独立的逻辑存储区域,供多个进程使用。III 正确,SPOOLing 利用磁盘作为输入井和输出井,把独占设备改造为多用户可共享的逻辑设备,其思想源于脱机输入/输出。IV 错误,第一类虚拟机管理程序直接运行在硬件上,处于最高特权级;第二类虚拟机管理程序则作为宿主操作系统上的应用程序运行,不一定直接运行在内核态。


  1. 【竟成·模拟六-23】 下列关于操作系统功能的说法中,错误的是()。
A. 操作系统是一种系统软件,用于控制和管理计算机的各种硬件资源并为用户提供服务
B. 分时系统可以同时支持多个用户访问系统,而用户通常可以获得独立的计算资源
C. 操作系统允许将进程的逻辑地址空间映射到物理内存中的不连续区域
D. 作业调度是指操作系统如何分配CPU时间给不同的进程
查看答案与解析

答案: D

解析: A 正确,操作系统负责管理处理机、存储器、设备和文件等资源,并向用户和应用程序提供服务。B 正确,分时系统通过时间片轮转支持多个用户交互使用系统,各用户在逻辑上感觉自己独占计算机。C 正确,分页等存储管理方式可把连续的逻辑地址空间映射到不连续的物理页框中。D 错误,作业调度又称高级调度,负责从外存后备队列中选择作业调入内存并建立进程;把 CPU 分配给不同就绪进程的是进程调度或低级调度。


1.2 操作系统发展历程

  1. 【竟成·模拟二-23】 下列说法正确的是()。 I. 设备与设备之间可以不借助处理机就完成通信 II. 分时操作系统中,所有的任务必须在约定时间内完成 III. 在多道批处理系统中,各程序的执行过程存在不确定性 IV. 多任务操作系统需要多CPU支持才能工作
A. I、II    B. I、III    C. II、III    D. II、IV
查看答案与解析

答案: B

解析: I 正确,借助设备控制器、DMA 控制器或通道等专门硬件,设备间的数据传送可以不由 CPU 逐字节直接干预。II 错误,要求任务必须在规定截止时间内完成的是硬实时系统;分时系统主要强调交互性和及时响应。III 正确,多道程序并发执行时,各程序会因调度、I/O 和资源竞争等因素以不可预知的速度推进,因此执行过程具有异步性和不确定性。IV 错误,多任务并不要求多 CPU;单 CPU 也可通过快速切换和时间片轮转实现多个任务的并发执行。


1.3 操作系统的运行环境

1.3.1 操作系统内核

  1. 【王道·卷七-Q23】 多用户系统有必要保证进程的独立性,保证操作系统本身的安全,但为了向用户提供更大的灵活性,应尽可能少地限制用户进程。在下面列出的各操作中,( )是必须加以保护的。
A. 从内核态转换到用户态    B. 从存放操作系统内核的空间读取数据
C. 从存放操作系统内核的空间读取指令    D. 打开定时器
查看答案与解析

答案: D

解析: 定时器是操作系统实现时间片轮转和防止用户进程长期独占 CPU 的关键硬件。若用户进程可以任意打开、设置或重新装载定时器,就可能改变定时中断的发生时刻,破坏操作系统的调度与计时机制,因此对定时器的操作必须加以保护,D 正确。A 是从高特权级切换到低特权级,不会扩大用户权限。B、C 都属于对内核只读内容的读取,在保证不能修改内核且不能借此执行特权操作的前提下,不是本题所强调的必须保护操作。


1.3.2 处理机的双重工作模式

  1. 【王道·卷二-Q24】 在操作系统中,以下过程通常不需要切换到内核态执行的是( )。
A. 执行I/O指令    B. 系统调用    C. 通用寄存器清零    D. 修改页表
查看答案与解析

答案: C

解析: I/O 指令直接控制外部设备,修改页表会改变地址映射和内存保护机制,这两类操作均属于特权操作,必须在内核态执行。系统调用由用户程序执行陷入指令进入内核,其服务程序也在内核态运行。通用寄存器清零只是普通的数据处理操作,不涉及系统资源或特权状态,通常可在用户态直接完成,因此选 C。


  1. 【王道·卷三-Q23】 在下列关于CPU内核态和用户态两种运行模式的说法中,正确的是( )。 I. 外部设备I/O操作完成时,就会发出中断信号,然后CPU立即切换到内核态 II. 假设系统采用虚拟内存管理,当进行地址转换时,若页号大于页表长度,则CPU需要切换到内核态 III. 假设系统采用虚拟内存管理,若要访问的页面不在内存,则CPU需要切换到内核态 IV. 当CPU响应并处理中断时,此时一定发生了进程切换
A. I、II、III    B. I、II    C. II、III    D. I、II、III、IV
查看答案与解析

答案: A

解析: I 正确,I/O 完成后设备控制器发出中断请求,CPU 在响应中断时由硬件切换到内核态,并进入相应的中断处理程序。II 正确,页号超过页表长度属于地址越界,会引发异常,CPU 转入内核态由操作系统处理。III 正确,页面不在内存会产生缺页异常,必须进入内核态执行缺页处理程序。IV 错误,中断处理并不必然引起进程切换;例如某些中断处理完成后,原进程仍可恢复执行,只有调度条件满足且调度器决定切换时才会发生进程切换。


  1. 【王道·卷六-Q23】 在操作系统中,有些指令只能在系统的内核态下运行,而不允许普通用户程序使用。在下列操作中,可以运行在用户态下的是( )。
A. 设置定时器的初值    B. 触发Trap指令    C. 内存单元复位    D. 关闭中断允许位
查看答案与解析

答案: B

解析: Trap 指令又称访管指令,是用户程序主动请求操作系统服务的受控入口,因此它必须允许在用户态执行。执行 Trap 指令后,处理器产生自陷异常,由硬件完成从用户态到内核态的切换,再由内核处理系统调用。A 中设置定时器初值会影响系统计时与进程调度,C 中内存单元复位可能破坏系统或其他进程的数据,D 中关闭中断会影响操作系统重新取得处理机控制权,这三项均属于特权操作,只能在内核态执行。


  1. 【王道·卷八-Q23】 在以下操作中,不能在用户态运行的是( )。
A. 算术运算指令    B. 从内存取数指令    C. 输入/输出指令    D. 将结果送入内存指令
查看答案与解析

答案: C

解析: 输入/输出指令会直接控制外部设备,若允许用户程序任意执行,可能造成设备冲突、越权访问或破坏系统运行,因此通常被规定为特权指令,只能由内核执行。算术运算、从合法用户地址取数以及向合法用户地址写入结果,都是普通用户程序运行所必需的操作,可以在用户态执行;硬件仍会通过地址界限、页表权限等机制检查其内存访问是否合法。


  1. 【竟成·模拟二-24】 下列选项执行或发生过程中,导致用户态切换到内核态的指令是()。
A. 关中断指令    B. 访管指令    C. 将计算结果送进内存    D. 输入/输出指令
查看答案与解析

答案: B

解析: 访管指令是用户程序可执行的特殊指令,用于主动发起系统调用。执行访管指令时,处理器产生自陷,并由硬件将运行状态从用户态切换到内核态,因此 B 正确。关中断指令和输入/输出指令本身属于特权指令,用户程序不能合法直接执行;若强行执行,产生的是非法指令或特权级异常,而不是通过这些指令正常完成系统调用。将计算结果写入合法的用户内存属于普通操作,不需要切换到内核态。


  1. 【竟成·模拟三-23】 下列操作中,可以在用户态执行的有()。 I. 执行除法指令 II. 初始化中断向量表 III. 执行Trap指令 IV. 从内存中取数 V. 改变程序计数器(PC)的值 VI. 关闭中断允许位
A. 2种    B. 3种    C. 4种    D. 5种
查看答案与解析

答案: C

解析: 可以在用户态执行的共有 I、III、IV、V 四种。I 中除法属于普通算术指令;III 中 Trap 指令是用户程序请求内核服务的合法入口;IV 中从合法用户地址取数是普通访存操作;V 中转移、调用、返回等普通控制转移指令都会改变程序计数器的值,因此用户态程序可以在自身代码范围内改变 PC。II 中初始化中断向量表会修改中断处理入口,VI 中关闭中断会影响系统对处理机的控制,二者均属于特权操作,只能在内核态执行。


  1. 【竟成·模拟四-26】 系统在用户态下运行时,以下说法正确的有()。 I. 可以执行访管指令 II. 可以执行命令解释程序 III. 可以设置时钟寄存器 IV. 不可以执行缺页处理程序
A. I、II、III    B. I、II、IV    C. I、III、IV    D. II、III、IV
查看答案与解析

答案: B

解析: I 正确,访管指令必须能够在用户态执行,用户程序借此触发系统调用并进入内核。II 正确,命令解释程序通常是运行在用户态的系统程序,它解析用户命令,并在需要内核服务时通过系统调用提出请求。III 错误,设置时钟寄存器会影响系统计时、时间片和调度,属于特权操作。IV 正确,缺页处理程序需要修改页表、分配页框并启动磁盘 I/O,必须在内核态执行,用户态不能直接运行。


1.3.3 中断和异常的概念

  1. 【王道·卷二-Q31】 在下列 I/O 方式中,会导致用户进程进入阻塞态的是( )。 I. 程序直接控制 II. 中断控制方式 III. DMA 控制方式
A. I、II    B. I、III    C. II、III    D. I、II、III
查看答案与解析

答案: D

解析: 用户进程发出 I/O 请求后,通常无法继续执行依赖该 I/O 结果的后续操作,因此操作系统会将其由运行态转为阻塞态,待 I/O 完成后再将其唤醒。程序直接控制、中断控制和 DMA 控制的区别,主要在于设备数据传送过程中 CPU 的参与程度不同,并不改变发出同步 I/O 请求的用户进程需要等待这一事实。因此三种方式均可能使用户进程进入阻塞态。


  1. 【王道·卷五-Q23】 中断是操作系统赖以生存的基础,在下列关于中断的说法中,正确的是( )。 I. 中断在操作系统中有着特殊的地位,它是多道程序得以实现的基础,没有中断,就不可能实现多道程序,因为进程之间的切换是通过中断来完成的 II. 为了提高处理机的利用率以及实现CPU与I/O设备的并行,必须有中断的支持 III. 中断处理程序是I/O系统中最低的一层,它是整个I/O系统的基础
A. I、II    B. II、III    C. I、III    D. I、II、III
查看答案与解析

答案: D

解析: I 正确,中断和异常使操作系统能够在设备完成、时间片到期或进程请求服务时重新获得 CPU 控制权,并据此完成进程调度和切换,是多道程序并发运行的重要基础。II 正确,采用中断后,CPU 启动 I/O 设备即可转去执行其他程序,设备完成时再通知 CPU,从而减少忙等并实现 CPU 与 I/O 设备并行工作。III 正确,中断处理程序直接承接设备控制器发出的中断请求,完成最基本、最紧迫的现场保护、状态读取和应答等工作,处于 I/O 软件层次的最底层,是上层设备驱动和设备独立性软件正常工作的基础。


  1. 【王道·卷五-Q27】 在下列叙述中,错误的是( )。 I. 在请求分页存储管理中,若将页面的大小增加一倍,则缺页中断次数减少一半 II. 分页存储管理方案在逻辑上扩充了主存容量 III. 在分页存储管理中,减小页面可减少内存的浪费,因此页面越小越好 IV. 一个虚拟存储器的地址空间的大小等于辅存的容量加上主存的容量
A. I、III和IV    B. II、III和IV    C. III和IV    D. I、II、III和IV
查看答案与解析

答案: D

解析: 四个说法均错误。I 错误,缺页次数取决于程序访问局部性、分配页框数、置换算法和页面大小等多种因素,页面扩大一倍并不意味着缺页次数必然减半。II 错误,普通分页存储管理只改变内存的分配和地址映射方式,并未在逻辑上扩充主存;具有请求调页功能的虚拟存储系统才向进程提供大于物理内存的逻辑地址空间。III 错误,页面变小虽可减少页内碎片,但会增大页表、地址转换和 I/O 管理开销,因此页面并非越小越好。IV 错误,虚拟地址空间大小主要由虚拟地址位数和系统结构决定,并不等于主存容量与辅存容量之和,同时还会受到系统可用交换空间等条件的限制。


  1. 【王道·卷五-Q28】 在请求分页存储管理系统中,地址变换过程可能会因为( )而产生中断。 I. 地址越界 II. 缺页 III. 访问权限错误 IV. 内存溢出
A. I和II    B. I、II、III和IV    C. 仅II    D. I、II和III
查看答案与解析

答案: D

解析: 地址变换时,若逻辑页号超过进程页表允许的范围,会产生地址越界异常;若页表项的存在位表明页面尚未调入内存,会产生缺页异常;若访问类型与页表项中的读、写、执行权限不符,会产生访问保护异常。因此 I、II、III 都可能使处理器进入内核处理。所谓内存溢出通常是内存申请失败、栈空间不足等更高层问题,并不是地址变换部件在查页表过程中直接检测出的固定异常类型,IV 不选。


  1. 【竟成·模拟五-31】 下列选项中,叙述错误的是()。
A. 在多重中断系统中,在操作系统保存现场后需要开中断
B. 点击鼠标会引起外部中断
C. 中断响应阶段是由指令系统中的中断隐指令完成的
D. 当外部中断返回后,程序返回到发生中断的指令的下一条指令处执行
查看答案与解析

答案: C

解析: C 错误。中断响应阶段确实由所谓“中断隐指令”完成,但中断隐指令不是指令系统中一条可由程序显式编写和执行的普通机器指令,而是 CPU 硬件在检测并响应中断时自动完成的一组操作,例如关中断、保存断点和转入中断服务程序。A 正确,在允许中断嵌套的多重中断系统中,进入中断服务程序后应先保护必要现场,再适时开中断,以便响应更高优先级中断。B 正确,鼠标事件经设备控制器向 CPU 发出外部中断请求。D 正确,外部中断通常在一条指令执行结束后被响应,保存的断点是下一条待执行指令的地址,因此中断返回后从下一条指令继续执行。


1.3.4 系统调用

  1. 【王道·卷二-Q23】 在同一台计算机上,运行Windows、Linux、UNIX等不同的操作系统,它们的系统调用一般是通过执行( )的系统调用指令来实现的;运行在不同硬件平台上的相同Linux操作系统,它们执行的系统调用指令一般是( )的。
A. 相同,相同    B. 相同,不同    C. 不同,不同    D. 不同,相同
查看答案与解析

答案: B

解析: 系统调用指令属于处理器指令系统的一部分,其具体形式由硬件体系结构决定,而不是由操作系统自行任意规定。因此,在同一台计算机、即同一硬件平台上运行不同操作系统时,它们通常都要使用该处理器提供的同一种陷入或系统调用指令,第一空为“相同”。同一个 Linux 移植到不同硬件平台后,需要分别使用各平台指令系统提供的系统调用入口指令,例如不同体系结构可能采用不同的 Trap、SVC 或专用系统调用指令,第二空为“不同”。故选 B。


  1. 【王道·卷五-Q29】 大多数操作系统中都引入了“打开”文件系统调用,在下列关于打开文件操作的说法中,错误的是( )。
A. “打开”是指系统将指定文件的属性(包括该文件在外存上的物理位置)从外存复制到内存打开文件表的一个表中,并将该表目的编号(也称索引号)返回给用户
B. “打开”是指在用户和指定文件之间建立一个连接,此后用户可以通过该连接直接得到文件信息,从而避免再次通过目录检索文件
C. 文件被打开后,用户对文件的任何操作都只需使用文件描述符fd而非路径名
D. 与打开文件相对应的是“关闭”文件系统调用,每个用户使用完文件后,都会执行“关闭”文件系统调用,并将文件的控制信息写回外存
查看答案与解析

答案: D

解析: “打开”文件时,操作系统根据路径名检索目录,将文件控制信息装入内存中的打开文件表,并向进程返回文件描述符,因此 A、B 正确。文件打开后,后续读、写、定位等操作通常以文件描述符作为参数,无须反复进行路径检索,因此 C 正确。D 的表述过于绝对:关闭文件时,系统通常先释放进程打开文件表项、减少系统打开文件表中的引用计数;只有在需要且满足相应条件时,才把被修改的文件元数据或缓存内容写回外存,并非每个用户每次关闭文件都必然立即将全部控制信息写回外存。此外,进程异常结束时,操作系统也可代为关闭文件。因此 D 错误。


  1. 【竟成·模拟一-24】 当用户进程通过系统调用陷入内核态时,下列描述正确的是()。
A. CPU需保存用户态寄存器到当前进程的PCB中,并切换至共享内核栈执行
B. 若此时发生磁盘中断,处理程序一定会直接复用当前进程的内核栈保存上下文
C. 系统调用返回前若进程被阻塞,需将用户栈内容复制到PCB以便后续恢复
D. 中断处理程序执行期间,进程调度器可能将CPU分配给其他就绪进程
查看答案与解析

答案: D

解析: 系统调用陷入内核后,硬件和内核会保存必要的用户态现场,并切换到内核执行环境。A 错在“共享内核栈”,现代操作系统通常为每个进程或线程配置独立的内核栈,而不是让所有进程共同使用同一个栈;寄存器现场也不一定直接保存到 PCB 的固定字段中,常先压入内核栈。B 中“一定”错误,中断上下文可使用当前内核栈,也可能使用专用中断栈,具体取决于体系结构和操作系统实现。C 错误,进程阻塞时只需保存 CPU 上下文及相关内核状态,用户栈本身已位于该进程的虚拟地址空间,无须整体复制到 PCB。D 正确,中断或系统调用处理过程中若出现调度时机,例如当前进程阻塞或更高优先级进程就绪,调度器可以选择其他就绪进程运行。


1.4 操作系统结构

  1. 【竟成·模拟一-23】 下列关于操作系统内核设计与内存管理的描述中,正确的是()。
A. 微内核将文件系统置于用户态,通过进程间通信,性能优于宏内核
B. 外核允许用户态直接管理物理内存,但需内核提供虚拟地址映射
C. 虚拟内存通过分页机制实现进程地址隔离,同时支持内存超量分配
D. 宏内核的模块间通过消息传递通信,耦合度低但扩展性更强
查看答案与解析

答案: C

解析: C 正确。虚拟内存通常借助分页和页表,为不同进程建立相互隔离的虚拟地址空间,并可通过请求调页、交换等机制使进程使用的虚拟内存总量超过当前可用物理内存。A 错误,微内核将文件系统等服务移至用户态,提高了可靠性和可扩展性,但客户进程与服务器之间需要频繁消息传递及特权级切换,性能通常不优于宏内核。B 错误,外核只负责物理资源的安全分配与保护,将虚拟内存等高级抽象交由用户态库操作系统实现,不能笼统地说必须由外核提供虚拟地址映射。D 错误,宏内核各功能模块处于同一内核地址空间,通常通过直接过程调用协作,耦合度较高,而不是主要通过消息传递通信。


微内核

  1. 【竟成·模拟四-23】 下列关于微内核的说法,错误的是()。
A. 微内核保留中断和陷入处理等功能    B. 相较于宏内核,微内核具有更好的安全性和可靠性
C. Unix属于微内核操作系统    D. 采用微内核的操作系统,用户程序不会直接和文件服务器通信
查看答案与解析

答案: C

解析: 微内核只在内核态保留最基本的机制,如中断与陷入处理、基本调度、低级地址空间管理和进程间通信,因此 A 正确。文件系统、设备驱动等服务运行在用户态,即使某个服务故障,通常也不会直接导致整个内核崩溃,所以微内核在隔离性、安全性和可靠性方面一般优于宏内核,B 正确。传统 UNIX 采用宏内核结构,并不属于微内核操作系统,因此 C 错误。微内核系统中的用户程序通过微内核提供的消息传递机制向文件服务器请求服务,通信必须受到微内核的转发和保护,用户程序不能绕过微内核直接调用文件服务器内部代码,D 正确。


1.5 操作系统引导

  1. 【王道·卷一-Q24】 操作系统第一个要运行的程序是引导扇区中存放的代码,这是一个汇编程序文件,引导扇区中存放的代码是( )。
A. 由BIOS写进去的    B. 安装操作系统时写进去的
C. 格式化硬盘时写进去的    D. 所有硬盘都固有一段代码
查看答案与解析

答案: B

解析: 引导扇区中的启动代码属于操作系统启动链的一部分,通常由操作系统安装程序或专门的引导程序安装工具写入,因此 B 正确。BIOS 固化在主板的 ROM 或闪存中,它负责通电后的初始化、自检以及读取启动设备的引导扇区,但不会在每次启动时把引导代码写入硬盘,A 错误。格式化主要建立文件系统等磁盘数据结构,不等同于安装操作系统引导程序,C 错误。新硬盘并不天然带有适用于所有操作系统的固定引导代码,D 错误。


  1. 【竟成·模拟五-23】 计算机开机后,需要进行BIOS引导,该过程的第一步是()。
A. 硬件自检    B. 将主引导记录加载到内存
C. 将分区引导记录加载到内存    D. 将OS内核加载到内存
查看答案与解析

答案: A

解析: 计算机通电后,CPU 首先执行固化在 ROM 或闪存中的 BIOS 程序。BIOS 首先进行通电自检,即 POST,检查 CPU、内存及基本外设是否能够正常工作,因此 A 正确。自检完成并确定启动设备后,BIOS 才将该设备的主引导记录加载到内存;随后由主引导记录定位活动分区并加载分区引导记录;最后再由启动管理器装入操作系统内核。因此 B、C、D 均位于 A 之后。


1.7 本章疑难点

  1. 【竟成·模拟七-23】 下列说法中,正确的有()个。 I. 配备了虚拟存储器的多道程序环境中,运行的进程越多,CPU利用率越高。 II. 外核是不同于微内核和宏内核的一种操作系统内核架构。 III. 操作系统提供的接口包括联机接口和脱机接口。图形用户界面(GUI)是一种脱机接口。 IV. 内存映射文件技术结合了虚拟内存管理技术与文件管理技术,方便易用,节省空间。
A. 1    B. 2    C. 3    D. 4
查看答案与解析

答案: B

解析: 正确的是 II、IV,共 2 个。I 错误,适当提高多道程序度可以在某进程等待 I/O 时让其他进程使用 CPU,但进程过多会造成内存紧张、频繁缺页甚至抖动,CPU 利用率反而可能下降。II 正确,外核将物理资源安全地暴露给用户态库操作系统,是区别于宏内核和微内核的另一种内核架构。III 前半句正确,但 GUI 属于交互式的联机用户接口,而不是脱机接口,所以整个说法错误。IV 正确,内存映射文件把文件内容映射到进程虚拟地址空间,使文件访问可转化为普通内存访问,并可由多个进程共享映射页,兼具使用方便和减少重复拷贝、节省内存空间等优点。