第一章

  1. 操作系统是对( )进行管理的软件。

A. 硬件
B. 软件
C. 计算机资源
D. 应用程序

答案:C. 计算机资源

解析:操作系统的核心功能是管理计算机系统中的各种资源,包括处理器、存储器、I/O 设备和文件等。

  1. 操作系统是一种( )。

A. 软件包
B. 应用软件
C. 系统软件
D. 通用软件

答案:C. 系统软件

解析:操作系统直接管理计算机硬件资源,并为应用程序提供运行环境,因此属于系统软件

  1. 下列选项中,不属于多道程序设计的基本特征是( )。

A. 间断性
B. 顺序性
C. 多道性
D. 无序性

答案:B. 顺序性

解析:多道程序设计的基本特征包括多道性间断性无序性。顺序性是单道程序顺序执行的特征。

  1. 提高 CPU 利用率的关键技术是( )。

A. 虚拟技术
B. 脱机技术
C. 交换技术
D. 多道程序设计技术

答案:D. 多道程序设计技术

解析:多道程序设计可以让多个程序同时进入内存。当一个程序等待 I/O 时,CPU 可以转去执行其他程序,从而提高 CPU 利用率。

  1. 现代操作系统中最基本的两个特征是( )。

A. 并发和不确定
B. 虚拟和不确定
C. 共享和虚拟
D. 并发和共享

答案:D. 并发和共享

解析:并发指多个程序在同一时间段内交替运行,共享指系统资源可以被多个程序共同使用。并发和共享是现代操作系统最基本的两个特征。

第二章

  1. 处理器执行的指令被分为两类,其中有一类称为特权指令,它只允许( )使用。

A. 联机用户
B. 目标程序
C. 操作员
D. 操作系统

答案:D. 操作系统

解析:特权指令只能由操作系统在核心态下执行,普通用户程序不能直接执行,否则会破坏系统安全和稳定性。

  1. 当 CPU 执行操作系统代码时,处理器处于( )。

A. 核心态
B. 自由态
C. 就绪态
D. 用户态

答案:A. 核心态

解析:CPU 执行操作系统内核代码时,需要访问和管理系统资源,因此处理器处于核心态

  1. 下列必须在核心态下执行的指令是( )。

A. I/O 操作
B. 从内存中取数
C. 将运算结果装入内存
D. 算术运算

答案:A. I/O 操作

解析:I/O 操作会直接涉及外部设备和系统资源,属于特权操作,必须在核心态下执行。

  1. 系统调用的目的是( )。

A. 请求系统服务
B. 中止系统服务
C. 申请系统资源
D. 释放系统资源

答案:A. 请求系统服务

解析:用户程序不能直接执行特权指令,需要通过系统调用进入操作系统,由操作系统提供相应服务。

  1. 下列选项中,在用户态执行的是( )。

A. 缺页处理程序
B. 命令解释程序
C. 时钟中断处理程序
D. 进程调度程序

答案:B. 命令解释程序

解析:缺页处理程序、时钟中断处理程序和进程调度程序都属于操作系统内核功能,需要在核心态执行;命令解释程序主要负责接收和解释用户命令,通常在用户态执行。

第三章

  1. 一个进程是( )。

A. 由协处理器执行的一个程序
B. 一个独立的程序 + 数据集
C. PCB 结构与程序和数据的组合
D. 一个独立的程序

答案:C. PCB 结构与程序和数据的组合

解析:进程由程序、数据和 PCB 三部分组成。PCB 是操作系统管理进程的重要数据结构。

  1. 进程与程序的根本区别是( )。

A. 是不是占有处理器
B. 是不是被调入到内存
C. 是不是具有就绪、运行和等待三种状态
D. 静态和动态的区别

答案:D. 静态和动态的区别

解析:程序是存放在外存中的静态代码,进程是程序在某个数据集合上的一次动态执行过程

  1. 操作系统是根据( )来对并发执行的进程进行控制和管理的。

A. 进程控制块
B. 进程的优先权
C. 进程的基本状态
D. 多道程序设计

答案:A. 进程控制块

解析:PCB 记录了进程的标识、状态、调度信息和资源信息等,操作系统通过 PCB 对进程进行控制和管理。

  1. 下列几种关于进程的叙述,( )是最不符合操作系统对进程的理解。

A. 进程是在多程序环境中的完整的程序
B. 进程是系统进行资源分配和调度的一个独立单元
C. 进程是程序在一个数据集合上的运行过程
D. 进程可以由程序、数据和 PCB 描述

答案:A. 进程是在多程序环境中的完整的程序

解析:进程不是单纯的程序,而是程序的一次执行过程,需要由程序、数据和 PCB 共同描述。

  1. 同一程序经过多次创建,运行在不同的数据集上,形成了( )的进程。

A. 相同
B. 互斥
C. 同步
D. 不同

答案:D. 不同

解析:同一个程序在不同数据集上运行时,会形成不同的进程。程序相同,但进程的数据、状态和 PCB 可以不同。

  1. 用信箱实现进程间互通消息的通信机制要有两个通信原语,它们是( )。

A. 发送原语和执行原语
B. 发送原语和接收原语
C. 就绪原语和执行原语
D. 就绪原语和接收原语

答案:B. 发送原语和接收原语

解析:消息传递通信的两个基本操作是发送接收,信箱机制也是通过这两个原语完成进程间通信。

  1. 当( )时,进程从执行状态转变为就绪状态。

A. 等待的事件发生
B. 进程被调度程序选中
C. 等待某一事件
D. 时间片到

答案:D. 时间片到

解析:时间片用完后,当前运行进程会被剥夺 CPU,状态由执行状态转为就绪状态,等待下一次调度。

  1. 进程创建后,所有创建完成的 PCB 被链接成一个序列,这个序列称为( )。

A. 就绪队列
B. 阻塞队列
C. 作业队列
D. 运行队列

答案:A. 就绪队列

解析:进程创建完成后,若已具备运行条件,只是暂时没有获得 CPU,就会进入就绪队列

  1. 长(作业)调度程序控制( )。

A. 等待队列中进程的个数
B. 就绪进程的个数
C. 多道程序的道
D. 进程执行的时间

答案:C. 多道程序的道

解析:长调度又称作业调度,负责从后备作业中选择作业进入内存,从而控制内存中同时运行的作业数量,即多道程序的道数。

  1. 在单处理器系统中,如果同时存在 10 个进程,则处于就绪队列中的进程最多有( )个。

A. 8
B. 9
C. 1
D. 10

答案:B. 9

解析:单处理器系统中同一时刻最多只有一个进程处于运行状态。若 10 个进程都没有阻塞,则 1 个运行,最多 9 个处于就绪队列。

  1. 一个进程的状态变化一定会引起另一个进程的状态变化。

A. 正确
B. 错误

答案:B. 错误

解析:一个进程的状态变化不一定会影响其他进程。例如某进程因等待 I/O 从执行态变为阻塞态,不一定直接引起另一个进程状态变化。

  1. 一个进程等待的 I/O 操作完成后,进程状态将会从阻塞变为就绪。

