MD 更新:未知

计算机基础 · 考点总结

综合整理自: 操作系统概述存储管理文件系统磁盘管理


知识图谱

计算机基础
├── 1. 操作系统基础
│   ├── 操作系统作用
│   ├── 分时 / 实时 / 网络操作系统
│   └── 用户、应用、硬件之间的接口
├── 2. 进程管理 ⭐⭐⭐
│   ├── 进程状态转换
│   ├── 进程与线程
│   ├── 同步与互斥
│   ├── 临界资源
│   └── PV 操作
├── 3. 死锁与银行家算法 ⭐⭐
│   ├── 死锁概念
│   ├── 死锁必要条件
│   └── 安全状态判断
├── 4. 存储管理 ⭐⭐
│   ├── 页式存储
│   ├── 段式存储
│   └── 段页式存储
├── 5. 文件系统 ⭐⭐
│   ├── 索引文件
│   ├── 直接索引
│   ├── 一级间接索引
│   └── 二级间接索引
└── 6. 磁盘管理 ⭐⭐
    ├── 存取时间
    ├── 磁盘读取时间
    └── 磁盘移臂调度算法

一、操作系统基础

1.1 操作系统的作用

操作系统是计算机系统中最核心的系统软件。

作用说明
管理资源管理硬件、软件、数据资源
控制程序运行负责进程调度、内存分配、I/O 控制
人机接口为用户提供命令、图形界面等操作方式
软硬件接口为应用程序屏蔽硬件细节,提供系统调用

一句话: 操作系统向下管理硬件,向上服务应用。

1.2 特殊操作系统

类型核心特点关键词
分时操作系统采用时间片轮转,为多个用户服务多路性、独立性、及时性
实时操作系统必须在规定时间内响应时间约束、实时控制
网络操作系统提供网络通信和资源共享能力共享资源、网络服务

易考点:

  • 分时系统强调多个用户共享系统资源。
  • 实时系统强调在规定时间内完成响应。
  • 网络操作系统强调网络资源共享和网络服务。

二、进程管理 ⭐⭐⭐

2.1 进程状态转换

进程常见三态:

状态含义
运行态正在 CPU 上执行
就绪态已具备运行条件,只等 CPU
等待态 / 阻塞态等待某个事件发生,暂时不能运行

状态转换:

就绪态 --调度--> 运行态
运行态 --时间片到--> 就绪态
运行态 --等待事件--> 等待态
等待态 --事件发生--> 就绪态

易错点: 等待态不能直接进入运行态,必须先变成就绪态,再由调度程序分配 CPU。

2.2 进程与线程

对比项进程线程
定义资源分配的基本单位CPU 调度的基本单位
拥有资源拥有独立地址空间和资源共享进程资源
切换开销较大较小
通信方式进程间通信较复杂同进程线程共享内存,通信方便
安全性相互隔离较强一个线程异常可能影响整个进程

记忆要点:

进程管资源,线程管执行。

2.3 同步与互斥

概念含义关系类型
互斥多个进程竞争同一临界资源,同一时刻只允许一个进程访问间接制约
同步多个进程为了协作,需要按照一定先后顺序执行直接制约

临界资源:一次只允许一个进程访问的资源,例如打印机、共享变量、共享文件。

临界区:进程中访问临界资源的那段代码。

2.4 信号量与 PV 操作

信号量可以表示资源数量:

  • S > 0:可用资源数量
  • S = 0:没有可用资源
  • S < 0:等待该资源的进程数量
操作含义本质
P(S)申请资源 / 等待S--
V(S)释放资源 / 通知S++

记忆:

P = 申请资源,可能阻塞
V = 释放资源,可能唤醒

2.5 前驱图与 PV 操作

前驱图表示任务之间的先后关系。

图中关系PV 操作思路
A 指向 BA 是 B 的前驱,B 是 A 的后继
A 执行完对后继关系执行 V,通知后继
B 执行前对前驱关系执行 P,检查前驱是否完成

技巧:

  • 有几个箭头,就通常对应几个同步信号量。
  • 有后继就 V,有前驱就 P
  • 用于同步的信号量初值一般为 0

三、死锁与银行家算法 ⭐⭐

3.1 死锁概念

死锁:多个进程因竞争资源而相互等待,导致每个进程都在等待一个不可能发生的事件。

3.2 死锁的四个必要条件

条件含义
互斥条件资源一次只能被一个进程使用
请求与保持条件进程已占有资源,同时又请求新资源
不剥夺条件进程已获得的资源不能被强行剥夺
循环等待条件存在进程资源的循环等待链

考点: 只要破坏四个必要条件中的任意一个,就可以预防死锁。

3.3 银行家算法

银行家算法用于避免死锁,核心思想是:系统只在分配后仍处于安全状态时才真正分配资源

基本规则:

  • 进程最大需求量不能超过系统资源总数。
  • 进程可以分期请求资源。
  • 总请求数不能超过最大需求量。
  • 若当前资源不能满足安全分配,则可以推迟请求。

常见变量:

名称含义
Max进程对资源的最大需求
Allocation已经分配给进程的资源
Need进程还需要的资源
Available系统当前可用资源

核心公式:

Need = Max - Allocation

安全性判断思路:

  1. 找到一个 Need <= Available 的进程。
  2. 假设该进程顺利执行完成并释放资源。
  3. 更新 Available = Available + Allocation
  4. 重复直到所有进程都能完成。
  5. 如果能找到完整安全序列,则系统安全。

