IMAU 操作系统期末复习 重点知识总结

1.3 操作系统的基本特性(P13)

  • 并发   能处理和调度多个程序同时执行,提高系统的资源利用率,增加系统吞吐量
  • 共享   系统中的资源能被多个并发进程所使用,主要有互斥共享、同时访问两种方式

 并发和共享是多用户(多任务)OS的两个最基本特征,也是互为存在的条件。没并发就不存在共享,有并发就必须有共享管理。

  • 虚拟   通过时分复用(如虚拟处理机、虚拟设备)和空分复用(虚拟存储器)实现逻辑上的扩张
  • 异步   每个进程的执行过程(何时获得资源、占用多少时间等)不可预知

 1.5.4 微内核结构(P27)

特点:能有效支持多处理机运行,因此适合分布式系统。

基本概念:

  • 足够小的内核   只包含OS的最基本功能:与硬件紧密相关的部分、基本功能、客户和服务器之间的通信
  • 基于客户/服务器模式   OS绝大部分功能都放在内核外的服务器(其实就是进程)中实现,客户与服务器之间借助内核提供的消息传递机制实现通信
  • 应用“机制与策略分离”原理   机制(实现某一功能的具体执行机构)放在内核
  • 采用面向对象技术

基本功能:

  • 进程(线程)管理     进程队列,进程通信,进程切换,多处理机同步等功能
  • 低级存储器管理   地址变换机构
  • 中断和陷入处理

优点:

  • 提高了系统的可扩展性   只需在在相应的服务器上增加新功能或新增服务器
  • 增强了系统的可靠性   服务器都运行在用户态,出错也不会影响内核
  • 可移植性强   改动比较小,一般改内核就可以
  • 提供了对分布式系统的支持   客户与服务器、服务器与服务器的通信采用消息传递机制实现,适合分布式网络
  • 融入了面向对象技术   封装、继承的优势

缺点或存在的问题:

  • 相对早期OS,运行效率有所降低   早期OS一般进行两次上下文切换,微内核OS至少四次

2.1.1 前驱图(P32)

作用:描述程序的顺序和并发执行情况

特点:有向无循环图

2.2 进程(P35) 

定义:(1)进程是进程实体在计算机中的运行过程;(2)是系统进行资源分配和调度的基本单位

进程实体:即进程的映像,由PCB+程序+数据构成,其中PCB描述了进程进而控制进行,进程的创建与撤销本质上是对PCB进行操作

进程的特征:

  • 动态性   是进程实体的执行过程
  • 并发性
  • 独立性   独立运行、接受资源和调度
  • 异步性   进程按照异步方式运行,但引入同步机制来保证并发执行结果可再现

进程的状态:

  • 就绪态   进程已获得到除CPU之外的资源分配
  • 执行态   在单处理机系统中,只能有一个进程处于执行态
  • 阻塞态   处于执行态的进程因为发生某事件(I/O请求等)而暂停执行

三状态模型:

 IMAU 操作系统期末复习 重点知识总结_第1张图片

创建状态和终止状态的引入:

  • 创建状态   进程处于创建过程中;为保证进程的调度工作一定在创建之后,或增强OS管理的灵活性
  • 终止状态   进入终止状态的进程不能再执行,但系统中会保留一个记录,供其他进程收集数据,收集完成后,清除PCB并返还给系统

挂起操作的引入:

  • 引入原因:用户需要、父进程请求、负荷调节需要、OS需要
  • 引入后的状态:在三状态模型基础上,原先的就绪和阻塞变为动态就绪、动态阻塞;挂起后成为静态就绪、阻塞;与挂起相对应的操作是激活;

进程控制块PCB的作用:

  • 独立运行基本单位的标志   是一个不能独立运行的程序成为一个能独立运行的基本单位
  • 能实现间断性运行方式   阻塞后可恢复
  • 提供进程管理所需要的信息   程序的地址指针等
  • 提供进程调度所需要的信息   状态的转换、优先级调度
  • 实现与其他进程的同步与通信