A. 正确
B. 错误

答案:A. 正确

解析:进程等待的 I/O 完成后,等待事件已经发生,进程会从阻塞状态转为就绪状态,等待 CPU 调度。

  1. 执行 fork 系统调用时,子进程会复制父进程的地址空间。

A. 正确
B. 错误

答案:B. 错误

解析:执行 fork 后,子进程会获得与父进程相似的地址空间映像,但通常不会立即完整复制物理地址空间,现代系统多采用写时复制机制。

14. 与其他进程共享数据的进程是协作进程。
A. 正确
B. 错误

答案:B. 错误

解析:协作进程强调进程之间存在相互影响或协同关系,不能简单地只用“是否共享数据”来判断。进程间协作还可能通过消息传递等方式实现。

  1. 短调度是指从作业队列中选择作业并装入内存。

A. 正确
B. 错误

答案:A. 正确

解析:短调度通常指进程调度,即从就绪队列中选择进程分配 CPU。题目给出的说法更接近长调度,但这里按题目给定答案整理。

第四章

  1. 若某一进程拥有 100 个线程,这些线程都属于用户级线程,则每一个线程在系统调度时间上占用的时间片是( )。

A. 100
B. 1
C. 1/100
D. 0

答案:C. 1/100

解析:用户级线程由用户空间的线程库管理,操作系统调度的是进程。若该进程获得一个时间片,则这 100 个用户级线程只能在该进程的时间片内自行分配,所以平均每个线程相当于占用 1/100 个时间片。

  1. 在多对一的线程模型中,当一个多线程进程的某个线程被阻塞后( )。

A. 该阻塞线程将被撤销
B. 该进程的其他线程仍可继续运行
C. 该阻塞线程将永远不可能再执行
D. 整个进程都将被阻塞

答案:D. 整个进程都将被阻塞

解析:多对一模型中,多个用户级线程映射到一个内核线程。内核无法区分这些用户线程,因此一个线程发生阻塞系统调用时,可能导致整个进程阻塞

  1. 下面的叙述中,正确的是( )。

A. 同一进程或不同进程内的线程都可以并发执行
B. 同一进程内的线程只能串行执行,不同进程的线程可并发执行
C. 同一进程或不同进程内的线程都只能串行执行
D. 同一进程内的线程可并发执行,不同进程的线程只能串行执行

答案:A. 同一进程或不同进程内的线程都可以并发执行

解析:线程是 CPU 调度和分派的基本单位。同一进程内的多个线程可以并发执行,不同进程中的线程也可以并发执行。

  1. 下面说法正确的是( )。

A. 不论是系统支持的线程还是用户级线程,其切换都需要内核的支持
B. 在引入线程的系统中,进程仍是资源调度和分派的基本单位
C. 线程是资源分配的单位,进程是调度和分派的单位
D. 不管系统中是否有线程,进程都是拥有资源的独立单位

答案:D. 不管系统中是否有线程,进程都是拥有资源的独立单位

解析:引入线程后,线程成为调度和分派的基本单位,而进程仍是资源拥有的基本单位。

  1. 引入线程的主要目的是( )。

A. 执行更多任务
B. 实现资源共享
C. 提高并发程度同时降低开销
D. 加快运算速度

答案:C. 提高并发程度同时降低开销

解析:线程比进程更轻量,创建、撤销和切换的开销更小。引入线程主要是为了提高系统的并发性,同时降低系统开销。

  1. 线程也具有就绪、阻塞和运行三种基本状态。

A. 正确
B. 错误

答案:A. 正确

解析:线程作为调度和执行的基本单位,也具有就绪、运行、阻塞等基本状态。

  1. CPU 调度时,时间片是分给用户线程的。

A. 正确
B. 错误

答案:B. 错误

解析:纯用户级线程对内核不可见,操作系统不会直接给用户线程分配时间片。CPU 时间片通常分配给进程或内核可感知的线程。

  1. 多对一模型的缺点是不能实现真正的并发。

A. 正确
B. 错误

答案:A. 正确

解析:多对一模型中,多个用户线程对应一个内核线程,内核一次只能调度这个内核线程,因此不能在多个处理器上实现多个线程的真正并行执行

  1. 用户线程是在用户空间管理的,内核也能感知。

A. 正确
B. 错误

答案:B. 错误

解析:用户线程由用户空间的线程库管理,内核通常不能直接感知这些线程,只能看到其所属的进程

  1. 同一个进程内的多个线程之间共享进程的资源。

A. 正确
B. 错误

答案:A. 正确

解析:同一进程内的多个线程共享该进程的地址空间、打开文件等资源,但每个线程有自己的线程控制信息、栈和寄存器现场

第五章

  1. 在单处理器的多进程系统中,进程什么时候占用处理器以及决定占用时间的长短是由( )决定的。

A. 进程特点和进程调度策略
B. 进程相应的代码长度
C. 进程总共需要运行的时间
D. 进程完成什么功能

答案:A. 进程特点和进程调度策略

解析:在多进程系统中,哪个进程获得 CPU、运行多长时间,主要由进程调度策略决定,同时也会受到进程自身特点的影响。

2. ( )有利于 CPU 繁忙型的作业,而不利于 I/O 繁忙型的作业。
A. 短作业(进程)优先算法
B. 时间片轮转调度算法
C. 先来先服务调度算法
D. 优先权调度算法

答案:C. 先来先服务调度算法

解析:先来先服务算法按到达顺序执行,如果前面是 CPU 繁忙型作业(长作业),会长时间占用 CPU,导致 I/O 繁忙型作业(短作业)等待较久,因此对 CPU 繁忙型作业更有利。

  1. 时间片轮转调度算法是为了( )。

A. 使系统变得高效
B. 需要 CPU 时间最少的进程最先做
C. 多个终端能够得到系统及时响应
D. 优先级较高的进程得到及时响应

答案:C. 多个终端能够得到系统及时响应

解析:时间片轮转算法让各进程轮流获得 CPU,适合分时系统,主要目的是让多个交互式用户都能较快得到响应。

  1. ( )优先级是在创建进程时确定的,确定之后在整个运行期间不再改变。

A. 先来先服务
B. 短作业
C. 动态
D. 静态

答案:D. 静态

解析:静态优先级在进程创建时确定,之后不再改变;动态优先级则会在运行过程中根据情况调整。

  1. 采用时间片轮转调度算法分配 CPU 时,当处于运行状态的进程用完一个时间片后,它的状态是( )状态。

A. 运行
B. 消亡
C. 阻塞
D. 就绪

答案:D. 就绪

解析:进程用完时间片后会被剥夺 CPU,但它仍然具备运行条件,因此从运行状态转为就绪状态

  1. 下列调度算法中,( )调度算法是绝对可抢占的。

A. 先来先服务
B. 优先级
C. 短进程优先
D. 时间片轮转

答案:D. 时间片轮转

解析:时间片轮转算法规定每个进程只能运行一个时间片,时间片用完就必须让出 CPU,因此是可抢占的调度算法。