四、存储管理 ⭐⭐

4.1 页式存储

页式存储:把程序和内存划分为大小相同的块,以页为单位把程序调入内存。

优点缺点
内存利用率高增加系统开销
碎片小可能产生抖动
分配和管理简单不符合用户逻辑结构

关键词: 页大小固定,逻辑地址分为页号和页内地址。

4.2 段式存储

段式存储:按照用户作业中的自然段划分逻辑空间,例如代码段、数据段、堆栈段。

优点缺点
便于程序共享内存利用率较低
便于保护容易产生外部碎片
符合用户逻辑结构管理复杂

关键词: 段长度可变,符合程序逻辑结构。

4.3 段页式存储

段页式存储:先分段,再分页。一个程序有多个段,每个段再划分为多个页。

优点缺点
空间浪费小系统复杂性增加
存储共享容易管理开销增加
存储保护容易占用空间增加
能动态链接执行速度可能下降

4.4 三种存储方式对比

对比项页式段式段页式
划分依据物理等长页逻辑功能段先逻辑分段,再物理分页
大小页大小固定段长可变段可变,页固定
碎片内部碎片外部碎片内部碎片较小
用户可见性用户不易感知用户可见用户可见段,系统管理页
主要优势管理简单、利用率高共享和保护方便兼顾页式和段式优点

五、文件系统 ⭐⭐

5.1 索引文件

索引文件通过索引节点记录文件数据块的位置。

常见索引方式:

类型指向内容作用
直接索引直接指向数据块访问小文件快
一级间接索引指向一个地址块,地址块再指向数据块扩大文件大小
二级间接索引指向一级间接索引块支持更大文件

5.2 索引文件计算

已知:

物理块大小 = 1KB = 1024B
地址项长度 = 4B

一个索引块可存放地址项数量:

1024 / 4 = 256

如果有 10 个直接索引项:

索引类型可指向数据块数量可表示文件大小
直接索引1010 × 1KB = 10KB
一级间接索引256256 × 1KB = 256KB
二级间接索引256 × 25665536 × 1KB = 65536KB

总文件大小:

10KB + 256KB + 65536KB = 65802KB

答题套路:

  1. 先算一个索引块能放多少地址项。
  2. 直接索引:索引项个数 × 块大小。
  3. 一级间接:地址项数 × 块大小。
  4. 二级间接:地址项数 × 地址项数 × 块大小。
  5. 多级索引总容量相加。

5.3 位示图

位示图:用每一个 bit 表示一个磁盘块是否空闲。

位值含义
0空闲
1占用

如果机器字长为 16 位,则一个字可以表示 16 个磁盘块的使用情况。


六、磁盘管理 ⭐⭐

6.1 磁盘存取时间

磁盘存取时间主要包括:

存取时间 = 寻道时间 + 旋转延迟时间 + 传输时间
时间含义
寻道时间磁头移动到目标磁道所需时间
旋转延迟时间 / 等待时间等待读写扇区旋转到磁头下方所需时间
传输时间真正读写数据所需时间

考试简化: 有些题会把存取时间简化为 寻道时间 + 等待时间,具体按题目条件计算。

6.2 磁盘移臂调度算法

算法全称思想特点
FCFS先来先服务按请求到达顺序服务公平,效率可能较低
SSTF最短寻道时间优先优先服务离当前磁头最近的请求平均寻道短,可能饥饿
SCAN扫描算法 / 电梯算法磁头按一个方向移动,沿途服务请求,到端点再反向兼顾效率与公平
CSCAN循环扫描算法只沿一个方向服务,到端点后快速回到起点等待时间更均匀

记忆:

FCFS = 排队
SSTF = 就近
SCAN = 电梯来回扫
CSCAN = 单向循环扫

七、易错点总结

易错点正确理解
等待态直接变运行态等待态事件发生后先进入就绪态,再被调度运行
混淆同步和互斥同步是协作顺序,互斥是竞争临界资源
混淆 P/V 操作P 是申请资源 S--,V 是释放资源 S++
信号量为负数不知道含义负数绝对值表示等待该资源的进程数
线程和进程混淆进程是资源分配单位,线程是 CPU 调度单位
只记死锁概念,不记四条件互斥、请求保持、不剥夺、循环等待
页式和段式混淆页固定大小,段按逻辑功能划分且长度可变
索引文件少算间接层级一级是 256,二级是 256 × 256
磁盘存取时间只算传输时间通常还要考虑寻道时间和旋转延迟时间
SSTF 以为最公平SSTF 可能导致远处请求长期等待

八、考前速背

操作系统:管理资源、控制程序、人机接口、软硬件接口

进程三态:
就绪 --调度--> 运行
运行 --时间片到--> 就绪
运行 --等待事件--> 等待
等待 --事件发生--> 就绪

进程管资源,线程管执行
互斥:竞争临界资源
同步:协作先后顺序

P(S):申请资源,S--
V(S):释放资源,S++

死锁四条件:
互斥、请求与保持、不剥夺、循环等待

Need = Max - Allocation

页式:固定页,利用率高
段式:逻辑段,共享保护方便
段页式:先分段,再分页

索引块地址项数 = 物理块大小 / 地址项长度
1KB / 4B = 256

磁盘存取时间 = 寻道时间 + 旋转延迟时间 + 传输时间
FCFS:先来先服务
SSTF:最短寻道时间优先
SCAN:电梯算法
CSCAN:循环扫描