大叔自由人

软考 / 架构师 / 第2章

操作系统

章节概述

操作系统是计算机系统的核心系统软件,负责管理和控制软硬件资源。本章以"一个观点(资源管理)、两条线索(资源管理与程序执行控制)"贯穿,涵盖进程管理、存储管理、设备管理、文件管理和作业管理五大功能,重点掌握进程状态转换、PV 操作、段页式存储与页面调度算法。

知识结构框架

  • 2.1 操作系统的类型与结构
    • 2.1.1 操作系统定义(资源管理观点)
    • 2.1.2 操作系统分类(批处理/分时/实时/网络/分布式/嵌入式/微内核)
  • 2.2 操作系统基本原理
    • 2.2.1 进程管理(状态转换、互斥与同步、PV 操作、前趋图、调度与死锁)
    • 2.2.2 存储管理(页式/段式/段页式、虚拟存储、页面调度算法)
    • 2.2.3 设备管理(数据传输控制方式、SPOOLING 技术)
    • 2.2.4 文件管理(逻辑/物理结构、存储设备管理、树型目录)
    • 2.2.5 作业管理(作业状态转换、用户接口)

核心概念定义

进程三态模型

  • 就绪状态:已获得除 CPU 外所有必要资源,等待分配处理器
  • 执行状态:已获得处理器,程序正在执行(单处理机仅一个)
  • 阻塞状态:因等待某事件(I/O、资源申请等)而暂停执行

状态转换规则:阻塞→就绪(事件到来)、就绪→执行(调度选中)、执行→就绪(时间片用完)、执行→阻塞(等待事件)。阻塞不能直接到执行,就绪不能直接到阻塞。

进程互斥与同步

  • 互斥:保证临界资源在某一时刻只被一个进程访问(资源竞争关系)
  • 同步:异步环境下并发进程因直接制约而互相合作、互相等待(协作关系)
  • 临界资源:一次仅允许一个进程使用的资源(打印机、磁带机等)
  • 临界区:进程访问临界资源的那段程序代码

协调准则:①空闲让进 ②忙则等待 ③有限等待 ④让权等待

PV 操作(信号量机制)

信号量是一个整数,≥0 时代表可用资源实体数,<0 时表示等待进程数。P/V 操作为不可分割的原子操作(原语)。

  • P(sem):sem = sem - 1;若 sem < 0 则进程进入等待状态,否则继续
  • V(sem):sem = sem + 1;若 sem ≤ 0 则唤醒队列中的一个等待进程,否则继续

死锁四必要条件

  1. 互斥条件:资源一次只能被一个进程使用
  2. 保持和等待条件:进程保持已占资源并请求新资源
  3. 不剥夺条件:资源不能被强行夺走
  4. 环路等待条件:存在进程-资源的循环等待链

策略:预防(打破四条件之一)、避免(银行家算法)、检测与恢复。

页面调度算法

算法策略特点
OPT(最优)淘汰不再使用或最远将来才使用的页理想算法,难以实现,用于比较
RAND(随机)随机选择淘汰页开销小,可能选中即将访问的页
FIFO(先进先出)淘汰内存驻留时间最长的页简单;可能出现 Belady 异常(页面增多缺页反而增加)
LRU(最近最少使用)淘汰最近一段时间内使用最少的页合理但实现复杂,开销较大

数据传输控制方式

  • 程序控制方式:处理器启动传输后等待设备完成
  • 中断方式:进程启动传输后放弃处理器,完成后中断通知
  • DMA 方式:外设与内存间直接数据交换通路,窃取处理器工作周期
  • 通道方式:IOP 独立完成 I/O 任务(字节多路/选择/成组多路通道)

SPOOLING 技术

假脱机技术(外部设备同时联机操作),用一组程序或进程模拟一台 I/O 处理器,将低速独占设备改造为可共享设备,一台物理设备对应若干台虚拟设备。必须有高速大容量可随机存取的外存(磁盘/磁鼓)支持。

文件物理结构

分配方式特点适用场景
顺序分配连续物理块,需预知长度顺序存取,存取快
链接分配指针链接物理块,可动态增长顺序访问,搜索效率低
索引分配索引表记录逻辑块→物理块映射顺序+随机存取,开销大

关键公式与模型

段页式虚拟地址
虚地址 = (段号, 页号, 页内偏移)
查表顺序:段号→段表→页表地址→页号→页表→物理块号→+页内偏移→物理地址
位示图法
位示图每一位对应一个物理块,0=空闲,1=占用
若系统字长 32 位,则第 i 个字对应第 32×i 到 32×(i+1)-1 号物理块