7. 下列选项中,降低进程优先级的合理时机是( )。
A. 进程从就绪状态转为运行状态
B. 进程长期处于就绪队列
C. 进程时间片用完
D. 进程刚完成 I/O 操作,进入就绪队列

答案:C. 进程时间片用完

解析:进程时间片用完,说明它占用了较多 CPU,通常可以适当降低其优先级,避免 CPU 繁忙型进程长期占用处理器。

  1. 设有 4 个作业同时到达,每个作业的执行时间均为 2h,它们在一台处理器上按单道方式运行,则平均周转时间为( )。

A. 1h
B. 8h
C. 5h
D. 2.5h

答案:C. 5h

解析:4 个作业依次完成的周转时间分别为 2h、4h、6h、8h,平均周转时间为:

(2 + 4 + 6 + 8) / 4 = 5h
  1. 假设系统中所有的进程都是同时到达,则使进程平均等待时间最短的是( )调度算法。

A. 时间片轮转
B. 短作业优先
C. 先来先服务
D. 优先级

答案:B. 短作业优先

解析:在所有进程同时到达的情况下,短作业优先会优先执行运行时间短的进程,可以使平均等待时间和平均周转时间最短。

  1. 下面关于选择进程调度算法的准则中不正确的是( )。

A. 尽量提高 CPU 利用率
B. 适当增加进程在就绪队列的等待时间
C. 尽可能提高系统的吞吐量
D. 尽快响应交互式用户的请求

答案:B. 适当增加进程在就绪队列的等待时间

解析:调度算法通常希望提高 CPU 利用率、提高吞吐量、缩短响应时间和等待时间,而不是故意增加进程在就绪队列中的等待时间。

第六章

  1. 下列对临界区的论述中,正确的是( )。

A. 临界区是指进程中用于实现进程互斥的那段代码
B. 临界区是指进程中用于实现进程同步的那段代码
C. 临界区是指进程中用于访问共享资源的那段代码
D. 临界区是指进程中用于实现进程通信的那段代码

答案:C. 临界区是指进程中用于访问共享资源的那段代码

解析:临界区是进程中访问临界资源的那段代码。多个进程不能同时进入相关临界区,否则可能产生数据不一致。

  1. 若一个信号量的初值为 3,经过多次 PV 操作以后当前值为 -1,此表示等待进入临界区的进程数是( )。

A. 2
B. 3
C. 4
D. 1

答案:D. 1

解析:信号量为负数时,其绝对值表示正在等待该资源的进程数。因此当前值为 -1,表示有 1 个进程等待。

  1. 设与某资源关联的信号量 K 初值为 3,当前值为 1。若 M 表示该资源的可用个数,N 表示等待该资源的进程数,则 M、N 分别是( )。

A. 1、2
B. 0、1
C. 1、0
D. 2、0

答案:C. 1、0

解析:信号量大于 0 时,表示当前可用资源数;信号量小于 0 时,其绝对值表示等待进程数。当前 K = 1,所以 M = 1,N = 0。

  1. P 操作可能导致( )。

A. 进程就绪
B. 进程结束
C. 进程阻塞
D. 新进程创建

答案:C. 进程阻塞

解析:P 操作用于申请资源。如果资源不可用,进程就会进入阻塞状态,等待资源释放。

  1. 用 V 操作唤醒一个等待进程时,被唤醒进程变为( )状态。

A. 完成
B. 就绪
C. 运行
D. 等待

答案:B. 就绪

解析:V 操作用于释放资源。被唤醒的进程不能立即保证获得 CPU,而是先进入就绪状态,等待调度。

  1. 在用信号量机制实现互斥时,互斥信号量的初值为( )。

A. 1
B. 0
C. 3
D. 2

答案:A. 1

解析:互斥信号量用于控制同一时刻只有一个进程进入临界区,所以初值通常设为 1

  1. 有三个进程共享同一程序段,而每次只允许两个进程进入该程序段,若用 PV 操作同步机制,则信号量 S 的取值范围是( )。

A. 2,1,0,-1,-2
B. 3,2,1,0
C. 2,1,0,-1
D. 1,0,-1,-2

答案:C. 2,1,0,-1

解析:每次允许两个进程进入,信号量初值为 2。最多有 3 个进程竞争资源,所以最小值为 -1,表示有 1 个进程等待。

  1. 对于两个并发进程,设互斥信号量为 mutex,初值为 1,若 mutex = 0,则( )。

A. 表示有一个进程进入临界区
B. 表示有一个进程进入临界区,另一个进程等待进入
C. 表示有两个进程进入临界区
D. 表示没有进程进入临界区

答案:A. 表示有一个进程进入临界区

解析:mutex 初值为 1,一个进程执行 P 操作进入临界区后,mutex 变为 0,表示临界区已经被占用

9. 在操作系统中,要对并发进程进行同步的原因是( )。
A. 进程具有动态性
B. 进程必须在有限的时间内完成
C. 并发进程是异步的
D. 进程具有结构性

答案:C. 并发进程是异步的

解析:并发进程执行速度不可预知,具有异步性。为了保证多个进程按一定顺序协作,需要进程同步。

10. 在操作系统中,要对并发进程进行同步的原因是( )。
A. 并发进程是异步的
B. 进程必须在有限的时间内完成
C. 进程具有结构性
D. 进程具有动态性

答案:A. 并发进程是异步的

解析:进程同步是为了解决并发进程之间的直接制约关系,根本原因是并发进程执行具有异步性。

  1. 临界区就是临界资源所在的区域。

A. 正确
B. 错误

答案:B. 错误

解析:临界区不是资源所在的物理区域,而是进程中访问临界资源的那段代码。

  1. 信号量是一个整型变量,可以直接对其进行加 1 和减 1 的操作。

A. 正确
B. 错误

答案:B. 错误

解析:信号量本质上可以看作整型变量,但不能随意直接加减,只能通过初始化、P 操作和 V 操作来改变。

  1. V 操作表示申请一个资源。

A. 正确
B. 错误

答案:B. 错误

解析:P 操作表示申请资源,V 操作表示释放资源

  1. 一个正在访问临界资源的进程因为申请 I/O 操作而阻塞时,它允许其他进程进入其临界区。

A. 正确
B. 错误

答案:B. 错误

解析:临界区要求互斥访问。即使进程在临界区内阻塞,也不能随意允许其他进程进入同一临界区。

  1. PV 操作是原子操作。

A. 正确
B. 错误

答案:A. 正确

解析:PV 操作必须是原子操作,执行过程中不能被中断,否则可能破坏进程互斥或同步关系。

第七章

  1. 下列情况可能导致死锁的是( )。

A. 多个进程竞争资源出现了循环等待
B. 一个进程进入死循环
C. 进程释放资源
D. 多个进程竞争使用共享型的设备

答案:A. 多个进程竞争资源出现了循环等待

解析:死锁通常发生在多个进程竞争不可共享资源时。如果进程之间形成循环等待,就可能导致所有相关进程都无法继续执行。

  1. 在操作系统中,死锁出现是指( )。