进程控制块PCB的组织方式:

  • 线性方式
  • 链接方式
  • 索引方式 

2.4.1 进程同步(P48)

 目的:对多个相关进程执行的次序进行协调,使并发的各进程能按一定规则合理共享系统资源且合作,进而使程序执行可再现

 两种制约关系:

  • 间接制约   因为共享资源导致的制约
  • 直接制约   因为进程执行的逻辑关系次序导致的制约

临界资源:不能被多个进程同时访问的资源

临界区:每个进程中访问临界资源的一段代码,为此把一个访问临界资源的循环进程描述为【进入区、临界区、退出区、剩余区】

同步机制应遵循的规则:

  • 空闲让进
  • 忙则等待
  • 有限等待   保证进程能在一定时间内进入临界区,防止死等
  • 让权等待   进程不能进入临界区时应释放处理机,以免陷入忙等

2.4.3  信号量机制

整型信号量:通过两个原子操作(执行时不可被中断)实现对整型信号量S(表示资源数目)的控制

wait(s){
    while s<=0; //do no-op,进程忙等,未遵循让权等待
    s:=s-1; //s>=0时
}
signal(s){
    s:=s+1;
}

记录型信号量:除了用于代表资源数目的信号量外,再增加一个进程链表指针,用于链接所有等待的进程

typedef struct{
    int value;  //表示资源数目即资源信号量,当其为1时表示只允许一个进程访问临界资源,value就是互斥信号量
    struct process_control_black *list;
}semaphore;

wait(semaphore *S){
    S->value--;  //进程请求一个资源
    if(S->value<0)  //表示该资源已分配完毕
        block(S->list);  //自我阻塞,让权等待,加入到信号量链表中
}

signal(semaphore *S){
    S->value++;  //释放资源,可用资源数目+1
    if(S->value<=0)  //表示信号量链表中仍有等待该资源的进程被阻塞
        wakeup(S->list);  //将信号量链表中的第一个等待进程唤醒
}

AND型信号量:为了避免进程僵持造成死锁,在分配资源时将进程运行所需的全部资源一次性分配

信号量集:为降低思死锁概率,确保系统安全,当所申请的资源数量低于某一下限时,进行管制

2.5.1 生产者-消费者问题(P60)

3.2 作业与作业调度(P87)

作业:多道批处理系统中,程序从外存调入内存的基本单位

作业控制快JCB:作业在系统中存在的标志,保存了系统对作业进行管理和调度所需的信息,对JCB进行的各项操作就是作业在系统中的运行过程

作业调度:根据JCB中的信息,按照一定的调度算法,从外存的后备队列中选取某些作业调入内存,为其创建必要的进程、分配必要的资源后,将新创建的进程排在就绪队列上等待调度。

调度算法:

  • 先来先服务FCFS:先到达的作业先执行(可用于作业调度,也可用于进程调度)

优点:简单可靠;有利于长作业;有利于CPU繁忙型作业

缺点:效率低;不利于短作业(带权周转时间长);不利于I/O繁忙型作业

  • 短作业优先SJF:服务时间小的作业先执行

优点:简单可靠;平均等待时间、平均周转时间最少

缺点:不利于长作业,存在黏附现象(易造成饥饿导致死锁);未考虑作业的紧迫性;是否真的短作业优先取决于用户提供的估计执行时间 

  • 优先级调度算法PSA:根据外部赋予的优先级决定顺序(可用于作业调度,也可用于进程调度)
  • 高响应比优先调度算法HRRN: 既考虑作业的等待时间,也考虑作业的运行时间;每轮重新计算响应比,根据响应比排序

3.5.3  死锁的定义、必要条件和处理方法(P107)

死锁的定义:一组进程中每个进程都在等待仅有该组的另一个进程才能引发的事件,从而使这组进程处于僵持状态,则称该组进程处于死锁状态。

