【OS】期末总结复习
文章目录
操作系统复习
1. 知识点概念梳理:
-
在单处理机系统中,多道程序运行的特点:多道程序运行,宏观上并行,微观上串行。
-
信号量大小表示可用资源数,如果为负数表示当前等待的进程数;
-
OS为用户提供两个接口界面:命令接口,程序接口。
-
多道程序设计出现是由于硬件上有:中断,管道的支持。
-
提高内存使用效率,解决小内存运行大作用的问题:覆盖技术,交换技术,虚拟存储技术。
-
文件的物理结构:
- 连续文件 2.串联文件,3.索引文件。
-
Spooling技术:
主要思想是在联机的条件下,进行两个方向的操作,在数据输入时,将数据从输入设备传送到磁盘或磁带(块设备),然后把这些块设备与主机相连;反过来,在数据输出时,将输出数据传送到磁盘或磁带上,再从磁盘或磁带传送到输出设备。
输出井,输入井;最常见的是共享打印机; 一项是由输出进程SPO在输出井中为之申请一个空闲的存储空间,并将要打印的数据传送其中存放;另一项工作就是由输出进程SPO再为用户进程申请一张空白的用户请求打印表,并将用户的打印请求填入其中,然后将该表挂到打印机的请求队列上。这时,如果还有另一个进程请求打印机时,则系统仍同意为该进程执行打印输出,当然,系统所做的工作仍是以上两项内容。 -
CPU执行操作系统代码时,处理机处于:
管态;管态又叫特权态,系统态或核心态,是操作系统管理的程序执行时,机器所处的状态。大多数计算机系统都将CPU执行状态分为目态与管态;根据PSW程序状态字来控制,0表示系统态,1表示目态:用户态;
-
分时系统的特性:
多路性,交互性,独占性;
-
死锁出现:
若干进程因竞争资源而无限等待其他进程释放已占有的资源;
-
仅一条指令只能在管态下运行,这条指令:
屏蔽中断指令;
-
虚存=min(内存+辅存,逻辑地址)
-
判断作业是否对主存空间的要求:
- 最先适应算法 2. 最佳适应算法 3. 最坏适应算法 4. 循环最先适应算法
-
系统“抖动”现象:
在请求分页存储管理中,从主存(DRAM)中刚刚换出(Swap Out)某一页面后(换出到Disk),根据请求马上又换入(Swap In)该页,这种反复换出换入的现象,称为系统颠簸,也叫系统抖动。
危害:系统时间消耗在低速的I/O上,大大降低系统效率。进程对当前换出页的每一次访问,与对RAM中页的访问相比,要慢几个数量级。
原因:调度算法不科学,交换算法不科学
解决:好的页替换算法减少运行的进程数 -
请求分页管理,页面增大一倍,缺页中断次数不一定减小一半:
不一定是一半,这还得取决于操作系统内核的相关结构以及实际运行情况。因为系统中,缺页中断次数和页面大小有些关系,但并不只取决于页面大小,还跟系统总内存总量等很多因素有关,当系统内存不足时,会发生页面交换,此时也会产生很多次缺页中断,但与页面大小就没有太大关系了
’ -
请求分页存储管理:
不同于基本分页存储管理
(1) 查到页表项时需要进行判断,判断页面是否在内存中。
(2) 当需要调入页面时,但有没有空闲内存时,需要进行页面置换。
(3) 当页面需要调入或调出,需要修改请求页表中新增的表项。(1) 根据逻辑地址得到页号和页内偏移量。
(2) 对页号进行越界判断。
(3) 访问页表判断页是否在内存中,如果在继续执行程序。
(4) 如果访问的页不在内存中,产生缺页中断请求,当前进程阻塞,缺页中断程序从根据页表从外存找到缺失的页。
(5) 判断内存空间是否已满,未满,将缺页调入内存,修改页表。如果已满,从内存中选择一个页面置换,如果页面发生修改,需要将修改写回外存,然后再将缺页调入内存,并修改页表。
(6) 页面调入后,阻塞的进程会处于就绪态等待处理机调度。
期末总复习
第一章 操作系统引论
-
操作系统的概念:
提供用户与硬件系统之间 的软件接口,使用户能通过操作系统方便的使用计算机。
- 控制和管理计算机系统软,硬件资源,使之得到有效的利用。
- 合理组织计算机系统的工作流程,增强系统的处理能力。
-
操作系统的功能
- 进程管理
- 存储管理
- 设备管理 : 为进程分配外设,启动外设进行数据传输,弥补CPU和外设之间的并行能力,采用中断,通道,缓冲,虚拟设备技术;为用户提供功能强大,界面友好的设备使用手段。
- 用户管理
- 文件管理
-
操作系统的分类:
批处理,分时系统,实时系统。网络操作系统,分布式操作系统,并行操作系统
-
操作系统的特征: 并发,共享,不确定,虚拟性。
-
作业调度:先来先服务,最短作业调度,时间片轮转,优先级,高响应比
-
程序顺序执行时的特征: 顺序性,封闭性,可再现性;
-
程序并发执行的特征:间断性,失去封闭性,不可再现性
-
进程:程序及其数据在计算机上的一次运行,是系统进行调度和资源分配的基本单位;
-
为什么引入进程
为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。引入进程的目的在于清晰地刻画动态系统的内在规律,有效管理和调度进入计算机系统主存储器运行的程序
-
进程的特征:动态性,并发性,独立性,异步性,交互性,结构性;
-
什么是单道系统
内存总是只保留一道作业,只有该作业完成之后才能进行下一个作业;
-
什么是多道系统
在内存存放多道作业,在管理出现的控制下交替执行;这些作业共享CPU和其他系统资源;
-
区别
多道程序的系统资源利用率提高,吞吐量也增加了;
-
实时系统:计算机能够及时响应外部事件的请求;有三种典型的应用:过程控制系统,信息查询系统,事物处理系统;
基本特点:交互性,实时性。可靠性;
-
分时系统:
一台主机连接多个终端,用户交互式向系统进行命令请求,系统接受请求,采用时间片轮转方式处理服务;
基本特征:同时性,交互性,独立性,及时性; -
区别:
第二章 进程和线程
-
进程:一个具有独立功能的出现关于某个数据集合的一次运行活动;进程就是并发环境中的执行过程;
- 动态性
- 并发性
- 非对应性
-
进程的基本特征:
- 动态性
- 并发性
- 调度性
- 异步性
- 结构性
-
进程的基本状态
- 运行状态
- 就绪状态
- 阻塞状态
-
状态转换表
-
进程控制块(PCB)
进程描述表,是进程组成最关键的部分,含有进程的描述信息和控制信息,是进程动态特性的集中反映,是系统对进程施行识别和控制的依据
-
组成
- 进程名
- 特征信息
- 进程状态信息
- 调度优先级
- 通信信息
- 现场保护区
- 资源需求,分配和控制方面的学习
- 进程实体信息
- 族系关系 10.其他信息
-
进程的创建
- 申请一个空闲的PCB
- 为新进程分配资源
- 将新进程的PCB初始化,若是处于正常的运行状态,则立即
- 将新进程加到就绪队列中
-
进程的终止
终止原因:正常终止,异常终止,外部干扰
- 从系统的PCB表中找到指定进程的PCB ,若处于正常运行,则终止该进程的执行
- 回收该进程所占有的的全部资源
- 若该进程有子进程,还要终止其所有子孙进程,回收他们所占有的全部资源
- 将被终止的PCB从原来的对列中摘走,以后有父进程从中获取数据,并释放他
-
什么是线程:线程是进程中实施调度和分派的基本单位
-
线程的状态
- 运行状态
2. 阻塞状态
3. 就绪状态
4. 终止状态
- 运行状态
-
线程和进程的基本关系
- 一个进程可以有多个线程,但至少要有一个线程,一个线程只能在一个进程的地址空间内活动
2. 资源分配个进程,同一个进程的所有线程共享该进程的所有资源;
3. 处理机分配给线程,真正在处理机上运行的是线程
4. 线程在执行过程中需要协作同步,不同进程的线程间要利用消息通信的办法实现同步;
- 一个进程可以有多个线程,但至少要有一个线程,一个线程只能在一个进程的地址空间内活动
-
引入现成的好处
- 易于调度
·2. 提高并发性
3.开销少,创建线程比创建进程要快,所以开销少
4.利于充分发挥多处理器的功能
- 易于调度
-
进程间的相互关系
互斥:各个进程彼此不知道对方的存在,逻辑上没有关系,由于竞争同一资源而发生相互制约;
同步:各个进程不知道对方的名字,单通过某些对象(IO缓冲区)的共同存取来协同完成某一项任务
通信:进程间可以通过名字彼此间进行通信,交换信息,合作完成一项任务; -
进入临界区的调度原则:
1单个进入
- 独自占用
- 尽快退出
- 落败让权
进程的状态
- 进程是程序的一次执行。在这个执行过程中,有时进程正在被CPU处理,有时又需要等待CPU服务,可见,进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态;进程的状态—三种基本状态
运行态:占有CPU,在CPU上运行;
就绪态: 已经具备运行条件,由于没有空闲的CPU,暂时不能运行;
阻塞态:因等待某一事件而暂时不能运行;例如等待系统分配打印机,等待磁盘操作等等;
注意:单核处理机环境,每个时刻最多只有一个进程处于运行态,(多核另外说)。
另外两种状态:
- 创建态:进程正在被创建,操作系统为进程分配资源,初始化PCB
- 终止态:进程正在被系统撤销,操作系统回收进程拥有的资源,撤销PCB;
-
PV操作
-
原语:扩充的机器语言,不允许中断;
-
P操作
-
V操作
-
-
生成者和消费者
-
读者和写者
-
管程
-
高级进程通信
-
作业调度和进程调度
-
调度的时间
-
调度算法
- FCFS
- SJF
- 优先级
- RR时间片轮转
- SRTF
- 高响应比优先
- 中断
- 中断的处理过程
第三章 死锁
- 死锁
- 条件
- 策略
- 银行家算法
- 饥饿
第四章 调度
第五章 存储管理
-
重定位:逻辑地址转变为内存物理地址
逻辑地址空间:由逻辑地址组成的地址范围
物理空间:内存中一系列存储单元所限定的地址范围; -
静态重地位:有目标程序装入内存时,有装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址改成物理地址;
-
动态重定位:程序执行期间,每次访问内存之前进行重定位;
静态重定位 | 动态重定位 |
---|---|
地址变换在装入时一次完成 | 将程序原本装入内存调度时候才进行地址转换 |
优点:无需增加硬件地址转换机构 便于实现静态连接, | 优点:程序占用内存空间动态可变,不必连续存放,比较容易实现几个进程对同一个程序的共享使用 |
缺点:程序的存储空间只能是连续的一片地址空间,重定位之后就不能再继续移动,不利于内存空间的有效利用 | 缺点:附加硬件支持,增加机器成本,存储管理的软件比较复杂; |
- 对换技术:除操作系统占用的内存,其余的全部内存只供一个进程用户使用,其余进程都存放于外存上,每次只调入一个进程,时间片用完调出到外存上
- 内存管理技术
分区 | 分页 | 分段 |
---|---|---|
内存空间进行分区 | 程序大小进行分页,内存大小相等分块 | |
页面大小是有硬件决定 |
- 分段分页的区别:
分页 | 分段 | |
---|---|---|
目的 | 分页是为了实现离散分配,削减内存的外外部碎片,提高内存的利用率,出于系统管理需要,非用户需要 | 更好满足用户需要 |
长度 | 大小有系统决定,系统把逻辑地址划分成页号和页内地址 | |
地址空间 | 一维 | 二维,标识地址时需要给出段名和段内地址 |
碎片 | 有内部碎片,无外部碎片 | 有外部碎片无内部碎片 |
绝对地址 | 页号和偏移量 | 段号和偏移量 |
管理方式 | 对于分页,操作系统必须为每个进程维护一个页表,以说明每个页对应的的页框。当进程运行时,它的所有页都必须在内存中,除非使用覆盖技术或虚拟技术,另外操作系统需要维护一个空闲页框列表。 | 对于分段,操作系统必须为每个进程维护一个段表,以说明每个段的加载地址和长度。当进程运行时,它的所有短都必须在内存中,除非使用覆盖技术或虚拟技术,另外操作系统需要维护一个内存中的空闲的空洞列表。 |
共享和动态链接 | 不容易实现 | 容易实现 |
页是物理信息的物理单位 | 段是信息的逻辑单位 |
-
页表:实现从页号到物理块号的地址映射;
-
快表:高速小容量的联想寄存器;
由键号和值两部分(项:64~1024)
键号:当前正在使用的某个页号
值:页号对应的物理号
不在快表内就要访问页表,访问页表需要两次访问内存,先访问一次页表再访问物理块号; -
分页产生碎片
紧缩方案
方案1 | 方案2 |
---|---|
释放进程时候,如果不与空闲区相连,立即进行紧缩,空闲区保持连续 | 分配进程空间时候,各个空闲区都不能满足才进行紧缩,也就是说回收空间的时候和有足够大的空闲区的时候不进行紧缩 |
管理容易,紧缩画时间 | 紧缩的次数减少,管理比较复杂 |
-
虚拟存储器:用户能作为可编址内存对待的虚拟存储空间,使得用户啰存储器与物理存储器分离,是操作系统给用户提供的一个比真实的空间还要打的地址空间,
特征:
虚拟扩充,部分装入,离散分配,多次对换 -
请求分页技术
-
置换过程
- 找出所需页面在磁盘的位置
- 找出一个内存空闲块,有则用,没有需置换;把给该置换的也写到磁盘上,修改相应的表项
- 把所需的页面读入内存
- 重新启动该进程
第五章 文件系统
-
文件系统的功能:
- 文件管理
- 目录管理
- 文件存储空间管理
- 文件共享和保护
- 提供方便的接口实现“按名存取”
-
文件的逻辑形式
- 无结构文件:文件内部不在划分记录,由一组相关信息组成的有序字节流,流式文件;
- 有结构文件:记录式文件;
- 树形文件:也是有结构文件
-
文件的存储分配
连续分配 | 链接分配 | 索引分配 | 多重索引 |
---|---|---|---|
一组连续盘块分给一个文件 | 逻辑上连续的分配在离散的物理块 | 非连续分配,为每个文件建立一个索引表 | |
优点:顺序存储使速度快,可以存取多个盘符,改进IO性能常用于存放系统文件 | 优点:不会产生碎片,可以动态扩充,不用紧缩内存 | 优点:多了随机存取 | |
缺点:建立文件时就要确定长度,不便文件的动态扩充,出现外部碎片 | 缺点:只适合顺序访问,不适合随机存取,增加链接字信息管理添加麻烦,指针丢失会产生不可靠 | 缺点:开销增加,降低存储文件的速度 |
-
目录的存储
-
FCB :
-
文件存储空间管理的方法
- 空闲空间表法
- 空闲块链接法
- 位示图法:
- 空闲块成组链接法:
第七章 IO输入输出管理
-
设备分类:
- 存储设备:块设备
- 输入输出设备:字符设备
-
设备标识:设备类型号为主设备号;同类设备的相对序号为次设备号;
-
通道:使得CPU摆脱繁忙的IO事务,减少中断次数,设置专门处理IO操作的机构
-
总线:组成计算机各部件间进行信息传送的一组公共通路;
-
IO系统的控制方式:
- 程序控制直接传递
- 程序查询方式
- 中断控制方式
- 直接存储器访问方式
-
DMA特点:
- 数据是在内存与设备之间直接传送,传送过程不需CPU
- 仅在一个数据块传送结束后,DMA控制器才向CPU发中断请求
- 数据的传输控制完全由DMA控制
- 数据传输过程中,CPU与外设并行工作,提高系统效率
-
缓冲:缓冲区又称为缓存,它是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区;
-
解决的问题:解决到达速率和离去速率不同
-
引入缓冲技术的主要目的:
- 缓解CPU和IO设备之间速度不匹配的矛盾
- 提高并行性
- 减少CPU中断次数,放宽CPU对中断响应时间的要求
-
SPOOling 技术
四个部分:存输入,取输入,存输出,取输出
-
IO 软件的组成层次
- 中断处理程序
- 设备驱动程序
- 与设备无关的操作系统IO软件
- 用户级IO软件
进程状态的转换
运行态到阻塞态是一个主动过程
阻塞态到就绪态是一个被动过程
王道考研图
注意:不能由阻塞态直接转换为运行态,也不能由就绪态直接转换为阻塞态(因为进入阻塞态是进程主动请求的,必然需要进程在运行时才能发出这种请求)
进程和程序的区别:
1、进程是动态的,而程序是静态的;
2、进程有一定的生命期,而程序是指令的集合,程序本身没有生命期。
联系:进程是计算机中的程序关于某数据集合上的一次运行活动
临界资源:操作系统中一次只允许一个进程使用的资源
临界区:进程互斥执行的程序段
临界区的调用原则:用空让进,忙则等待,有限等待,让权等待
题目
置换算法
FIFO 算法
LRU 算法
最近最久未使用算法
本文来自博客园,作者:jucw,转载请注明原文链接:https://www.cnblogs.com/Jucw/p/16216580.html