目录
选择填空:
会涉及到大题:
第一章 操作系统引论
操作系统介绍
定义
地位
基本特征
主要功能
发展
不得不知的概念
两种指令
两种程序
处理机状态
原语
中断和异常
系统调用
体系结构
第二章 进程调度
进程管理
引入进程的目的
定义
组成
进程的状态
线程
处理器调度
概念
分类
调度方式
调度准则
算法
进程同步
引入原因
制约关系
临界资源
临界区
临界区互斥
死锁
产生的原因
定义
解决方法
第三章 内存管理
引入目的
主要功能
内存空间的分配与回收
存储的保护和共享:
地址转换:
内存扩充:
用户程序的主要处理阶段
相关概念
管理方式
连续分配管理方式
1.单一连续分配
2.固定分区分配
3.动态分区分配
可变分区存储管理:
动态分区的分配策略算法:
非连续分配管理方式
内存扩充
1覆盖(同一程序或进程中)
2交换(不同进程/作业之间进行)
虚拟内存
引入原因
组成部分
页面淘汰(置换)算法:
先进先出页面淘汰(置换)算法(FIFO)
最近最久未用页面淘汰(置换)算法(LRU)
最近最少用页面淘汰(置换)算法(clock)
最优(最佳)页面淘汰(置换)算法(OPT)
第四章 文件系统
文件、文件系统
概念
功能
文件的逻辑结构
无结构文件(即流式文件)
有结构文件(记录式文件)
目录和目录结构
文件控制块
目录结构
文件实现
文件分配方式
文件存储空间管理
磁盘管理
磁盘地址结构
磁盘调度算法
第五章 设备管理
设备管理的目标
I/O设备
分类
I/O控制方式
①程序直接控制方式
②中断方式:
③DMA方式:
④IO通道控制方式:
引入缓冲的目的和缓冲区的设置方式
1. 引入缓冲区的目的
2. 缓冲区的设置方式
常用设备分配技术
1. 根据设备的使用性质
2. 针对三种设备采用三种分配技术
第一章:操作系统引论
第五章:输入输出管理
第二章:进程调度算法大题
第三章:内存管理
第四章:文件管理
操作系统是一组用于控制和管理计算机系统硬件和软件资源、合理地对各类作业进行调度,以及方便用户使用的程序集合。
操作系统是裸机之上的第一层软件,是建立其他所有软件的基础。它是整个系统的控制管理中心,既管硬件,又管软件,它为其它软件提供运行环境。jie
手工操作阶段(此阶段无操作系统)
缺点:人机速度矛盾
批处理阶段(操作系统开始出现)
1.单道批处理阶段
优点:缓解人机速度矛盾
缺点:系统资源利用率依然低
2.多道批处理阶段(操作系统正式诞生)
优点:多道程序并发进行,资源利用率高
缺点:不提供人机交互能力(缺少交互性)
分时操作系统(不可以插队,有了人机交互)
优点:提供人机交互
缺点:不能优先处理紧急事物
实时操作系统(可以插队)
硬实时系统:必须在被控制对象规定时间内完成(火箭发射)
软实时系统:可以松一些(订票)
优点:可以优先处理紧急事物
从可靠性看实时操作系统更强,从交互性看分时操作系统更强
特权指令:不允许用户程序使用(只允许操作系统使用)如IO指令、置中断指令
非特权指令:普通的运算指令
内核程序:系统的管理者,可执行一切指令、运行在核心态
应用程序:普通用户程序只能执行非特权指令,运行在用户态
用户态(目态):CPU只能执行非特权指令
核心态(管态、内核态):可以执行所有指令
用户态到核心态:通过中断(是硬件完成的)
核心态到用户态:特权指令psw的标志位:0用户态 1核心态
常考谁在用户态执行,谁在核心态执行
1.处于操作系统的最底层,是最接近硬件的部分
2.这些程序的运行具有原子性,其操作只能一气呵成
3.这些程序的运行时间都较短,而且调用频繁
内中断(异常,信号来自内部)
外中断(中断,信号来自外部)
系统给程序员(应用程序)提供的唯一接口,可获得OS的服务,在用户态发生,在核心态处理
大内核
微内核
为了更好地描述和控制程序并发执行,实现操作系统的并发性和共享性
是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位
PCB:保存进程运行期间相关数据,是进程存在的唯一标志
程序段:能被进程调度到的CPU代码
数据段
状态种类
状态变化
就绪态->运行态:处于就绪态的进程被调度后,获得处理机资源(分派处理机时间片)
运行态->就绪态:时间片用完或在可剥夺系统中有更高级的进程进入
运行态->阻塞态:进程需要的某一资源还没有准备好
阻塞态->就绪态:进程等待的时间到来时
进程状态转化图:
引入目的:为了更好的使用多道程序并发执行,提高资源利用率和系统吞吐量
特点:是程序执行的最小单位,基本不拥有任何系统资源
是对处理机进行分配,即从就绪队列中按照定的算法(公平、高效)选择一个进程并将处理机分配给他运行,以实现进程并发进行
协调进程之间的相互制约关系
同步:亦称直接制约关系,是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调他们的工作次序而等待、传递信息所产生的制约关系
互斥:也称间接制约关系,当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后,另一个进程才运行去访问此临界资源
一次仅允许一个进程使用的资源
在每个进程中访问临界资源的那段程序
原则
基本方法
非剥夺资源的竞争和进程的不恰当推进顺序
多个进程因竞争资源而造成的一种僵局,如果没有外力,这些进程将无法推进
预防死锁
避免死锁
检测死锁:利用死锁定理
解除死锁
更好的支持多道程序的并发执行,提高系统性能
保证各道作业在各自的存储空间内运行,互不干扰。
在多道程序环境下,程序中的逻辑地址与内存中的物理地址不可能一致,因此存储管理必须提供地址变换功能,把逻辑地址转换成相应的
利用虚拟存储技术或自动覆盖技术,从逻辑上扩充内存。
1). 编辑阶段
创建源文件
2). 编译阶段
由编译程序将用户源代码编译成若干目标模块,生成目标文件
3). 链接阶段
由链接程序将编译后形成的一组目标模块及所需的库函数链接在一起, 形成一个完整的装入模块。生成可执行文件
4). 装入阶段
由装入程序将装入模块装入内存运行。
5). 运行阶段
得到结果
程序的装入
程序的链接
地址空间
分配到内存固定的区域
分配到内存不同的固定区域,分区可以相等可以不等
按照程序的需要进行动态的划分
首次适应
空闲分区以地址递增的次序链接。分配内存时顺序查找,找到大小能满足要求的第一个空闲分区。
最佳适应
空闲分区按容量递增的方式形成分区链,找到第一个能满足要求的空闲分区。
最坏适应
空闲分区以容量递减的次序链接。找到第一个能满足要求的空闲分区,即挑选出最大的分区。
邻近适应
由首次适应算法演变而成。不同之处是,分配内存时从上次查找结束的位置开始继续查找。
基本分页式存储管理
基本分段式存储管理
段页式
在逻辑上扩充内存
注意:页面淘汰是由缺页中断引起的,但缺页中断不见得一定引起页面淘
淘汰最先进入内存的页面(3个内存块都为空,3次缺页中断)
注:对于FIFO页面淘汰算法,有时增加分配给作业的可用内存块数,它的缺页次数反而上升,通常称为异常现象
总是把最长时间未被访问过的页面淘汰出去(需要寄存器和栈)
总是把当前使用的最少的页面淘汰出去
把以后不再使用的或最长时间内不会用到的页面淘汰出去(理论上,不会实现)
文件是以计算机硬盘为载体的存储在计算机上的信息集合
文件系统:就是操作系统中负责操纵和管理文件的一整套设施,它实现文件的共享和保护,方便用户“按名存取”。
文件管理、目录管理、文件空间管理、文件共享和保护、提供方便的接口。
在文件系统内部给每个文件惟一地设置一个文件控制块,它用于描述和控制文件的数据结构,与文件一一对应
1)空闲表法
2)空闲链表法
3)位示图法
柱面号、盘面号、扇面号
先到先服务算法(FCFS)
最短查找时间优先算法(SSTF)
扫描算法和LOOK算法
循环扫描算法和循环LOOK算法
使用方便、与设备无关、效率高、管理统一。
这种方式也可以称为查询方式,cpu不断地去查询设备控制器是否将数据放到了数据存储器中,或者从数据存储器存到设备中,当完成IO时cpu才能去干别的事。
这种方式当cpu发出指令后就可以去干别的事,当设备控制器把数据存在数据存储器后,向cpu发出中断请求,然后cpu再来处理这部分数据。
虽然中断方式提高了cpu的利用率,但是数据寄存器有限,中断是以字节单位进行中断,也就是说读取或存储一个字节后就需要进行中断,那么其实cpu的利用率还是很低的,所以就诞生了DMA方式,这种方式由DMA控制器直接将设备中的数据以数据块为单位直接传输到内存中,当传输结束后才向cpu发起中断。
DMA虽然大大地提升了cpu的利用率,但是DMA只能传输一个连续的数据块。所以引入了IO通道的控制方式,IO通道控制方式可以传输不连续的数据块,减少了cpu干预。cpu通过对IO通道发出指令,然后让IO通道自己工作,等数据传输完才向cpu发起中断。
1) 缓和CPU与外设间速度不匹配的矛盾
2) 提高CPU与外设之间的并行性
3) 减少对CPU的中断次数
1) 单缓冲:当数据到达率与离去率相差很大时,可采用单缓冲方式。
2) 双缓冲:当信息输入和输出率相同(或相差 不大)时,可利用双缓冲区,实现两者的并行。
3) 多缓冲:对于阵发性的输入、输出,为了解决速度不匹配问题,可以设立多个缓冲区。
1) 独占设备:
不能共享的设备,即:在一段时间内,该设备只允许一个进程独占。如打印机。
2) 共享设备:
可由若干个进程同时共享的设备。如磁盘机。
3) 虚拟设备:
是利用某种技术把独占设备改造成可由多个进程共享的设备。
1) 独占分配技术:
是把独占设备固定地分配给一个进程,直至该进程完成I/O操作并释放它为止。
2) 共享分配技术:
通常适用于高速、大容量的直接存取存储设备。由多个进程共享一台设备,每个进程只用其中的一部分。
3) 虚拟分配技术:
利用共享设备去模拟独占设备,从而使独占设备成为可共享的、快速I/O的设备。实现虚拟分配的最有名的技术是SPOOLing技术,也称作假脱机操作。