A. 若干进程因竞争资源而无限等待其他进程释放已占有的资源
B. 进程同时申请的资源数超过资源总数
C. 资源个数远远小于进程数
D. 计算机系统发生重大故障

答案:A. 若干进程因竞争资源而无限等待其他进程释放已占有的资源

解析:死锁是指若干进程互相等待对方释放资源,导致这些进程都无法继续向前推进。

  1. 一次分配所有资源的方法可以预防死锁的发生,它破坏的是死锁四个必要条件中的( )。

A. 互斥
B. 请求并保持
C. 非剥夺
D. 环路等待

答案:B. 请求并保持

解析:一次性分配所有资源要求进程在运行前获得全部所需资源,运行过程中不再边占有资源边请求新资源,因此破坏了请求并保持条件。

  1. 死锁的避免是根据( )采取措施实现的。

A. 破坏死锁的四个必要条件之一
B. 防止系统进入不安全状态
C. 配置足够的系统资源
D. 使进程的推进顺序合理

答案:B. 防止系统进入不安全状态

解析:死锁避免不是直接破坏必要条件,而是在资源分配前进行判断,保证系统始终处于安全状态

  1. 以下有关资源分配图的描述中正确的是( )。

A. 有向边包括进程指向资源类的分配边和资源类指向进程申请边两类
B. 圆圈节点表示资源类
C. 资源分配图是一个有向图,用于表示某时刻系统资源与进程之间的状态
D. 矩形框表示进程,其中圆点表示申请同一类资源的各个进程

答案:C. 资源分配图是一个有向图,用于表示某时刻系统资源与进程之间的状态

解析:资源分配图用有向图表示进程和资源之间的关系。通常圆圈表示进程,矩形表示资源类,资源类中的圆点表示资源实例。

  1. 死锁与安全状态的关系是( )。

A. 不安全状态就是死锁状态
B. 死锁状态一定是不安全状态
C. 安全状态有可能成为死锁状态
D. 死锁状态有可能是安全状态

答案:B. 死锁状态一定是不安全状态

解析:发生死锁时,系统一定处于不安全状态;但处于不安全状态并不一定已经发生死锁,只是存在进入死锁的可能。

  1. 在下列死锁的解决方法中,属于死锁避免策略的是( )。

A. 银行家算法
B. 死锁检测算法
C. 破坏不可剥夺条件
D. 资源有序分配算法

答案:A. 银行家算法

解析:银行家算法会在分配资源前判断系统是否仍处于安全状态,是典型的死锁避免算法。

  1. 解除死锁通常不采用的方法是( )。

A. 从非死锁进程处抢夺资源
B. 从死锁进程处抢夺资源
C. 终止一个死锁进程
D. 终止所有死锁进程

答案:A. 从非死锁进程处抢夺资源

解析:解除死锁的目标是打破已经形成的死锁环路,所以通常处理的是死锁中的进程。常见方法有:终止所有死锁进程、逐个终止死锁进程,或者从某些死锁进程处抢夺资源,使等待链被破坏。非死锁进程本身没有参与死锁,如果抢夺它的资源,不一定能打破死锁,反而可能影响正常进程运行,甚至造成新的阻塞。因此解除死锁通常不采用从非死锁进程处抢夺资源的方法。

  1. 死锁的四个必要条件中,无法破坏的是( )。

A. 互斥
B. 请求并保持
C. 环路等待
D. 非剥夺

答案:A. 互斥

解析:某些资源本身就是不可共享资源,例如打印机等,只能互斥使用。因此互斥条件通常无法破坏。

  1. 某系统中有三个并发进程都需要四个同类资源,该系统不会发生死锁的最少资源是( )。

A. 12
B. 11
C. 9
D. 10

答案:D. 10

解析:若有 n 个进程,每个进程最多需要 m 个同类资源,为保证不发生死锁,最少资源数为:

n × (m - 1) + 1

代入 n = 3,m = 4:

3 × (4 - 1) + 1 = 10
  1. 产生死锁的根本原因是资源竞争和进程推进顺序非法。

A. 正确
B. 错误

答案:A. 正确

解析:死锁产生的根本原因通常包括两个方面:一是系统中存在资源竞争,二是进程推进顺序不当,导致进程之间互相等待。

  1. 采用资源剥夺可以解除死锁,还可以采用终止进程的方法解除死锁。

A. 正确
B. 错误

答案:A. 正确

解析:死锁解除的常见方法包括资源剥夺撤销进程。资源剥夺是从某些进程处抢占资源,撤销进程则是终止一个或多个死锁进程。

  1. 资源分配图中出现环路,则一定会死锁。

A. 正确
B. 错误

答案:B. 错误

解析:如果每类资源只有一个实例,资源分配图中出现环路通常意味着死锁;但如果某类资源有多个实例,出现环路不一定发生死锁。

  1. 死锁是指系统中的全部进程都处于阻塞状态。

A. 正确
B. 错误

答案:B. 错误

解析:死锁只要求一组进程互相等待,导致这些进程无法继续执行,并不一定是系统中的全部进程都阻塞。

  1. 为了避免死锁的发生,各进程应该按序逐个申请资源。

A. 正确
B. 错误

答案:A. 正确

解析:按照固定顺序申请资源可以破坏循环等待条件,从而防止死锁发生。严格地说,这属于死锁预防思想。

第八章

第八章

1. 存储管理的目的是( )。
A. 提高内存利用率
B. 增加内存实际容量
C. 方便用户
D. 方便用户和提高内存利用率

答案:D. 方便用户和提高内存利用率

解析:存储管理的目的主要有两个:一是方便用户使用内存,二是提高内存利用率

A 选项只强调提高内存利用率,这是存储管理的重要目标,但不完整。存储管理还要屏蔽内存分配、地址变换等复杂细节,使用户程序更方便地运行。

B 选项说增加内存实际容量,不正确。操作系统不能真正增加物理内存容量,虚拟存储技术只能在逻辑上扩展用户看到的地址空间,并不是增加实际内存。

C 选项只强调方便用户,也不完整。存储管理除了方便用户,还要解决内存分配、回收、保护、共享等问题,提高内存使用效率。

D 选项同时包括方便用户和提高内存利用率,表述最全面,因此正确。

  1. 把作业空间中使用的逻辑地址变为内存中物理地址称为( )。

A. 逻辑化
B. 重定位
C. 物理化
D. 加载

答案:B. 重定位

解析:程序中的地址通常是逻辑地址,把逻辑地址转换为实际内存中的物理地址,这个过程称为重定位

3. 内存保护需要由( )完成,以保证进程空间不被非法访问。
A. 操作系统或者硬件机构独立完成
B. 操作系统
C. 硬件机构
D. 操作系统和硬件机构合作

答案:D. 操作系统和硬件机构合作

解析:内存保护的目标是防止一个进程非法访问另一个进程的地址空间,通常需要操作系统和硬件机构配合完成。

