软考软件设计师/系统架构设计师必考:操作系统概述(类型、内核、中断)最全详解
目标:一文彻底掌握软考上午题中“操作系统概述”所有考点。包含操作系统的定义与作用、五大功能、四种基本类型及特点、内核的组成与功能、用户态与内核态、中断与系统调用的原理及区别。配大量例题与解题技巧,看完这篇,无需再翻其他资料。
一、操作系统的定义与作用
1. 什么是操作系统
操作系统(Operating System,OS)是管理计算机硬件与软件资源的系统软件,是计算机系统中最基本、最核心的软件。它直接运行在裸机之上,为其他应用软件提供运行环境。
2. 操作系统的地位
操作系统位于硬件层与应用程序层之间,向下管理硬件资源,向上为用户和应用程序提供服务接口。
┌─────────────────┐
│ 应用程序 │
├─────────────────┤
│ 操作系统 │
├─────────────────┤
│ 硬件(裸机) │
└─────────────────┘
3. 操作系统的两大基本作用
- 资源管理者:统一管理和调度处理机、存储器、设备、文件等资源,提高资源利用率。
- 用户接口:为用户提供操作界面和编程接口,方便使用计算机。
4. 操作系统的五大功能
| 功能 | 主要内容 |
|---|---|
| 处理机管理 | 进程管理、进程调度、并发控制 |
| 存储管理 | 内存分配与回收、地址转换、内存保护、虚拟内存 |
| 设备管理 | 设备分配与回收、设备驱动、缓冲区管理 |
| 文件管理 | 文件存储、检索、共享与保护 |
| 作业管理 | 作业提交、调度、执行控制 |
软考常考:操作系统五大功能的识别,如“内存保护”属于存储管理,“设备分配”属于设备管理。
二、操作系统的类型
操作系统按工作方式和应用场景分为多种类型,软考重点考查以下四种基本类型的特点、优缺点和典型系统。
1. 批处理操作系统
特点
- 用户将一批作业提交给系统,系统按顺序成批处理,无需人工干预。
- 作业运行期间,用户不能与系统交互。
分类
- 单道批处理系统:内存中仅有一道作业运行,资源利用率低。
- 多道批处理系统:内存中同时存放多道作业,CPU在等待某作业I/O时切换到另一作业,提高资源利用率。
优点
- 作业成批处理,吞吐量大,资源利用率高。
缺点
- 无交互能力,用户不能干预作业运行。
- 作业平均周转时间长。
典型系统
- IBM OS/360
软考常考:批处理系统“无交互”是最大特点。
2. 分时操作系统
特点
- 多个用户通过终端同时使用计算机。
- CPU按时间片轮转方式轮流为每个用户服务。
- 用户感觉独占计算机,具有交互性。
优点
- 响应快,用户体验好。
- 支持多用户同时使用。
缺点
- 系统开销较大(进程频繁切换)。
- 资源利用率低于批处理(因为要保证响应时间)。
典型系统
- UNIX、Linux
软考常考:分时系统的核心技术是“时间片轮转”,关键特性是“交互性”。
3. 实时操作系统
特点
- 对外部事件快速响应,在规定时间内完成处理。
- 强调及时性和可靠性,而非资源利用率。
分类
- 硬实时系统:必须在绝对严格时间内响应,超时可能导致严重后果(如导弹控制、工业控制)。
- 软实时系统:允许偶尔超时,但需尽快响应(如多媒体、网络通信)。
优点
- 响应时间可预测,可靠性高。
缺点
- 资源利用率相对较低,设计复杂。
典型系统
- VxWorks、RT-Linux、QNX
软考常考:实时系统“及时性、可靠性”优先于“资源利用率”,硬实时与软实时的区别。
4. 网络操作系统与分布式操作系统(了解)
网络操作系统
- 提供网络通信和资源共享功能,如Windows Server、NetWare。
- 各计算机相对独立,通过网络协议通信。
分布式操作系统
- 多台计算机协同工作,对用户表现为统一整体。
- 透明性、自治性、并行性。
- 典型系统:Amoeba、Plan 9。
软考常考:分布式系统“对用户透明”,用户无需知道任务在哪台机器执行。
5. 四种基本类型对比
| 类型 | 交互性 | 响应时间 | 资源利用率 | 典型场景 |
|---|---|---|---|---|
| 批处理 | 无 | 无要求 | 高 | 科学计算、批量数据处理 |
| 分时 | 有 | 快(秒级) | 中 | 多用户终端 |
| 实时 | 有 | 极快(毫秒/微秒级) | 低 | 工业控制、武器系统 |
| 网络/分布式 | 有 | 视情况 | 较高 | 资源共享、分布式计算 |
三、内核
1. 内核的定义
内核是操作系统最核心的部分,常驻内存,提供操作系统最基本的功能,包括进程调度、内存管理、设备驱动、文件系统等。
2. 内核的组成
常见内核组件包括:
- 进程管理:进程创建、调度、终止,线程管理。
- 内存管理:地址转换、内存分配与回收、虚拟内存。
- 设备驱动:控制硬件设备,提供统一接口。
- 文件系统:文件操作接口、存储管理。
- 系统调用接口:为用户程序提供受控的内核服务入口。
- 中断处理:响应硬件中断和软件异常。
3. 内核的两种基本结构
| 结构类型 | 特点 | 优点 | 缺点 | 典型系统 |
|---|---|---|---|---|
| 宏内核(单内核) | 内核功能集中,所有模块在一个大内核中运行 | 性能高,通信开销小 | 内核庞大,可扩展性差,一处错误影响全局 | Linux、Unix |
| 微内核 | 内核只保留最基本功能(IPC、调度、中断),其他服务移至用户空间 | 可靠性高,易扩展,易维护 | 模块间通信频繁,性能较低 | Minix、Mach、QNX |
软考常考:微内核将设备驱动、文件系统等移出内核,提高可靠性和可扩展性,但性能有所损失。
4. 用户态与内核态
基本概念
- 用户态(User Mode):执行用户程序时的状态,权限受限,不能直接访问硬件和内核数据。
- 内核态(Kernel Mode):执行操作系统代码时的状态,权限最高,可访问全部资源。
状态切换
- 用户态 → 内核态:通过系统调用、中断、异常进入。
- 内核态 → 用户态:通过特权指令返回。
软考常考
- 用户态切换到内核态的三种途径:系统调用、中断、异常。
- 内核态可以执行特权指令,用户态不能。
- 状态切换时,CPU需要保存现场(PC、PSW等)。
5. 系统调用
定义
系统调用是操作系统提供给应用程序的编程接口,用户程序通过系统调用请求内核服务。
特点
- 用户态程序不能直接执行内核功能,必须通过系统调用陷入内核。
- 系统调用使用**访管指令(陷入指令)**触发,由用户态切换到内核态。
- 常见系统调用:文件操作(open、read、write)、进程控制(fork、exec)、内存管理(malloc、brk)、设备操作(ioctl)。
系统调用与普通函数调用的区别
| 比较项 | 普通函数调用 | 系统调用 |
|---|---|---|
| 运行状态 | 用户态 | 内核态(切换) |
| 开销 | 小 | 大(需要状态切换) |
| 访问权限 | 只能访问用户空间 | 可访问系统资源 |
| 实现方式 | 普通跳转指令 | 访管/陷入指令 |
例题1:用户程序执行 open("file.txt") 时,CPU状态发生了怎样的变化?
解析:用户态 → 内核态。通过系统调用陷入内核,由内核完成文件打开操作,返回后回到用户态。
四、中断
1. 中断的定义
中断是指CPU暂停当前正在执行的程序,转去处理外部或内部发生的紧急事件,处理完毕后返回原程序继续执行的过程。中断是操作系统实现并发、实时响应和处理异常的基础。
2. 中断的分类
| 分类方式 | 类型 | 说明 | 例子 |
|---|---|---|---|
| 按来源 | 硬件中断(外部中断) | 来自外部设备或硬件电路 | 键盘输入、时钟中断 |
| 软件中断(内部中断/异常) | 由指令执行引起 | 除零、缺页、系统调用 | |
| 按是否可屏蔽 | 可屏蔽中断 | 可通过标志寄存器屏蔽 | 多数外设中断 |
| 不可屏蔽中断 | 不可屏蔽,必须立即响应 | 电源故障、硬件错误 |
3. 中断处理过程
中断处理一般包括以下步骤:
- 中断请求:中断源向CPU发出中断请求信号。
- 中断响应:CPU在当前指令执行完毕后,检查中断请求,若允许则响应。
- 保护现场:保存被中断程序的断点(PC)、程序状态字(PSW)和必要寄存器。
- 中断处理:转入中断服务程序,执行相应处理。
- 恢复现场:恢复寄存器内容。
- 中断返回:弹出断点,返回被中断程序继续执行。
软考常考:中断响应时机(当前指令执行完毕后)、保存现场内容(PC、PSW等)。
4. 中断与系统调用的关系
- 系统调用是软件中断的一种,用户程序通过访管指令主动触发中断进入内核。
- 外部硬件中断是异步的,由外设发起;系统调用是同步的,由程序执行指令触发。
5. 中断的优先级与嵌套
- 多个中断源同时请求时,按优先级响应。
- 高优先级中断可以打断低优先级中断服务(中断嵌套)。
- 可通过中断屏蔽寄存器控制哪些中断可被响应。
例题2:CPU响应中断的条件有哪些?
解析:
- 有中断请求信号。
- 当前指令执行完毕。
- 中断未被屏蔽。
- 中断优先级足够高。
五、软考常见题型与例题
题型一:操作系统类型判断
例题3:某操作系统允许多个用户通过终端同时使用计算机,系统采用时间片轮转方式调度进程。该操作系统属于( )。
A. 批处理系统 B. 分时系统 C. 实时系统 D. 分布式系统
答案:B
解析:多用户终端+时间片轮转+交互性是分时系统的典型特征。
例题4:下列系统中,强调及时性和可靠性,对外部事件必须在规定时间内响应的是( )。
A. 分时系统 B. 批处理系统 C. 实时系统 D. 网络系统
答案:C
解析:实时系统核心特性是及时性和可靠性。
题型二:内核与用户态
例题5:下列操作中,需要从用户态切换到内核态的是( )。
A. 执行一个加法运算
B. 调用一个用户自定义函数
C. 读取磁盘文件
D. 执行循环语句
答案:C
解析:读取磁盘文件需要通过系统调用请求内核服务,发生状态切换。
例题6:微内核结构的特点不包括( )。
A. 内核体积小
B. 可靠性高
C. 服务模块间通信频繁
D. 性能高于宏内核
答案:D
解析:微内核由于模块间通信频繁,性能通常低于宏内核。
题型三:中断处理
例题7:CPU响应中断的时间是( )。
A. 任意时刻
B. 当前指令执行完毕后
C. 一个机器周期结束后
D. 一个时钟周期结束后
答案:B
解析:CPU在当前指令执行完毕后检查中断请求并响应。
例题8:中断处理过程中,保存现场是指保存( )。
A. 中断服务程序入口地址
B. 被中断程序的断点(PC)和程序状态字(PSW)
C. 中断向量表
D. 外设状态寄存器
答案:B
解析:保存现场包括断点(PC)和PSW,以及必要通用寄存器。
题型四:系统调用与函数调用
例题9:下列关于系统调用的说法,错误的是( )。
A. 系统调用通过访管指令触发
B. 系统调用运行在内核态
C. 系统调用与普通函数调用开销相同
D. 系统调用是用户程序请求内核服务的接口
答案:C
解析:系统调用需要状态切换,开销远大于普通函数调用。
六、易错点与注意事项
- 批处理系统“无交互”:不是“交互性差”,而是完全无交互。
- 分时系统“时间片轮转”:核心调度算法,确保每个用户都能及时获得响应。
- 实时系统“及时性”:不仅要求响应快,更强调在规定截止时间内完成。
- 微内核性能:微内核可靠性高,但性能通常低于宏内核(由于模块间通信)。
- 用户态→内核态三途径:系统调用、中断、异常。
- 中断响应时机:当前指令执行完毕后,不是任意时刻。
- 保存现场内容:断点(PC)、程序状态字(PSW),必要时还有通用寄存器。
- 系统调用属于软件中断:由指令触发,属于同步事件;硬件中断由外设触发,属于异步事件。
七、总结与速记
速记1:操作系统五大功能
处(处理机)存(存储)设(设备)文(文件)作(作业)
速记2:四种基本类型
- 批处理:无交互,吞吐大
- 分时:交互好,时间片
- 实时:及时性,可靠性
- 网络/分布式:资源共享,透明性
速记3:内核结构对比
- 宏内核:快、大、不够稳
- 微内核:慢、小、稳、好扩展
速记4:用户态→内核态
系统调用 + 中断 + 异常
速记5:中断处理流程
请求 → 响应 → 保护现场 → 服务 → 恢复现场 → 返回
速记6:中断响应时机
当前指令执行完毕后
掌握以上内容,配合历年真题练习,操作系统概述部分即可轻松得分。建议重点记忆四种操作系统类型的特点对比、内核结构区别、系统调用与中断的关系。
下期预告:操作系统核心考点——进程管理(PV操作、死锁、银行家算法),敬请关注。
发布日期
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)