导图社区 操作系统
关于操作系统的一些知识点的总结,操作系统是控制和管理计算机硬件和软件资源,合理组织计算机工作流程以及方便用户使用计算机的程序合集。
编辑于2022-01-02 13:03:34操作系统
操作系统引论
操作系统的基本概念
操作系统是控制和管理计算机硬件和软件资源, 合理组织计算机工作流程以及方便用户使用计算机的程序集合。
各种操作系统的特点
批处理
批量
吞吐量
单道批处理
自动性
顺序性
单道性
多道批处理
多道性
调度性
作业调度
进程调度
无序性
分时
人机交互
共享主机
便于远地用户上机
实时
实时性
可靠性
网络操作系统
分布式
操作系统的主要功能
操作体统的特征
并发性
多道环境下,在一定时间间隔内多个进程 在微观上交替运行,宏观上并行运行
并发和并行的区别
并行是同一时刻
两个任务同时进行
并发是同一时间间隔
两个任务都申请运行,而处理器只能接受两个任务, 就把这两个任务安排轮流进行,由于时间间隔较短, 使人感觉两个程序都在运行
共享性
操作系统中的资源可被多个并发执行的进程所使用
异步性
在多道程序环境下,允许多个程序并发执行,但由于资源有限, 进程的执行不是一贯到底。而是走走停停,以不可预知的速度向前推进
虚拟性
通过某种技术把一个物理上的实体变为若干个逻辑上的对应物
随机性
操作系统的运行是在一个随机的环境中运行的
进程管理
顺序执行
顺序性
封闭性
可再现性
效率不高
并发执行
间断性
失去封闭性
不可再现性
进程
概念
进程是进程实体的运行过程,是系统进行 资源分配和调度的一个独立单位
特点
动态性
进程有一定的生命期
最基本的特征
并发性
多个进程实体同存于内存之中, 且能在一段时间内同时运行
独立性
独立运行,独立获得资源,独立接受调度
异步性
按照各自独立的、不可预知的速度向前推进
进程和程序的区别
进程是动态的 而程序是静态的
进程具有并发性,而程序没有
进程是资源分配和调度的独立单位,其并发性受系统约束
一个程序多次执行,对应多个程序 不同进程可以包含于一个程序
在操作系统中,可以并行工作的基本单位是进程, 它是由程序,标识符以及PCB组成的
状态
就绪
执行
阻塞
挂起
活动就绪
静止就绪
活动阻塞
静止阻塞
何时终止
当一个进程到达了自然结束点
出现了无法克服的错误
状态转换
执行→就绪
时间片完
就绪→执行
进程调度
执行→阻塞
I/O请求
阻塞→就绪
I/O完成
挂起
活动就绪→静止就绪
活动阻塞→静止阻塞
静止就绪→活动就绪
静止阻塞→活动阻塞
进程控制块PCB
使一个在多道程序环境下不能独立运行的程序(含数据)成为一个 能独立运行的基本单位,一个能与其他程序并发执行的进程
PCB已经成为进程存在于系统的唯一标志
创建进程
申请空白PCB
为新进程分派资源
初始化PCB
将新进程插入就绪队列
原语
概念
由若干条指令组成的原子操作
一个操作中的所有动作要么全做,要么全不做
在执行过程中不允许被中断
六大原语对进程管理
创建
终止
阻塞
唤醒
挂起
激活
临界资源
一次仅允许一个进程使用的资源
临界区
最多只允许一个进程访问的程序段(并发进程中 对临界资源操作的程序段)
进程的同步
在多道程序环境下,进程是并发执行的,不同进程之间 存在着不同的相互制约关系
进程的互斥
两个或两个以上的进程,不能同时进入关于同一组共享变量 的临界区域,否则可能发生与时间有关的错误
一个进程正在访问临界资源,另一个要访问该资源的进程必须等待
信号量
S>0表示有S个资源可用
S=0表示无资源可用
S<0则|S|表示等待队列中的进程个数
pv操作
P
wait()
V
signal()
记录型信号
高级通信手段
消息链通信(直接通信)
信箱机制(间接通信)
管道机制(直接通信)
线程
定义
一条线程指的是进程中一个单一顺序的控制流, 一个进程中可以并发多个线程,每条线程并行执行不同的任务
与进程的区别与联系
调度
在同一进程中,线程的切换不会引起进程的切换, 但从一个进程中的线程切换到另一个进程中的线程时, 必然就会引起进程的切换
并发性
进程间可以并发执行
一个进程中的多个线程之间亦可并发执行
拥有资源
进程可以拥有资源
线程除了拥有自己的少量资源以外,还允许多个线程共享该进程所拥有的资源
独立性
线程的独立性比进程的独立性低
系统开销
处理机调度与死锁
三级调度
作业调度(高级调度)
中级调度(对换)
进程调度(低级调度)
抢占式
允许将逻辑上可继续运行的在运行过程暂停的调度方式 可防止单一进程长时间独占CPU 系统开销大
要求不太严格的实时控制系统
非抢占式
让进程运行直到结束或阻塞的调度方式 容易实现 适合专用系统,不适合通用系统
要求严格的实时控制系统
处理机调度算法的目标
共同目标
资源利用率
公平性
平衡性
策略强行执行
批处理的目标
平均周转时间短
系统吞吐量高
处理机利用率高
分时系统的目标
响应时间快
均衡性
处理机调度算法
先来先服务算法
非抢占式调度
公式
周转时间=完成时间-到达时间
平均周转时间=周转时间/进程个数
平均带权周转时间=(周转时间/服务时间)/进程个数
短作业优先算法
作业越短,优先级越高
时间片轮转法
抢占式调度
Q=T/N
Q时间片大小
T响应时间
N就绪队列中的进程个数
优先级法
静态优先级
进程创建时确定,进程运行期间保持不变
资源要求少,优先级高
动态优先级
创建进程之初先赋予一个值,随进程推进或等待时间增加而改变
高响应比优先算法
优先权=(等待时间+要求服务时间)/要求服务时间
多级反馈队列算法
评价调度算法的指标
吞吐量
周转时间
平均周转时间
带权周转时间
平均带权周转时间
死锁
概念
死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象, 若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待 的进程称为死锁进程。
产生原因
资源竞争
资源分配不合理
必要条件
互斥条件
请求和保持条件
不可抢占条件(非剥夺)
循环等待条件
预防方法
破坏请求和保持
静态分配方式
破坏循环等待
顺序分配方式
避免方法
银行家算法
检查安全性 安全才分配 否则不分配
死锁的检测
资源分配图
环路是必要条件 有环路不一定有死锁 有死锁一定有环路
死锁定理
死锁的解除
抢占资源
终止或撤销进程
设备管理
设备的管理(选择题)
设备的分类
使用特性
传输速率
数据传输单位
共享属性
所属关系
四种I/O控制方式(问答)
循环测试I/O方式
优点
控制简单
缺点
CPU和外设只能串行工作
CPU在同一时间内只能和一台外设交换数据
只适合于外设速度较慢的设备
中断处理方式
优点
可以实现CPU与设备间的并行操作
可以实现设备与设备间的并行操作
CPU利用率高
缺点
中断次数多
耗费CPU的时间
不适合高速I/O设备
DMA方式
优点
快速,大块传输数据
缺点
DMA只能完成简单的数据传送、计数、内存地址 加一或减一,不能完成更复杂的操作请求
与CPU无法并行,这样对大、中型 计算机系统不合适
通道方式
优点
一个通道可以控制多台外设,且与CPU并行工作时间最长
缺点
价格较高,不宜过多使用
概念
缓冲技术
缓冲技术是为了协调吞吐速度相差很大的设备之间数据传送而采用的技术
spoling技术
通过SPOOling技术便可将一台物理I/O设备虚拟为多台逻辑I/O设备,同样允许多个用户共享一台物理I/O设备
通道
通道是一种通过执行通道程序管理I/O操作的控制器,它使主机(CPU和内存) 与I/O操作之间达到更高的并行程度。
设备独立性(与设备的无关性(问答题))
与设备的无关性指的是用户程序与具体的物理设备无关, 用户使用逻辑设备号申请对设备的使用,由操作系统建 立逻辑设备到物理设备的映射。这样做的好处是:用户 使用设备时无需关注设备的物理细节,物理设备的更换、 故障不会影响到用户程序
设备分配
设备分配表格
DCT设备控制表
COCT控制器控制表
CHCT通道控制表
SDT系统设备表
算法
先请求先分配
优先级高者分配
磁盘寻道算法
先来先服务
最短寻道时间优先SSTF
SCAN算法
CSCAN算法
存储器管理
程序装入方式
绝对装入方式
可重定位装入方式
动态运行时的装入方式
概念理解
逻辑地址
是指由程序产生的与段相关的偏移地址部分,又称绝对地址
物理地址
物理地址是内存中各存储单元的编号,即存储单元的真实地址, 它是可识别可寻址并实际存在的
地址映射(地址重定位)
为了保证CPU执行程序指令时能正确访问存储单元, 需要将用户程序中的逻辑地址转运行时可由机器直 接寻址的物理地址,这一过程称为地址映射或地址 重定位
静态重定位
动态重定位
逻辑地址空间
物理地址空间
基本存储分配方式
连续
单一连续
单道环境
内存、处理器、外设利用率低
固定分区
划分分区的方法
各分区大小固定
总分区的大小固定
每个分区的大小可以不同但是预先固定
内碎片
可变(动态)分区
划分分区的大小
各分区的大小可变
各分区的个数可变
动态分区分配算法
首次适应算法
循环首次适应算法
最佳适应算法
产生外碎片
内存利用率最高
最坏适应算法
不易产生外碎片
固定分区和动态分区(易考判断)
覆盖技术
覆盖只能发生在那些相互之间没有调用关系的程序模块之间, 因此程序员必须给出程序内的各个模块之间的逻辑覆盖结构
程序员
对换技术
原因
多道程序环境中,有等待的进程
某进程所需的内存空间不足
改善内存利用率
交换技术是以内存中的程序大小为单位进行的, 它不需要程序给出各个模块的逻辑覆盖结构
操作系统
可重定位分区
紧凑技术
把原来多个分散的小分区拼接成一个大分区
离散
分页
页内碎片
没有外碎片
内存利用率高
机器成本高
分页机制在段机制之后进行的,它进一步 将线性地址转换为物理地址
分段
会产生碎片
不同类型的段不同保护
共享
分段机制就是把虚拟地址空间中的虚拟内存 组织成一些长度可变的称为段的内存块单元
分页与分段的区别和联系
分页机制会使用大小固定的内存块, 而分段管理则使用了大小可变的块来管理内存
分页使用固定大小的块更为适合管理物理内存, 分段机制使用大小可变的块更适合处理复杂系统的逻辑分区
段表存储在线性地址空间,而页表则保存在物理地址空间
段页式
将进程按逻辑模块分段,再将各段分页,再将内存空间 分为大小相同的内存块,进程运行前将各页面分别装入 各内存块中
请求分页
请求分页系统建立在基本分页系统基础之上,为了支持 虚拟存储器功能而增加了请求调页功能和页面置换功能
请求分段
在请求分段存储管理系统中,作业运行之前,只要求将当前需要的 若干个分段装入内存,便可启动作业运行。在作业运行过程中,如 果要访问的分段不在内存中,则通过调段功能将其调入,同时还可 以通过置换功能将暂时不用的分段换出到外存,以便腾出内存空间
虚拟存储技术
所谓虚拟存储,就是把内存与外存有机的结合起来使用,从而得到一个容量很大的“内存”,这就称之为虚拟存储
页面置换算法
FIFO
先进先出
OPT
最佳页面置换算法
LRT
最久未使用置换算法