A 选项说操作系统或者硬件机构独立完成,不准确。内存保护既需要操作系统建立地址空间、页表、段表、访问权限等管理信息,也需要硬件在地址访问时进行快速检查,不能只靠其中一方独立完成。

B 选项只说操作系统,不完整。操作系统可以设置保护规则,但每次访存都由 CPU 执行,如果完全靠操作系统软件检查,效率很低,也难以及时拦截非法访问。

C 选项只说硬件机构,也不完整。硬件可以执行地址越界检查、权限检查等操作,但这些检查所依据的页表、段表、界限寄存器、保护位等信息需要操作系统设置和维护。

D 选项正确。操作系统负责管理和设置保护机制,硬件负责在程序运行时执行地址检查和权限检查,因此内存保护需要软硬件协作

  1. 动态重定位是在作业的( )中进行的。

A. 编译过程
B. 装入过程
C. 链接过程
D. 执行过程

答案:D. 执行过程

解析:动态重定位是在程序执行过程中进行地址转换,通常依靠重定位寄存器或地址变换机构完成。

  1. 不会产生外碎片的存储管理是( )。

A. 动态分区分配管理
B. 都不会
C. 分页式存储管理
D. 分段式存储管理

答案:C. 分页式存储管理

解析:分页式存储管理以固定大小的页框为单位分配内存,不要求进程连续存放,因此不会产生外碎片,但可能产生内碎片。

  1. 某个操作系统对内存的管理采用页式存储管理方法,所划分的页面大小( )。

A. 要依据外存和内存的大小而定
B. 要根据 CPU 的地址结构
C. 必须相同
D. 要根据内存大小而定

答案:C. 必须相同

解析:分页管理中,逻辑地址空间划分为大小相同的页,内存划分为大小相同的页框,并且页和页框大小相等。

  1. 在分页存储管理中,内存的分配是( )。

A. 以作业的大小分配
B. 以物理段进行分配
C. 以页框为单位进行分配
D. 以逻辑记录大小进行分配

答案:C. 以页框为单位进行分配

解析:分页存储管理把内存划分为固定大小的页框,进程页面装入内存时,也是以页框为单位分配。

  1. 下列关于页式存储正确的有( )。

A. 页式存储管理不会产生内部碎片
B. 在页式存储管理中,若关闭 TLB,则每当访问一条指令或存取一个操作数时都要访问 2 次内存
C. 页式存储管理当中的页面是为用户所感知的
D. 页式存储方式可以采用静态重定位

答案:B. 在页式存储管理中,若关闭 TLB,则每当访问一条指令或存取一个操作数时都要访问 2 次内存

解析:关闭 TLB 时,访问一个逻辑地址通常要先访问页表,得到页框号后再访问实际数据或指令,因此需要两次访存

  1. 在分段存储管理方式中,( )。

A. 段与段之间必定连续
B. 段与段之间必定不连续
C. 以段为单位,每段是一个连续存储区
D. 每段是等长的

答案:C. 以段为单位,每段是一个连续存储区

解析:分段管理按照程序的逻辑结构划分段,每个段内部是连续存储区,但不同段之间不要求连续,且段长可以不同。

10. 在使用紧缩技术解决外碎片时,如果一个进程正在( )时,则不能在内存中移动。
A. 处于临界区
B. 创建
C. I/O 操作
D. 死锁

答案:C. I/O 操作

解析:紧缩技术是通过移动内存中的进程,把分散的小空闲区合并成较大的连续空闲区,用来解决外碎片问题。但不是所有进程都能随时移动。

A 选项“处于临界区”不一定不能移动。临界区强调的是进程正在访问共享资源,需要互斥保护,它主要涉及进程同步和互斥问题。只要地址变换机制能正确更新,单纯处于临界区并不必然禁止内存移动。

C 选项正确。进程正在进行 I/O 操作时,外设可能正在把数据写入该进程的内存缓冲区,或者从该缓冲区读取数据。如果这时移动进程,设备可能仍按原来的物理地址访问内存,导致数据写错或读错。因此进程正在进行 I/O 操作时,通常不能在内存中移动。

D 选项“死锁”不正确。死锁描述的是进程之间互相等待资源,无法继续推进。它本身不是内存紧缩时禁止移动进程的直接原因。

  1. 固定内存分配会产生内碎片。

A. 正确
B. 错误

答案:A. 正确

解析:固定分区分配中,分区大小固定。如果进程小于分区大小,分区内部剩余空间不能被其他进程使用,就形成内碎片

  1. 静态重定位是程序在装入内存时完成地址变换。

A. 正确
B. 错误

答案:A. 正确

解析:静态重定位是在程序装入内存时一次性完成逻辑地址到物理地址的转换,程序执行期间地址不再改变。

  1. 在分页内存管理中,CPU 每次从内存中取一个数据需要 1 次内存访问。

A. 正确
B. 错误

答案:B. 错误

解析:在没有 TLB 的情况下,分页管理访问一个数据通常需要先访问页表,再访问数据本身,因此一般需要两次内存访问。

  1. 分页时,每个进程拥有一个页表,且页表驻留在内存中。

A. 正确
B. 错误

答案:A. 正确

解析:每个进程都有自己的页表,用于记录页号到页框号的映射关系。页表通常存放在内存中。

  1. 引入 TLB 是为了解决分页时两次内存访问的问题。

A. 正确
B. 错误

答案:A. 正确

解析:TLB 是一种高速缓存,用来保存近期使用的页表项。引入 TLB 可以减少访问页表带来的额外访存开销。

第九章

  1. 下列关于常规存储器的论述中,正确的是( )。

A. 作业在运行前,必须全部装入内存,且在运行过程中也一直驻留内存
B. 作业在运行前,必须全部装入内存,但在运行过程中不必一直驻留内存
C. 作业在运行前,不必全部装入内存,且在运行过程中也不必一直驻留内存
D. 作业在运行前,不必全部装入内存,但在运行过程中必须一直驻留内存

答案:A. 作业在运行前,必须全部装入内存,且在运行过程中也一直驻留内存

解析:常规存储管理具有一次性驻留性。一次性指作业运行前必须全部装入内存;驻留性指作业运行期间一直驻留在内存中。

  1. 为使虚存系统有效地发挥作用,所运行的程序应具有的特性是( )。

A. 该程序不应含有过多的 I/O 操作
B. 该程序的大小不应超过实际的内存容量
C. 该程序的指令相关性不应过多
D. 该程序应具有较好的局部性

答案:D. 该程序应具有较好的局部性

解析:虚拟存储器依赖程序的局部性原理。如果程序在一段时间内集中访问少量页面,系统就可以只把当前需要的页面调入内存。

  1. 请求分页存储管理方式和基本分页存储管理方式的区别是( )。

A. 不必将作业全部装入内存
B. 采用快表技术
C. 地址重定位
D. 不必将作业装入连续区域

答案:A. 不必将作业全部装入内存

解析:基本分页通常要求作业运行前全部装入内存;请求分页则可以在运行过程中按需调入页面,因此不必一次性全部装入内存

  1. 虚拟存储管理系统的基础是程序的( )理论。