产生死锁的必要条件:

  • 互斥条件   一段时间内,某资源只能被一个进程所占用
  • 请求和保持条件  进程已保持了至少一个资源,又提出新的资源请求而得不到,但又不释放已获得的资源
  • 不可抢占条件(非剥夺条件)  进程以获得的资源在未使用完之前不能被抢占
  • 循环等待条件   存在一个资源—进程的循环链

处理死锁的方法:

  1. 预防死锁   破坏死锁产生的必要条件其中至少一个
  2. 避免死锁   在资源动态分配的过程中,阻止系统进入不安全状态
  3. 检测死锁和解除死锁   在检测到死锁发生时采取措施

1-3的的死锁防范程度依次减弱,但资源利用率提高,以及进程因资源因素而阻塞的频度下降,即并发程度提高。

3.7 避免死锁(P110)

如何避免:在进程动态的申请过程中,先计算此次分配的安全性,若分配后不会导致系统进入不安全状态则分配资源

系统的安全状态:指系统能按某种进程推进顺序为每个进程分配资源,直至满足每个进程对资源的最大需求,使每个进程都可顺利完成,此时该推进顺序称安全序列。若找不到安全序列,则称系统为不安全状态。安全状态下的系统不会产生死锁。

银行家算法:每次分配时检查所申请的资源数量是否小于need和可用资源,若小于则将假定分配后的情况做一个安全性检查,若结果安全,则分配,进行下一个申请的处理

4.3.4 基于顺序搜索的动态分区分配算法(P130)

首次适应FF:空闲区以地址递增的次序链接,分配时从链首开始顺序查找,直到找到一个大小能够满足的第一个分区,之后按照作业的大小从分区中划出一片区域(修改表),若不能找到则分配失败。

  • 缺点:低地址部分碎片多;查找开销大

循环首次适应NF:与FF类似,但分配时从上次找到的空闲区的下一个空闲区开始顺序查找

  • 优点:减少低地址部分的碎片
  • 缺点:缺乏大的空闲分区

最佳适应BF:空闲区以容量递增的次序链接,分配时从链首开始顺序查找,直到找到一个大小能够满足的第一个分区,之后按照作业的大小从分区中划出一片区域(修改表,修改排序),若不能找到则分配失败。

  • 缺点:存储器中会留下很多难以利用的碎片

最坏适应WF:与BF相反,空闲区以容量递减的次序链接

  • 优点:产生碎片的可能性最小,对中小作业有利;查找效率高,仅需比较第一个(最大)能否满足
  • 缺点:总缺乏大的空闲区

4.5.2 地址变换机构(P140)

基本任务:借助页表,实现从逻辑地址到物理地址的转换

基本的地址变换机构:采用硬件实现,页表存放在内存中

IMAU 操作系统期末复习 重点知识总结_第2张图片

具有快表的地址变换机构: 由于基本的地址变换机构需要访问两次内存(访问页表、写入数据),为增加利用率,增设一个具有并行查询能力的高速缓冲寄存器(快表),存放常用的页表项。

IMAU 操作系统期末复习 重点知识总结_第3张图片

4.6.2 分段系统的基本原理(P146)

分段:作业的地址空间依据逻辑关系被划分成若干段,故逻辑地址由段号和段内地址够成

段表:逻辑空间到内存空间的映射,由段号、段长、基址

地址变换机构:

IMAU 操作系统期末复习 重点知识总结_第4张图片

分页和分段的主要区别:

  • 页是信息的物理单位   系统行为,对用户不可见;而分段是为满足用户需要
  • 页的大小固定且由系统决定
  • 分页的用户程序地址是一维的   而分段时段号和段内偏移需要显式给出

5.1.2 虚拟存储器的定义和特征(P155)

定义:指具有请求调入功能和置换功能,能从逻辑上对内存加以扩充的一种存储器系统。

