错题日记 04 · 操作系统
错题日记 04 · 操作系统
[OS] 操作系统的三大目标
Question
操作系统是控制应用程序执行的程序,它拥有的 3 个目标包括:方便性、有效性和()
A. 安全性 B. 可靠性 C. 扩充性(扩展性) D. 通用性
My Answer
我的选择:D 理由:凭直觉认为操作系统必须”通用”或”安全”。
Correct Answer
正确答案:C(扩充性 / 扩展性) 正解:操作系统三大核心设计目标:
- 方便性:给用户提供友好的接口(如图形界面、命令提示符),不用直接和底层硬件打交道。
- 有效性:提高系统资源的利用率(如多道程序并发)和系统的吞吐量。
- 可扩充性 / 可扩展性:硬件在不断升级,OS 必须采用微内核或层次化结构,方便随时增加新的功能模块。
Error Pattern
概念失真——凭直觉认为操作系统必须”通用”或”安全”。但经典操作系统理论中,操作系统的设计目标是严格定义的”老三样”,不能靠常识去推测。
Core Concept
- 操作系统的目标
Expected Context
- 笔记路径:进程与线程、文件系统
- 检索关键词:操作系统目标、方便性、有效性、可扩充性、资源利用率、吞吐量、微内核
Fix Plan
考研概念题不考”常识感觉”,只考”教材原话”。死记硬背三要素:方便、有效、可扩充。
变式自测:操作系统设计目标中的”有效性”主要指什么?(提示:有效性对应资源利用率和吞吐量。答案:提高系统资源利用率和吞吐量。)
[OS] 操作系统发展史的里程碑
Question
关于操作系统的发展阶段,下列描述中正确的是()
A. 多道批处理系统相比单道提高了 CPU 利用率,其核心在于引入了分时技术 B. 单道批处理系统通过引入监督程序,实现了作业的自动过渡,缓解了”CPU 与 I/O 设备速度不匹配”的矛盾 C. 分时系统的主要目标是提高系统资源的利用率和吞吐量 D. 多道批处理系统首次出现了进程管理、内存管理等现代操作系统的核心功能雏形
My Answer
我的选择:B 理由:把多道程序设计的功劳(缓解 CPU 与 I/O 速度不匹配)算在了单道批处理头上。单道环境下 I/O 时 CPU 依然在干等。
Correct Answer
正确答案:D(多道批处理系统首次出现了进程管理、内存管理等现代操作系统核心功能雏形) 正解:
- 单道批处理:自动过渡作业,减少人工干预。但内存里只有一道程序,CPU 经常闲置。
- 多道批处理:为了让多道程序在内存里不打架,首次引入了”进程”的概念以及内存分配与保护机制。但它不提供人机交互。
- 分时系统:核心目标是实现人机交互,而不是吞吐量(批处理系统才最看重吞吐量)。
Error Pattern
张冠李戴——错把多道程序设计的功劳(缓解 CPU 与 I/O 速度不匹配)算在了单道批处理头上。单道环境下,I/O 时 CPU 依然在干等。
Core Concept
- 操作系统发展阶段
Expected Context
- 笔记路径:进程与线程、内存管理
- 检索关键词:操作系统发展阶段、单道批处理、多道批处理、分时系统、实时系统、进程概念起源、吞吐量 vs 响应时间、监督程序
Fix Plan
记住发展史的”第一次”:第一次自动过渡 = 单道批处理(监督程序);第一次解决 CPU 与 I/O 不匹配 = 多道批处理;第一次出现”进程” = 多道批处理;第一次实现人机交互 = 分时系统。
变式自测:以下哪个系统首次引入了”进程”的概念?(提示:多道程序并发执行需要引入进程来管理和保护。答案:多道批处理系统。)
[OS] 分时系统的特征辨析
Question
下列性质中,()不是分时系统的特征
A. 多路性 B. 交互性 C. 独占性 D. 及时性
My Answer
我的选择:B 理由:对分时系统的核心特征记忆模糊,被”独占性”和”独立性”的字眼骗了。
Correct Answer
正确答案:C(独占性) 正解:分时系统(如 Linux / Unix)的四大核心特征:
- 多路性:一台主机连接多个终端。
- 交互性:用户可以随时敲键盘和系统对话。
- 及时性:系统的响应时间很短,用户感觉不到卡顿。
- 独立性:每个用户感觉自己好像独占了整台计算机,互不干扰。
Error Pattern
词汇陷阱——对分时系统的核心特征记忆模糊,被”独占性”和”独立性”的字眼骗了。
Core Concept
- 分时系统特征
Expected Context
- 笔记路径:进程与线程
- 检索关键词:分时系统特征、多路性、交互性、及时性、独立性 vs 独占性、时间片轮转
Fix Plan
分时系统提供的是独立性(假象),而不是独占性(物理现实)。因为物理 CPU 只有一个,是大家轮流切片使用的,谁也没有”独占”它。
变式自测:分时系统为用户提供的”独占计算机”的感觉,在 OS 特征中称为?(提示:每个用户感觉自己独占整台计算机。答案:独立性。)
[OS] 用户态 vs 内核态的越权判定(错题群)
Question
典型错题群还原:
- Q11:trap/访管指令()使用。→ 只能在用户态(A)
- Q12:不能在用户态下执行的是()。→ 关中断指令(D)
- Q25:只能在核心态执行的是()。→ 设置时钟日期(C)
- Q26:不可能在用户态发生的事件是()。→ 进程切换(C)
- Q28:通常不需要切换到内核态执行的是()。→ 通用寄存器清零(C)
- Q31:不可能导致用户态变为内核态的是()。→ NOT R0(C)
My Answer
我的选择:各题错误答案。 理由:错把”引发内核态切换的起因指令(如 trap)“当成了”必须在内核态执行的指令”,同时对影响系统全局的危险操作缺乏警惕性。
Correct Answer
正确答案:Q11→A、Q12→D、Q25→C、Q26→C、Q28→C、Q31→C。 正解:
- 特权指令(内核态专属):凡是会改变系统物理状态、影响其他进程或分配硬件资源的操作,全都是特权指令。例如:关中断、设置时钟日期、执行 I/O 指令、修改页表、进程切换。
- 普通指令(用户态即可):在进程自己的小沙盒里玩耍的指令。例如:加减乘除、清零自己的通用寄存器、逻辑取反(NOT)。
- 状态切换路径与事件:
- 访管指令(trap):它是唯一一个让用户程序主动请求 OS 服务的机制。它本身在用户态执行,但执行结果是触发访管中断,导致 CPU 切换入内核态。
- 发生异常(如缺页、除零):错误和异常是在用户态发生的,硬件立刻拦截并砸向内核态进行处理。
Error Pattern
权限直觉缺失——错把”引发内核态切换的起因指令(如 trap)“当成了”必须在内核态执行的指令”,同时对影响系统全局的危险操作缺乏警惕性。
Core Concept
- 特权指令
- 内核态与用户态
- 中断与异常
Expected Context
- 笔记路径:进程与线程、指令系统
- 检索关键词:特权指令、用户态 / 内核态、访管指令 trap、关中断、进程切换、缺页、系统调用、中断与异常
Fix Plan
“管别人”、“管硬件”、“管全局” → 特权指令(内核态);“管自己”、“算算数” → 非特权指令(用户态)。特别注意:系统调用(发生)、缺页(发生)、执行 Trap(执行)都是用户态的行为,它们只是通往内核态的”车票”。
变式自测:以下哪个操作可以在用户态执行?(提示:只影响当前进程自身、“管自己”的操作。答案:通用寄存器清零(C)。)
术语表
- 操作系统:控制和管理计算机硬件与软件资源,为应用程序提供服务的系统软件。
- 操作系统的目标:操作系统的三大设计目标——方便性、有效性、可扩充性。
- 操作系统发展阶段:操作系统从单道批处理 → 多道批处理 → 分时系统 → 实时系统的发展历程。
- 分时系统特征:分时系统的四大特征——多路性、交互性、及时性、独立性。
- 特权指令:只能在核心态(内核态)执行的指令,如关中断、设置时钟、I/O 指令、进程切换等。
- 内核态与用户态:CPU 的两种工作模式。内核态可以执行任何指令,用户态只能执行非特权指令。
- 中断与异常:中断(外中断)由外部设备触发,异常(内中断)由 CPU 内部事件触发,两者都会导致从用户态切换到内核态。
- 访管指令(trap):唯一能让用户程序主动请求 OS 服务的机制,在用户态执行但会触发切换到内核态。
相关链接
cd ..