A. 局部性
B. 全局性
C. 虚拟性
D. 动态性

答案:A. 局部性

解析:虚拟存储器建立在程序的局部性原理之上。程序运行时通常只集中访问一部分代码和数据,因此可以只把当前需要的部分放入内存。

  1. 在请求分页存储管理的页表中增加了若干项信息,其中修改位和访问位供( )参考。

A. 置换算法
B. 程序访问
C. 分配页面
D. 调入页面

答案:A. 置换算法

解析:访问位用于判断页面近期是否被访问过,修改位用于判断页面调出前是否需要写回外存,这些信息主要供页面置换算法使用。

  1. 在虚拟分页存储管理系统中,若进程访问的页面不在主存,且主存中没有可用的空闲帧时,系统正确的处理顺序为( )。

A. 缺页中断 → 决定淘汰页 → 页面调入 → 页面调出
B. 决定淘汰页 → 页面调入 → 缺页中断 → 页面调出
C. 决定淘汰页 → 页面调出 → 缺页中断 → 页面调入
D. 缺页中断 → 决定淘汰页 → 页面调出 → 页面调入

答案:D. 缺页中断 → 决定淘汰页 → 页面调出 → 页面调入

解析:访问页面不在内存时,先产生缺页中断;若没有空闲帧,需要选择一个页面淘汰;若该页被修改过,还要先调出;最后再把需要的页面调入内存。

  1. 系统产生抖动的主要原因是( )。

A. CPU 调度算法不合理
B. 内存空间太小
C. 页面置换算法不合理
D. CPU 运行速度太慢

答案:C. 页面置换算法不合理

解析:抖动是指系统频繁进行页面调入调出,导致大量时间花在换页上。其直接原因通常是页面置换算法不合理或分配给进程的物理块不足。

  1. 考虑页面置换算法,系统有 m 个物理块供调度,初始时全空,页面引用串长度为 p,包含了 n 个不同的页号,无论用什么算法,缺页次数不会少于( )。

A. p
B. n
C. m
D. min(m, n)

答案:B. n

解析:初始时内存为空,每个不同页面第一次被访问时一定不在内存中,所以至少会发生 n 次缺页。

  1. 当系统发生抖动时,可采取的有效措施是( )。

A. 增加磁盘交换区的容量
B. 撤销部分进程
C. 提高用户进程的优先级
D. 以上都对

答案:B. 撤销部分进程

解析:抖动往往说明多道程序度过高,内存中进程太多,每个进程分到的物理块太少。撤销部分进程可以降低多道程序度,缓解频繁换页。

  1. 页式虚拟存储管理的主要特点是( )。

A. 不要求进行页面置换
B. 不要求进行缺页中断处理
C. 不要求将作业同时全部装入主存,也不要求连续存放
D. 不要求将作业装入主存的连续区域

答案:C. 不要求将作业同时全部装入主存,也不要求连续存放

解析:页式虚拟存储既具有分页管理的特点,即不要求连续存放;也具有虚拟存储的特点,即不要求作业一次性全部装入内存

  1. 某虚拟存储器系统采用页式内存管理,使用 LRU 页面置换算法,页面访问序列为:
1 8 1 7 8 2 7 2 1 8 3 8 2 1 3 1 7 1 3 7

假定内存容量为 4 个页面,开始时为空,则缺页次数是( )。

A. 5
B. 4
C. 7
D. 6

答案:D. 6

解析:前四个不同页面 1、8、7、2 首次访问时各缺页一次,共 4 次。之后访问 3 时缺页,淘汰最近最久未使用的 7;后来再次访问 7 时又缺页,淘汰最近最久未使用的 8。因此总缺页次数为 6

  1. 进程在执行中发生缺页中断,经操作系统处理后,应让其执行( )指令。

A. 启动时的那一条
B. 被中断的后一条
C. 被中断的前一条
D. 被中断的那一条

答案:D. 被中断的那一条

解析:缺页中断发生时,该指令还没有成功完成。操作系统把所需页面调入内存后,应重新执行被中断的那一条指令

  1. 缺页中断是在指令执行期间产生和处理的,而不是在一条指令执行之后才产生的。

A. 正确
B. 错误

答案:A. 正确

解析:缺页中断属于内部中断,通常在指令执行过程中发现所需页面不在内存时产生。处理完成后,再重新执行被中断的指令。

  1. 抖动是指进程频繁进行页面置换,在换页上的时间多于进程执行的时间。

A. 正确
B. 错误

答案:A. 正确

解析:抖动发生时,系统大量时间用于页面调入和调出,真正用于执行用户程序的时间反而很少。

  1. 空间局部性是指,当程序访问了某个存储单元,在不久之后,其附近的存储单元也可能被访问。

A. 正确
B. 错误

答案:A. 正确

解析:这里应为空间局部性。时间局部性是指刚访问过的存储单元,在不久之后可能再次被访问;空间局部性是指附近的存储单元可能很快被访问。

  1. 虚拟存储器的最大容量是任意的。

A. 正确
B. 错误

答案:B. 错误

解析:虚拟存储器的最大容量不是任意的,它受到计算机地址结构和外存容量等因素限制。

  1. 无论何时想要提高 CPU 的利用率,都应该增加多道程序的道数。

A. 正确
B. 错误

答案:B. 错误

解析:适当增加多道程序度可以提高 CPU 利用率,但如果进程过多、内存不足,可能导致抖动,反而降低 CPU 利用率。

  1. 离散性是虚拟存储的特征。

A. 正确
B. 错误

答案:A. 正确

解析:虚拟存储通常建立在离散分配的基础上,例如请求分页或请求分段,作业不必连续存放在内存中。

  1. 在进程运行时,如果它的工作集页面都在内存中,能够使该进程有效运行;否则会出现频繁的页面调入、调出现象。

A. 正确
B. 错误

答案:A. 正确

解析:工作集是进程在某段时间内经常访问的页面集合。如果工作集页面都在内存中,进程可以较稳定地运行;如果工作集页面不能全部驻留内存,就容易频繁缺页,甚至发生抖动。

第十章

  1. 从用户的观点看,操作系统中引入文件系统的目的是( )。

A. 实现虚拟存储
B. 保护用户数据
C. 保存用户和系统文档及数据
D. 实现对文件的按名存取

答案:D. 实现对文件的按名存取

解析:从用户角度看,文件系统最重要的作用是让用户通过文件名来访问文件,而不必关心文件具体存放在哪些磁盘块中。

  1. 文件系统中,文件访问控制信息存储的合理位置是( )。

A. 文件控制块
B. 系统注册表
C. 文件分配表
D. 用户口令表

答案:A. 文件控制块

解析:文件控制块 FCB 中保存文件的各种管理信息,包括文件名、物理位置、访问权限、文件属性等,因此访问控制信息应存放在文件控制块中。

  1. 下列关于索引文件的叙述中,( )是正确的。

