概要
我总结了 2009~2024 年 408 操作系统的选择题部分. 简要分析了其命题规律, 将所有题目分为 7 类进行归纳, 并对解题手段做了简要介绍.
分类标准纯主观, 解题手段纯主观.
命题规律与解题手段
题目的考察内容与考试大纲大致符合.
与前两科不同, 操作系统的试题内容与结构并未严格遵守大纲, 而是非常跳跃与综合. 很多选项你很难在特定的教材上找到, 试题内容很明显综合了多本教材.
举一些例子:
- 进程, 子进程, 线程资源的共享在不同教材里有不同的说法与侧重点, 不同的 os 里也有不同的实现, 但 408 对子进程, 线程的资源继承与共享明显有一个默认的规则 (高频考点).
- 操作系统的引导与初始化有众多实现, 但 408 明显默认采用了一种特定的实现 (2021 年第 46 题), 而且很侧重中断向量表相关的内容 (2022 年第 24 题, 2023 年第 23 题).
- 时钟并未出现在大纲中, 某些教材也并没有讲解, 但 408 多次出现与时钟相关的内容.
题目常常不孤立考察某个概念, 而是涉及到操作系统的每一个模块. 有时还会考察某操作在内核里的实现细节, 尤其是内核对相关数据结构和内存的处理. 如果并不知道具体的实现, 需要依靠合理推断来做题.
举一些例子:
- 2024 年第 24 题考察了终止进程时 os 对外部设备, 内存, 进程数据结构的处理.
- 2021 年第 25 题和 2018 年第 29 题考察了解 os 对时钟中断和进程数据结构的处理.
- 2014 年第 29 题考察了进程打开文件过程中 os 对内存缓冲区和进程数据结构的处理.
408 的操作系统综合了多本教材, 很多地方找不到明确的标准. 但经核查, 这些地方都与_北大某教授_的操作系统课件内容高度相似. 相关资料在网上有公开.
分类归纳
操作系统基础概念, 运行环境与机制, 引导与初始化

进程线程模型

同步互斥的概念与实现, 死锁的概念

内存, 外存, 存储管理

文件模型, 文件系统及其实现

I/O 概念, I/O 层次, I/O 实现

操作系统各模块的算法
包含处理机调度, 页面置换, 磁盘调度, 死锁避免, 死锁检测.

总结
像基本概念, 中断异常, 存储器, 虚拟内存, I/O 等知识在计组里已经学过了, OS 只是从软件视角重新走一遍. 计组学扎实了操作系统里有一大半甚至都不用学了.
理解操作系统的设计思路, 熟悉内核的数据结构的相关操作之后, 所有概念题都不是难点. 剩下的就是练习各模块的常见算法, 会手动模拟即可.