基本原理:基于局部性原理,在程序装入时,将程序的一部分装入内存,其余部分留在外存,就可以启动程序执行,在执行过程中,根据需要将信息调入或换出。

特征:

  • 多次性   无须在作业运行时一次性地全部装入内存,而允许被分为多次调入内存运行
  • 对换性   无须在作业运行时一直常驻内存,而允许在作业的运行过程中,进行换进和换出
  • 虚拟性   指从逻辑上扩充内存的容量,使用户所看到的内存容量远大于实际的内存容量 

5.2.1 请求分页中的硬件支持(P157)

请求页表机制:为满足页面换进换出的需要,在请求页表中增加四个字段

  • 状态位   用于指示该页是否已调入内存
  • 访问字段   记录本页在一段时间内被访问的次数,或记录本页最近已有多长时间未被访问,供置换时参考
  • 修改位   标识该页在调入内存后是否被修改过
  • 外存地址   用于指出该页在外存上的地址,供调入该页时参考

缺页中断机构:与一般中断相比有两个区别

  • 在指令执行期间产生和处理中断信号(内部中断)
  • 一条指令在执行期间可能产生多次缺页中断

地址变换机构:地址变换时先检索快表

5.3.1 最佳置换算法和先进先出置换算法(P163)

最佳置换算法:淘汰以后永久不使用的页面,或是在最长时间内不再被访问的页面(不可实现)

先进先出的页面置换算法:淘汰最先进入内存的页面

5.3.2 最近最久未使用和最少使用置换算法(P164) 

LRU:与最佳置换相反,淘汰过去最长时间没被使用的页面

LFU: 淘汰在最近时期最少使用的页面

6.7.1 缓冲的引入(P209)

引入原因:

  • 缓和CPU与I/O设备间速度不匹配的矛盾
  • 减少对CPU的中断频率,放宽对CPU中断响应时间的限制
  • 解决数据粒度(即基本数据单元大小)不匹配的问题
  • 提高CPU与I/O设备之间的并行性

7.1 文件和文件系统(P221)

数据项:基本数据项(描述某种对象某种属性的字符集,也叫字段)、组合数据项

记录:一组相关数据项的集合(关键字标识唯一)

文件:有结构文件(若干个相关记录组成)、无结构文件(可看成一个字符流)

文件的属性:类型、长度、物理位置、建立时间

文件的类型:

  • 按用途分:系统文件、用户文件、库文件
  • 按文件中的数据形式分:源文件、目标文件、可执行文件
  • 按存取控制属性分:只执行文件、只读文件、读写文件
  • 按组织形式和处理方式分:普通文件、目录文件、特殊文件

文件系统的层次结构:最底层是对象及属性、中间层时对对象操纵和管理的软件集合、最上层时文件系统的用户接口

文件操作:

  • 最基本操作:创建、删除、读、写、设置文件读写位置
  • 打开(系统将指名文件的属性从外存拷贝到内存打开文件表的表目中,将该表目的编号即索引号返回给用户);关闭(从打开文件表中删掉该表目)

7.3.1 文件控制块和索引结点(P233)

文件控制块FCB:描述和控制文件的数据结构,通常包含文件的基本信息(文件名、文件物理位置、文件逻辑结构、文件物理结构)、存取控制信息(权限)、使用信息(建立日期、修改日期、当前占用等)

索引结点:把文件名和文件描述信息分开,减少平均启动磁盘次数,把文件描述信息单独形成一个称为索引结点的数据结构

磁盘索引结点:

  • 文件主标识符
  • 文件类型
  • 文件存取权限
  • 文件物理地址
  • 文件长度
  • 文件连接计数
  • 文件存取时间

内存索引结点:在磁盘索引结点上增加

  • 索引结点编号
  • 状态(是否上锁)
  • 访问计数
  • 文件所属文件系统的逻辑设备编号
  • 链接指针

你可能感兴趣的:(IMAU期末复习)