A. 建立索引的目的是为了减少存储空间
B. 对索引文件存取时,必须先查找其索引表
C. 索引表中含有索引文件的数据及其物理地址
D. 索引文件的索引表中每个记录的索引项可以有多个

答案:B. 对索引文件存取时,必须先查找其索引表

解析:索引文件通过索引表建立关键字与记录地址之间的对应关系。访问记录时,一般要先查索引表,再根据地址访问实际记录。

  1. 下列文件物理结构中,适合随机访问且易于文件扩展的是( )。

A. 链接结构且磁盘块变长
B. 连续结构
C. 索引结构
D. 链接结构且磁盘块定长

答案:C. 索引结构

解析:索引结构通过索引表记录文件各磁盘块的位置,既支持随机访问,又不要求文件连续存放,因此便于扩展。

  1. 文件系统采用两级索引分配方式,如果每个磁盘块的大小为 1KB,每个盘块号占 4B,则该系统中,单个文件的最大长度是( )。

A. 以上答案都不对
B. 64MB
C. 32MB
D. 128MB

答案:B. 64MB

解析:每个索引块可存放的盘块号数为:

1KB / 4B = 1024B / 4B = 256

两级索引最多可指向的数据块数为:

256 × 256 = 65536

每个数据块大小为 1KB,所以最大文件长度为:

65536 × 1KB = 65536KB = 64MB
  1. 文件系统在创建一个文件时,为它建立一个( )。

A. 目录文件
B. 文件目录项
C. 逻辑空间
D. 逻辑结构

答案:B. 文件目录项

解析:创建文件时,文件系统需要在目录中建立对应的文件目录项,用来记录该文件的名字、位置、属性等信息。

  1. 文件目录存放的信息是( )。

A. 某一文件存放的数据信息
B. 该目录中所有数据文件目录
C. 某一文件的文件目录
D. 该目录中所有子目录文件和数据文件的目录

答案:D. 该目录中所有子目录文件和数据文件的目录

解析:目录中存放的是该目录下各个文件和子目录的目录项,而不是文件的实际数据内容。

  1. 位示图可用于( )。

A. 文件目录的查找
B. 内存空间的管理
C. 磁盘空间的管理
D. 文件的保密

答案:C. 磁盘空间的管理

解析:位示图常用于管理磁盘空闲块。每一位表示一个磁盘块是否空闲,因此可用于磁盘空间管理

  1. 一个文件系统中,其 FCB 占 64B,一个盘块大小为 1KB,采用一级目录。假定文件目录中有 3200 个目录项,则查找一个文件平均需要( )次访问磁盘。

A. 200
B. 50
C. 54
D. 100

答案:D. 100

解析:每个盘块可存放的 FCB 数量为:

1KB / 64B = 1024B / 64B = 16

3200 个目录项需要的盘块数为:

3200 / 16 = 200

一级目录顺序查找时,平均需要查找一半目录项,即平均访问一半目录块:

200 / 2 = 100
  1. 文件的存储空间管理实质上是对( )的组织和管理。

A. 外存空闲区
B. 外存已占用区域
C. 文件控制块
D. 文件目录

答案:A. 外存空闲区

解析:文件存储空间管理的核心是记录哪些外存空间空闲、哪些已经分配,本质上是对外存空闲区的组织和管理。

  1. 文件系统负责文件存储空间的管理,但不能实现文件名到物理地址的转换。

A. 正确
B. 错误

答案:B. 错误

解析:文件系统不仅负责文件存储空间管理,还要通过目录、FCB、索引表等结构实现文件名到物理地址的转换。

  1. 在多级目录结构中,对文件的访问是通过路径名和用户目录名进行的。

A. 正确
B. 错误

答案:B. 错误

解析:多级目录结构中,文件通常通过路径名访问。用户目录名可能是路径的一部分,但不是必须单独依靠“路径名和用户目录名”共同访问。

  1. 对于一个具有三级索引的文件,存取一个记录通常要访问三次磁盘。

A. 正确
B. 错误

答案:B. 错误

解析:三级索引通常需要依次访问一级索引块、二级索引块、三级索引块,最后再访问数据块。如果索引块不在内存中,通常需要 4 次磁盘访问,而不是 3 次。

  1. 文件的逻辑结构是指文件在磁盘上的存储组织方式。

A. 正确
B. 错误

答案:B. 错误

解析:文件的逻辑结构是从用户角度看到的文件组织形式,如流式文件、记录式文件等;文件在磁盘上的存储组织方式属于物理结构

  1. 对于采用链接分配的文件,可以进行随机访问。

A. 正确
B. 错误

答案:B. 错误

解析:链接分配中,文件块通过指针串联起来,通常只能顺序查找。要访问某个中间块,需要从前面的块依次追踪,因此不适合随机访问

第十一章

  1. 下列算法中,用于磁盘调度的是( )。

A. 最短寻道时间优先算法
B. LRU 算法
C. 优先级算法
D. 时间片轮转调度算法

答案:A. 最短寻道时间优先算法

解析:最短寻道时间优先算法,即 SSTF,用于磁盘调度,每次选择距离当前磁头位置最近的磁道请求。LRU 是页面置换算法,优先级算法和时间片轮转算法主要用于进程调度。

  1. 以下算法中,( )可能出现“饥饿”现象。

A. 循环扫描算法
B. 最短寻道时间优先算法
C. LOOK 算法
D. 先来先服务算法

答案:B. 最短寻道时间优先算法

解析:最短寻道时间优先算法总是优先处理距离当前磁头最近的请求。如果不断有靠近当前磁头位置的新请求到来,远处的请求可能长期得不到服务,从而产生饥饿现象。

  1. 假设磁头当前位于第 105 道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序列为 35,45,12,68,110,180,170,195,采用 SCAN 调度算法得到的磁道访问序列是( )。

A. 110,170,180,195,12,35,45,68
B. 110,170,180,195,68,45,35,12
C. 10,68,45,35,12,170,180,195
D. 12,35,45,68,110,170,180,195

答案:B. 110,170,180,195,68,45,35,12

解析:SCAN 算法按当前磁头移动方向先处理一侧请求。磁头从 105 开始向磁道号增加方向移动,所以先访问 110,170,180,195;到达该方向末端后再反向访问 68,45,35,12。

  1. 如果磁头当前正在第 53 号磁道,现有 4 个磁道访问请求序列为 98,37,124,65,当采用( )调度算法时,下一次磁头将到达 65 号磁道。假设此刻磁头方向指向号数小的磁道。

A. LOOK 算法
B. 最短寻道时间优先算法
C. 先来先服务算法
D. 扫描算法

答案:B. 最短寻道时间优先算法

解析:当前磁头在 53 号磁道,各请求与 53 的距离分别为:98 距离 45,37 距离 16,124 距离 71,65 距离 12。距离最近的是 65,因此采用最短寻道时间优先算法时,下一次磁头将到达 65 号磁道。若采用先来先服务算法,下一磁道是 98;若采用 SCAN 或 LOOK,并且当前方向指向小号磁道,下一磁道是 37。

  1. 在以下算法中,( )可能会随时改变磁头的运动方向。

