只会在选择题中考3-5分。
1.操作系统概述
1.1. 操作系统的定义
能有效组织和管理系统中各种软件、硬件资源,合理的组织计算机系统工作流程,控制程序执行,并向用户提供一个良好的工作环境和友好的接口。
1.1.1. 操作系统的三个重要作用
- 管理计算机中运行的程序和分配各种软硬件资源
- 为用户提供友善的人机界面
- 为应用程序的开发和运行提供一个高效率的平台
1.1.2. 操作系统的4个特征
- 并发性
- 共享性
- 虚拟性
- 不确定性(异步性)
1.2. 操作系统的功能
- 进程管理:处理器对执行“时间”进行管理,采用多道程序等进行将CPU的时间合理分配给每个任务。主要包括:
- 进程控制
- 进程同步
- 进程通信
- 进程调度
- 文件管理
- 文件存储空间管理
- 目录管理
- 文件的读/写管理
- 存取控制
- 存储管理:对主存的“空间”进行管理
- 存储分配与回收
- 存储保护
- 地址映射(变换)
- 主存扩充
- 设备管理:对硬件设备的管理,包括输入/输出设备的分配、启动、完成和回收
- 作业管理:包括任务、界面管理、人机交互、图形界面等
1.3. 操作系统的分类
- 批处理操作系统
- 单道批处理操作系统
- 多道批处理操作系统
- 分时操作系统:时间分片,注重交互
- 实时操作系统:对交互要求不高,但是要求实时性、可靠性有保障
- 网络操作系统:使联网计算机能方便而有效的共享网络
- 集中模式
- 客户端/服务器模式(C/S模式)
- 对等模式(PPP模式/P2P模式)
- 分布式操作系统:网络操作系统的升级
- 微型计算机操作系统:比如Window、Mac OS、Linux
- 微内核操作系统:尽可能的将内核做的很小,系统被分为用户态和内核态
优点 | 缺点 | |
---|---|---|
单体内核 | 1、减少进程之间通信和状态切换的系统开销,获得较高的运行效率 | 1、占用资源较多,不易于剪裁 2、稳定性和安全性不好 |
微内核 | 1、便于剪裁 2、系统的可靠性。稳定性、安全性较高 3、可用于分布式系统 | 1、用户状态和内核状态需要频繁切换,导致系统效率不如单体 |
- 嵌入式操作系统:
- 嵌入式操作系统的初始化过程按照自底向上、从硬件到软件的次序依次为:
- 片级初始化——板级初始化——系统初始化
- 嵌入式操作系统的初始化过程按照自底向上、从硬件到软件的次序依次为:
2.进程管理
2.1. 进程的组成和状态
2.1.1. 进程的组成
- 进程控制块(PCB):唯一标识
- 程序:描述进程要做什么
- 数据:存放进程执行时所需要的数据
2.1.2. 进程的三态图
2.2. 前驱图和进程资源图
PS:会看就好,考得非常简单,也不考什么理论知识,做过一次之后就都会做了
- 前驱图可以确定任务间的并行、任务间的先后顺序
- 进程资源图表示进程和资源之间的分配和请求关系
2.3. 进程的同步和互斥
PS:这里有一个一考就考三分的题,但是没有什么太多理论知识,建议直接做题,题会做就好。
2.3.1. 基本术语
- 临界资源:需要互斥访问
- 临界区:对临界资源实时操作的那段程序
- 互斥
- 同步
- 互斥信号量:初始值为1
- 同步信号量:初始值一般时共享资源的数量
2.3.2. PV操作
- P操作:申请资源——S=S-1
- V操作:释放资源——S=S+1
2.3.3.例题
之前做到过,等找到了再放上来,比较难理解,也不是太难。
2.4.进程调度
进程调度是指当有更高优先级的进程来到时如何分配CPU,进程的调度方式如下图:
2.4.1. 高、中、低三级调度
在一些操作系统中,一个作业从提交到完成需要经历高、中低三级调度。
- 高级调度(长调度、作业调度、接纳调度):决定哪个后备作业可以调入主系统做好运行准备,成为一个或者一组就绪进程。
- 中级调度(中程调度、对换调度):决定交换区的哪个就绪进程可以调入内存,来参与CPU的竞争。
- 低级调度(短程调度、进程调度):决定哪个就绪进程可以占用CPU,低级调度是操作系统中最活跃也是最重要的调度程序。
2.4.2. 调度算法
- 先来先服务
- 时间片轮转
- 优先级调度
- 多级反馈调度(时间片轮转+优先级调度)
2.5. 死锁
2.5.1. 产生死锁的四个必要条件
- 资源互斥
- 每个进程占有资源并等待其他资源
- 系统不能剥夺程序资源
- 进程资源图是一个环路
2.5.2. 解决死锁的方法
PS:只需要打破上面四个条件之一就可以
- 死锁预防
- 死锁避免:银行家算法
- 死锁检测和死锁解除
- 死锁资源计算:n为资源个数、R为每个进程需要的资源数(会考计算题)
- 发生死锁的最大资源数为:n*(R-1)
- 不发生死锁的最小资源数为:n*(R-1)+1
2.6.线程
3.存储管理
3.1.分区存储管理
分区存储组织,就是整存,将某进程运行所需要的内存整体一个分配给它。
三种分区的方法:
- 固定分区:是一种静态分区,会产生内部碎片
- 可变分区:是一种动态分区,会产生外部碎片
- 常见算法:
- 首次适应法
- 循环首次适应法
- 最差适应法
- 最佳适应法
- 常见算法:
- 可重定位分区:为了解决碎片问题,顾名思义:可移动所有已经分配还得区域,使之成为连续的一片
3.2.分页存储管理
分页存储可能会考计算题,即逻辑地址和物理地址的转换以及页内置换。
- 分页存储的优点:利用率高,碎片小,分配及管理简单
- 分页存储的缺点:增加了系统开销,可能产生抖动现象
PS:这个题型变动不大,做题就好,没有什么理论知识
例题:逻辑地址转为物理地址
3.2.2. 页面置换算法
- 最优算法
- 先进先出算法:会产生抖动现象
- 最近最少使用
- 淘汰原则:先淘汰未被为访问的,在淘汰未被修改的
4.2.3. 快表
快表的本质是页表,但是快表存在于Cache中,但是页表(慢表)存在于内存中。
3.3.段式存储管理
考得简单,一般只让你判断段号和段内地址对不对。即考地址表示的计算。
- 分段存储管理优点:多道程序共享内存,各段程序修改互不影响
- 分段存储管理缺点:内存利用率低,内存碎片浪费大
3.3.1.地址表示
(段号,段内偏移):段内偏移不能超过该段号对应的段长,否则越界错误。
3.4.段页式存储管理
对空间先分段,在分页
- 优点:空间浪费小,存储共享容易,存储保存容易,能动态添加链接
- 缺点:由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使得执行速度大大下降
4.设备管理
4.1. 设备分类
- 按照数据组织分类
- 块设备
- 字符设备
- 按照设备功能分类
- 输入设备
- 输出设备
- 存储设备
- 网络联网设备
- 供电设备
- 资源分配角度分类
- 独占设备
- 共享设备
- 虚拟设备
- 数据传输速率分类
- 低速设备
- 中速设备
- 高速设备
4.2. I/O软件
PS:这个一般考中间三层,挖空考。
I/O设备管理软件的所有层次以及每一个功能如下图:
4.3. SPOOLING技术
spooling技术可以将独占设备转化为共享设备(逻辑意义上),就实现了虚拟设备。
5.文件管理
5.1. 概述
- 文件是具有符号名的、在逻辑上具有完整意义的一组相关信息项集合。
- 文件管理系统是操作系统中实现文件统一管理的一组软件和相关数据的集合,专门负责管理和存取文件信息的软件机构。——简称文件系统。
5.1.1. 文件的逻辑结构分类
- 有结构的记录式文件
- 无结构的流式文件
5.1.2. 文件的物理结构分类
物理结构是指文件在物理存储设备上的存放方式,包括:
- 连续结构
- 链接结构
- 索引结构
- 多个物理块的索引表
5.2. 索引文件结构
这里主要考计算,详细看真题
5.3. 文件目录结构
要会看树形结构图。
- 绝对路径
- 相对路径
- 全文件名:绝对路径+文件名
5.4. 文件存储空间管理
5.4.1. 文件的存取方法
- 顺序存取
- 随机存取(常见)
5.4.2. 文件存储空间管理
- 空闲区表(连续存储空间)
- 位视图(这个计算爱考,题目等我找到了再放上来)
- 空闲块链
- 成组链接法