操作系统复习总结:教材《操作系统(第5版)》
文章目录
操作系统基础
基础
-
操作系统的层次
- 机器层 → 硬件
- 操作系统层 → 系统
- 系统层 → 系统软件
- 应用层 → 应用程序
-
概念
- 操作系统是一种系统软件,是软、硬件资源的控制中心。它以尽量合理有效的方法组织单个或多个用户以多任务方式共享计算机系统的各种资源,并提供使用接口。
-
计算机系统的软件层次及构成
-
操作系统作为特殊的子程序
-
操作系统作为资源管理者
- 资源共享方法:时分和空分
- 时分:独占式共享、分时式共享
- 资源共享方法:时分和空分
-
操作系统提供程序并发运行机制
-
设计目标
- 有效性
- 方便性
- 可扩充性
- 开放性
-
作用
- 操作系统是用户与计算机硬件系统之间的接口
- 是计算机系统资源的管理者
- 操作系统扩充了机器的功能
- 合理组织工作流程
-
内容
- 处理机管理
- 存储管理
- 设备管理
- 文件管理
-
三种经典类型
- 批处理系统
- 分时系统
- 实时系统
-
操作系统发展
脱机输入输出方式→监督程序(单道批处理)→多道批处理系统
- 监督程序特点:
- 单道性
- 顺序性
- 自动性
- 多道批处理系统特点
- 并发
- 共享
后代都比前代的优点:
- 提高了CPU的利用率
- 提高了I/O速度和利用率
- 监督程序特点:
-
四大特征
- 并发性
- 虚拟性
- 共享性
- 异步性
-
分时系统的实现思想:分时技术(时间片方法)
-
分时系统的基本特点
- 并发性
- 共享性
- 交互性
- 独立性
-
实时系统概念
- 计算机立即响应运算和处理被控过程或事务处理
-
实时系统的特征
- 并发性
- 交互性
- 独立性
- 及时性
- 可靠性
-
操作系统三种运行模式
- 独立运行的内核
- 嵌入用户进程运行模式(主流系统应用)
- 微内核运行模式
中断和异常
-
(狭义)中断和异常的区别
- 中断与正执行的指令无关
- 异常与正执行的指令有关
-
中断包括
- I/O中断和时钟中断
- 机器故障(包括:校验错、电源故障、主存读数错等)
-
异常包括
- 程序性异常(包括:非法操作码、无效地址、算术溢出)
- 自陷指令
-
中断屏蔽:软屏蔽和硬屏蔽
-
现场信息:
- 程序计数器PC
- 通用寄存器
- 程序运行相关的特殊寄存器
-
核心态为管态、系统状态、监督方式
-
用户态为目态、用户状态、用户方式
-
中断向量
- 处理程序的入口地址
- 处理机状态转换的信息,PC、PS
- PS:处理机状态字
-
中断/异常处理过程
- 中断/异常进入
- 保存现场
- 分析原因并转入中断/异常处理程序
- 恢复现场
-
中断/异常的第一件事:交换PC和PS的值
系统调用
- 概念
- 是操作系统内核程序和用户态运行程序之间的接口
- 是用户程序在程序一级请求操作系统为之服务的一种手段
- 调用过程
- 保存现场后,查表得到地址转入总控程序
- 类型号查表后参数传递,转入系统调用实现出数
- 结束返回,结果存入寄存器
- 恢复现场,退出系统调用
进程和线程
基础
-
概念
-
进程是一个具有一定独立性功能的程序关于某个数据集合的一次可以并发的运行活动
-
由以下4个方面组成:
- 可执行程序及处理数据
- 一个独立的进程用户空间
- 分配给进程的其他系统资源,如I/O设备、文件
- 一个执行栈区(一个用户栈,一个核心栈)
-
-
进程和程序的关系
- 一个进程至少运行一个可执行程序
- 同一个程序可以由多个进程分别执行
-
进程映像
- 程序、数据和用户栈的集合
-
进程控制块
-
组织形式
- 链接方式
- 索引方式
-
进程控制块表示
进程标识信息 处理机状态信息 进程控制信息
-
-
进程状态变化模型
- 运行状态
- 就绪状态
- 等待(阻塞)状态
- 创建状态
- 结束状态
- 还有一个进程挂起状态,与辅存相关,与5个状态对应
-
进程执行模式
- 特权模式
- 非特权模式
-
进程调度:特指选择进程占用处理机
-
三级调度
- 高级调度:选择后备作业、又称作业调度
- 中级调度:选择辅存中挂起的进程
- 低级调度:选择就绪的进程
-
进程调度算法及大题
-
线程:一个进程可以包含多个并发(并行)执行的部分
-
线程控制块(TCB):是进程控制块的组成和附属
-
线程和进程的关系
- 每个进程包含一个或多个线程
- CPU分配是以线程为单位,其他资源分配以进程为单位
- 线程共享其进程的程序区和数据区
- 每个进程有各自的运算环境
进程间关系及通信
-
进程间的制约关系
- 同步关系:完成一个共同任务的相互协作
- 互斥关系:相互竞争独占型资源(打印机、共享内存)
-
临界资源:一次仅允许一个进程使用的资源
-
临界段:执行临界段资源操作的程序段
-
解决临界段的硬件方法:
- 屏蔽中断法
- Test_and_Set指令
- swap指令
-
信号量的作用
- 解决几个进程的临界段问题
- 解决进程间各种同步问题
-
信号量解决同步和互斥问题
- 教材P76
-
消息传递方法:
- 共享存储
- 管道通信
- 消息传递
- 管道通信机制:P84
死锁
-
定义
- 在一个进程集合中,若每个进程都在等待某些释放资源事件的发生,而这些事件又必须由这个进程集合中的某些进程来产生,就成该进程集合处于死锁状态
-
原因
- 资源竞争
- 进程推进顺序不当
-
四个必要条件
- 互斥
- 占用等待
- 非剥夺
- 循环等待
-
四个解决方法
- 无死锁系统
- 死锁防止
- 死锁避免
- 允许死锁出现,排除死锁
3. 死锁检测
4. 死锁恢复
- 无死锁系统
-
死锁防止和死锁避免的比较
- 死锁防止是严格破坏4个必要条件之一,一定不出现死锁
- 死锁避免是不那么严格地限制死锁必要条件的存在,以便提高系统的资源利用率。万一当死锁有可能出现时,就小心避免
-
死锁恢复方法
- 破坏非剥夺条件
- 破坏循坏等待
- 让进程回到系统可摆脱死锁状态的某一点上
-
周转时间:进程从创建到结束
存储
连续空间分配
- 连续空间分配方法
- 单道连续分配
- 多道固定分区
- 多道连续可变分区
- 覆盖/交换的概念
- 重定位:所有地址域→原地址+目标代码所在主存起始地址
- 碎片:没有被利用的空间(存储块)
不连续空间分配
页式管理
- 概念:逻辑空间、物理空间都以相同长度为单位进行等分
- 页表:逻辑页与物理页的对应表
逻辑地址=(P(页号),d(页内位移))
物理地址=(P(页帧号),(页内位移))
段式管理
- 概念:按作业的自然段将逻辑空间分成若干段,作业以段为单位分配内存(物理空间)
- 段表:由段表项组成
- 段表项:保护码|段长|基址
段页式管理
- 将作业分成若干段,每段用页式管理,实现内存分配
逻辑地址=段号|页号(段内页)|页内位移
- 转换物理地址:
- 段号找段表,页号找页表,页内位移确定物理块及地址
- 转换物理地址:
- 32位计算机适用二级页表,64位计算机适用三级以上的多级页表
- 页替换策略作用
- 解决主存空间不足
- 让更多的进程并发运行,提高系统吞吐率
- 驻留集大小固定不变的替换策略
设备
I/O
-
I/O控制域
- 程序直接控制方式
- 中断方式
- DMA方式
-
I/O层次结构
用户层I/O
↓
系统调用接口,设备无关的操作系统软件
↓
设备驱动程序与中断处理
↓
硬件
-
缓冲技术
- 单缓冲
- 双缓冲
- 循环缓冲
目的:减少访问目标存储部件的次数,提高I/O速度
磁盘
- 磁盘访问时间
磁盘访问时间=寻道时间+延迟时间+传输时间
- 寻道时间定位磁道,延迟时间定位扇区,传输时间为读取或写入时间
- 磁盘调度算法
文件
-
文件概念:创建者定义的一组相关信息集合,由程序和数据组成
-
文件的物理结构:
- 顺序结构
- 链接结构
- 索引结构
-
文件控制块
- 包含文件名、用户名、存放方式、物理位置、创建时间、保存期限、口令、操作限制、共享说明、其他等
-
文件目录结构
- 一级目录结构
- 二级目录结构
- 树状目录结构
- 无环图目录结构
-
文件保护
- 口令保护
- 加密保护
- 访问控制
-
文件备份
- 批量备份
- 全量存储
- 增量存储
- 同步备份
- 批量备份
-
文件系统层次结构