A. LOOK 算法
B. 扫描算法
C. 先来先服务算法
D. 循环扫描算法

答案:C. 先来先服务算法

解析:先来先服务算法按照请求到达的先后顺序处理,不考虑磁头当前位置和移动方向,因此磁头可能在不同磁道之间来回移动,运动方向可能随时改变。SCAN、LOOK 和循环扫描算法都会在一定规则下保持某个方向移动。

第十二章

  1. 磁盘设备的 I/O 控制主要采取( )方式。

A. 中断控制
B. DMA
C. I/O 通道
D. 程序轮询

答案:B. DMA

解析:磁盘 I/O 通常以数据块为单位传输,数据量较大。如果每传输一个字节都由 CPU 参与,效率很低。DMA 可以在 I/O 设备和内存之间直接传输数据,只在开始和结束时需要 CPU 参与,因此适合磁盘设备。

  1. DMA 方式是在( )之间建立一条直接数据通路。

A. I/O 设备和内存
B. I/O 设备和 CPU
C. 两个 I/O 设备
D. CPU 和主存

答案:A. I/O 设备和内存

解析:DMA 的核心思想是绕过 CPU 的逐字节干预,在 I/O 设备和主存之间直接进行数据传送,从而减轻 CPU 负担。

  1. 设备的独立性是指( )。

A. 每一台设备都有一个唯一的编号
B. 系统对设备的管理是独立的
C. 设备独立于计算机系统
D. 应用程序独立于实际使用的物理设备

答案:D. 应用程序独立于实际使用的物理设备

解析:设备独立性指用户程序使用逻辑设备名,不必关心实际使用的是哪一台物理设备。物理设备可以由系统进行映射和分配。

  1. 程序员利用系统调用打开 I/O 设备时,通常使用的设备标识是( )。

A. 逻辑设备名
B. 主设备号
C. 从设备号
D. 物理设备名

答案:A. 逻辑设备名

解析:为了实现设备独立性,程序员通常使用逻辑设备名访问设备,而不直接使用具体物理设备名。

  1. 引入高速缓冲的主要目的是( )。

A. 提高 CPU 的利用率
B. 提高 I/O 设备的利用率
C. 改善 CPU 与 I/O 设备速度不匹配的问题
D. 节省内存

答案:C. 改善 CPU 与 I/O 设备速度不匹配的问题

解析:CPU 速度远快于 I/O 设备。引入缓冲可以暂存数据,减少双方速度差异带来的等待,从而缓解 CPU 与 I/O 设备速度不匹配的问题。

  1. 下面关于独占设备和共享设备的说法中不正确的是( )。

A. 对共享设备往往采用静态分配方式
B. 打印机、扫描仪等属于独占设备
C. 对独占设备往往采用静态分配方式
D. 共享设备是指一个作业尚未撤离,另一个作业即可使用,但每一时刻只有一个作业使用

答案:A. 对共享设备往往采用静态分配方式

解析:共享设备可以被多个进程交替使用,通常采用动态分配方式;独占设备在一个作业使用期间不能被其他作业使用,往往采用静态分配方式。

  1. Spooling 技术的主要目的是( )。

A. 将独占设备改造成虚拟设备,提高独占设备的利用率
B. 减轻用户编程负担
C. 提高 CPU 和设备交换信息的速度
D. 提供主、辅存接口

答案:A. 将独占设备改造成虚拟设备,提高独占设备的利用率

解析:Spooling 技术利用磁盘上的输入井、输出井和相关管理程序,把独占设备改造成多个用户可共享的虚拟设备,典型例子是打印机。

  1. 有关设备管理的叙述中不正确的是( )。

A. 通道是处理输入/输出的软件
B. 编制好的通道程序是存放在主存中的
C. I/O 操作完成后会触发中断
D. 所有设备的启动工作都由系统统一来做

答案:A. 通道是处理输入/输出的软件

解析:通道不是软件,而是一种专门负责 I/O 控制的硬件机构。通道可以执行存放在主存中的通道程序,并在 I/O 完成后产生中断通知 CPU。

  1. 以下( )不属于设备管理数据结构。

A. CHCT
B. COCT
C. PCB
D. DCT

答案:C. PCB

解析:DCT 是设备控制表,COCT 是控制器控制表,CHCT 是通道控制表,都属于设备管理相关数据结构。PCB 是进程控制块,属于进程管理数据结构。

  1. 某文件占 10 个磁盘块,现要把该文件磁盘块逐个读入主存缓冲区,并送用户区进行分析。假设一个缓冲区与一个磁盘块大小相同,把一个磁盘块读入缓冲区的时间为 100μs,将缓冲区的数据传送到用户区的时间为 50μs,CPU 对一块数据进行分析的时间为 50μs。在双缓冲区结构下,读入并分析完该文件的时间是( )。

A. 1500μs
B. 1100μs
C. 1000μs
D. 2000μs

答案:B. 1100μs

解析:双缓冲可以让“读入下一块”和“处理当前块”并行进行。读入一块需要 100μs;当前块从缓冲区送到用户区需要 50μs,CPU 分析需要 50μs,合计也是 100μs。

第一块必须先读入,耗时 100μs。之后,第 1 块的传送和分析可以与第 2 块的读入并行,每轮约 100μs。最后一块读入完成后,还需要再进行一次传送和分析,耗时 100μs。

总时间 = 首块读入时间 + 中间重叠处理时间 + 最后一块处理时间
     = 100 + 9 × 100 + 100
     = 1100μs
  1. Spooling 系统中的用户程序可以随时将输出数据送到输出井中,待输出设备空闲时,再由 Spooling 系统完成数据的输出操作。

A. 正确
B. 错误

答案:A. 正确

解析:Spooling 系统把用户输出数据先送入磁盘上的输出井,等设备空闲后再由系统统一输出,从而提高设备利用率。

  1. 设备独立性就是指系统具有使用不同设备的能力。

A. 正确
B. 错误

答案:B. 错误

解析:设备独立性不是简单指系统能使用不同设备,而是指应用程序不依赖具体物理设备,用户程序通过逻辑设备名访问设备。

  1. 在 SPOOLing 技术中,用户进程可以直接高效地使用字符设备。

A. 正确
B. 错误

答案:B. 错误

解析:SPOOLing 技术不是让用户进程直接使用字符设备,而是通过输入井、输出井和系统进程进行中转,使独占设备表现得像共享设备

  1. 引入缓冲能够缓解 CPU 与外设间速度不匹配的矛盾。

A. 正确
B. 错误

答案:A. 正确

解析:缓冲区可以暂存数据,使 CPU 和外设不必严格同步工作,从而缓解二者之间的速度不匹配问题。

  1. 设备驱动程序层的作用是为内核 I/O 子系统隐藏设备控制器之间的差异。

A. 正确
B. 错误

答案:A. 正确

解析:不同设备控制器的寄存器、命令和控制方式不同。设备驱动程序负责屏蔽这些差异,向上层提供相对统一的 I/O 操作接口。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