精华内容
下载资源
问答
  • 操作系统期末复习

    2021-02-23 23:19:40
    操作系统期末复习


    1.操作系统的定义
    (是什么)是计算机系统中的一个系统软件,是一些程序模块的集合
    (干什么)它们管理和控制计算机系统中的软硬件资源,合理的组织计算机的工作流程,
    (为什么)以便有效的利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机与其用户之间起到接口的作用。

    2.操作系统功能

    1. 处理机管理:
      在多道程序或多用户的情况下,要组织多个作业或进程同时运行,允许多个程序共享处理机,就要解决对处理机分配调度策略、分配实施和资源回收等问题
    2. 存储管理
    3. 内存分配:保证各用户程序的存储区不冲突
    4. 存储保护:保证一道程序在执行过程中不会有意无意破坏另一道程序
      内存扩充:把内部存储器和外部存储器结合起来管理,为用户提供一个容量比实际内存 大得多的虚拟存储器
    5. 设备管理:
      对通道,控制器,输入输出设备的分配和管理
      设备独立性:为用户提供一个良好的界面而不去涉及具体的设备特性
      文件系统管理
    6. 用户接口:命令控制界面接口 系统调用接口

    3.操作系统的特征 并发 共享 虚拟 异步
    并发:指两个或两个以上的事件或活动在同一时间间隔内发生
    共享:共享指操作系统中的资源可被多个并发执行的进程所使用
    虚拟:虚拟是指把一个物理上的实体变为若干个逻辑上的对应物
    异步(不确定):内存中的多个进程都按照各自独立的、不可预知的速度向前推进。这是由于它们共享资源、并发执行的缘故

    4.OS分类
    批处理:用户课脱机使用计算机,成批处理多道程序运行
    优点:共享系统资源,系统资源利用率和作业吞吐量高(用户不干预)
    缺点:无交互性,作业周转时间长
    分时:交互性,多用户同时性,独立性
    实时:及时响应 高可靠性
    网络OS:将多个计算机互联
    分布式:要求有统一的OS,不可以有明显的主从关系


    5.两种接口
    命令控制界面接口:组织控制作业执行或管理计算机系统
    系统调用接口:请求os提供服务

    6.系统调用和普通调用的区别
    运行状态不同
    系统调用的调用过程和被调用过程运行在不同的状态,而普通的过程调用一般运行在相同的状态。
    调用方法不同
    系统调用必须通过软中断机制首先进入系统核心,然后才能转向相应的命令处理程序。普通过程调用可以直接由调用过程转向被调用过程。
    返回问题
    在采用抢先式调度的系统中,当系统调用返回时,要重新进行调度分析――是否有更高优先级的任务就绪。普通的过程调用直接返回调用过程继续执行。

    7.系统调用过程
    用户在使用系统调用是,产生一条陷阱指令,处理机执行时产生中断
    由陷阱处理启动相关的处理程序完成系统调用的相关工作
    保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序
    然后返回用户程序继续执行


    8.进程描述
    是一个程序对某个数据集执行过程,是分配资源的基本单位
    静态描述:程序段,数据段,进程控制块(动态特征)
    顺序关联的静态描述:进程上下文

    PCB包含了有关进程的描述信息、控制信息以及资源信息,是进程动态特征的集中反映
    PCB区的大小决定了系统中最多可同时存在的进程个数,称为系统的并发度

    进程上下文切换发生在不同的进程之间而不是同一个进程内

    9.程序顺序执行的特点:顺序性;封闭性;可再现性

    10.操作系统引入进程的概念
    从理论角度看,是对正在运行的程序过程的抽象;
    从实现角度看,是一种数据结构,目的在于清晰地刻划动态系统的内在规律,有效管理和调度进入计算机系统运行的程序

    11.进程的特征:动态性,独立性,并发性,异步性

    12.PCB概念
    PCB包含了有关进程的描述信息、控制信息以及资源信息,是进程动态特征的集中反映。
    进程的PCB是系统感知进程的唯一实体
    为了描述和控制进程的运行,系统为每个进程定义了一个数据结构—进程控制块PCB,它是进程实体的一部分,是操作系统中最重要的记录型数据结构。
    PCB中记录了操作系统所需的、用于描述进程的当前情况以及控制进程运行的全部信息。操作系统是根据PCB来对并发执行的进程进行控制和管理的。

    13.进程状态

    1. 就绪状态
      当进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行,进程这时的状态称为就绪状态。
      在一个系统中处于就绪状态的进程可能有多个,通常将它们排成一个队列,称为就绪队列。
    2. 执行状态
      进程已获得CPU,正在执行。在单处理机系统中,只有一个进程处于执行状态
    3. 阻塞状态
      正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,也称为等待状态。

    致使进程阻塞的典型事件有:请求I/O,申请缓冲空间等。通常将这种处于阻塞状态的进程也排成一个队列。有的系统则根据阻塞原因的不同而把处于阻塞状态的进程排成多个队列。

    14.进程控制
    进程控制,就是系统使用一些具有特定功能的程序段(原语)来创建、撤销进程以及完成进程各状态间的转换
    创建原语,撤销原语,阻塞原语,唤醒原语
    原语:原语是一种特殊的系统功能调用,它可以完成一个特定的功能。其特点是原语执行时不可被中断,不允许并发执行,在操作系统中它是一个不可分割的基本单位。一个原语操作中的所有动作,要么全作,要么全不作。

    15.临界区:访问公用数据的程序 不允许多个并发进程交叉执行的一段程序
    临界资源:系统中某些资源一次只允许一个进程使用

    16.间接制约,直接制约,互斥,同步

    1. 间接约束:
      由于共享某一共有资源而引起的在临界区内不允许并发进程交叉执行,各个进程间竞争使用这些资源的现象,
    2. 互斥:
      一组并发过程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不允许交叉执行的单位执行
      不允许两个以上的共享该资源的并发进程同时进入临界区称为互斥
    3. 直接制约:
      系统中多个进程中发生的事件存在某种时序关系,各自的执行结果互为对方的执行条件,需要相互合作,共同完成一项任务。
    4. 同步:
      在异步环境下的一组并发进程因直接约束而互相发送消息而进行互相操作,互相等待,使得各进程按照一定速度执行的过程

    17.互斥原则
    有空让进:当无进程在临界区时,任何有权使用临界区的进程可进入
    忙则等待:同时有多个进程要求进入临界区,只能让其中之一进入临界区,其他进程必须等待
    让权等待:并发进程中的某个进程不在临界区时,不阻止其它进程进入临界区;保证平等、独立的竞争和使用公有资源的权力,且保证任一时刻至多只有一个进程在临界区
    有限等待:任何进入临界区的要求应在有限的时间内得到满足;保证并发进程不发生死锁

    18.信号量含义
    当S .value ≥0时,表示某类可用资源的数目。或者说表示可以执行P操作而不会被阻塞的进程的数目
    当S .value <0时,其绝对值表示信号量S的阻塞队列中的进程数,即系统中因请求该类资源而被阻塞的进程的数目,亦即被信号灯挡住的进程数目

    19.高级通信
    共享存储器机制:
    要求通信进程之间共享某些变量,并通过这些变量交换信息,不需要数据移动
    消息传递机制:
    (1)直接通信方式
    发送进程直接把消息发送给接收进程,并将它挂在接收进程的消息缓冲队列上
    (2)间接通信方式
    发送进程把消息发送到某个中间实体中,接收进程从中取得消息
    管道通信机制:
    是指用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件

    20.死锁
    死锁概念:
    所谓死锁,是指各并发进程彼此互相等待对方所拥有的资源,且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源。从而造成大家都想得到资源而又得不到资源,各并发进程不能继续向前推进
    死锁起因:并发进程的资源竞争
    根本原因:系统提供的资源数少于并发进程所要求该类资源数

    21.产生死锁必要条件
    互斥条件:涉及的资源不能同时被两个进程以上的进程使用
    不剥夺条件:不能强行剥夺进程拥有的资源
    部分分配条件:进程每次申请它所需要的一部分资源,在等待一新资源时继续占有已分配的资源
    环路条件:存在一种进程的循环链,链中的每一个进程已获得的资源同时被链中的下一个进程所请求

    22.解决死锁的方法为:预防、避免、检测与解除
    预防:是采用某种策略,限制并发进程对资源的请求,从而使得死锁的必要条件在系统执行的任何时间都不满足。
    避免:是指系统在分配资源时,根据资源的使用情况提前做出预测,从而避免死锁的发生。
    银行家算法
    死锁检测与解除:当死锁发生时,能够检测到死锁发生的位置和原因,并能通过外力破坏死锁发生的条件,从而使得并发进程从死锁状态中恢复出来。

    23.线程
    引入线程是为了提高系统的执行效率,减少处理机的空转时间和调度切换(保护现场信息)的时间和空间,提高操作系统的并发性能
    在引入线程的系统中,线程是调度和分派的基本单位,而进程是拥有资源的基本单位
    线程可分为用户级线程和内核级线程,同一进程的线程共享进程的进程空间和其他所有资源
    线程也有就绪、阻塞和运行三种基本状态
    线程最适合多处理机系统、网络或分布式系统

    用户级线程 OS内核不知道线程的存在,调度单位仍是进程,线程不涉及处理机切换
    核心级线程:线程之间的切换需要内核支持;以线程为基础进行调度
    核心级线程的上下文切换时间要>用户级(切换需要内核支持)


    24.处理机调度
    处理机调度分为四级:

    1. 作业调度:又称宏观调度或高级调度
      按一定的原则对外存上的大量后备作业进行选择,给选出的作业分配内存等必要的资源,并建立相应的进程。另外当作业执行完毕时,还负责回收系统资源
      分时系统和实时系统中不存在作业调度
    2. 交换调度:中级调度
      按给定的原则和策略,将处于外存交换区中的就绪状态的进程调入内存,或把处于内存阻塞状态的进程交换到外存交换区
      主要涉及到内存管理与扩充,也归入内存管理部分
    3. 进程调度:微观调度或低级调度-
      按某种策略和方法选取一个处于就绪状态的进程占用处理机。
    4. 线程调度
      对于支持多线程的系统,按某种策略和方法选取一个处于就绪状态的线程占用处理机

    25.作业状态:提交;收容;执行;完成

    26.调度算法

    1. 衡量:周转时间 作业在系统内停留时间:等待时间+执行时间
      带权周转时间:作业周转时间与作业执行时间之比
    2. 先来先服务FCFS 非抢占
      开销小,不利于短作业
      短进程优先法SPF 非抢占
      可获得最大吞吐量,不利于长作业
      最短剩余时间法SRT 抢占
      最高相应比HRN – 相应比的计算 (W+T)/T 非抢占

    对FCFS和SJF方式的一种综合平衡。
    FCFS只考虑等待时间未考虑执行时间的长短;SJF只考虑执行时间未考虑等待时间
    优先级法HPF 抢占/非抢占
    轮转法RR 抢占/非抢占
    多级轮转法FB 抢占/非抢占


    27.存储管理功能
    主要任务合理地建立用户程序与内存空间的对应关系,为各道程序分配内存空间,运行完成后再予以回收,而且始终要保证系统程序和各用户程序安全

    1. 虚拟存储器:不考虑物理存储器的大小和信息存放的位置,只规定每个进程中相互关联的信息的相对位置
      每个进程都拥有自己的虚拟存储空间
    2. 地址变换:将多个虚存的一维线性空间或多维线性空间变化到内存的物理线性地址空间 即:虚拟地址映射为内存地址
      静态地址重定位:程序执行之前全部完成映射, 完成一个首地址不同的连续地址变换
      动态地址重定位:CPU访问内存之前,将要访问的部分程序或数据地址转换为内存地址
    3. 内外存之间的数据传输:为了达到内存扩充的目的;
      用户控制 — 覆盖;一个程序内,不会同时执行(没有调用关系)的程序段共用同一个主 存区
      操作系统控制 — 交换:处于等待状态的进程换出内存,而把那些处于就绪状态的进程 换入内存
      请求调入和预调入
    4. 内存分配与回收
    5. 内存信息的共享和保护:防止地址越界,权限越权

    28.分区存储的原理
    是把内存划分为若干个大小不等的区域,除OS占用一个区域之外,其余由多道环境下的各并发进程共享
    给每个内存的进程划分一块适当大小的存储区,以连续存储各进程的程序和数据,使得各进程得以并发执行。

    固定分区法分配与回收:
    分区说明表说明各分区号、分区大小、起始地址和是否是空闲区
    动态分区法分配与回收:
    登记空闲区的说明信息:
    空闲区表:空闲区长度和起始地址
    空闲区队列:存放本空闲区的大小以及下个空闲区的起始地址
    最先适应发,最佳适应法,最坏适应法

    29.页式管理
    数据结构:
    页表:虚地址与页面实地址对应
    请求表:保存各进程页表对应位置 和 进程所需要的页面数
    存储页面表:内存的页面是否被分配(位置图 空闲页面链)
    静态页式管理:各个页所占的内存块可以不连续,一次性把作业的全部页面装入内存
    动态页式管理:
    地址变换:请求表找到对应页表,由逻辑地址从页表中找到对应的页面号和页内地址(物理地址)
    如果对应的页不在内存(由页表中的中断位发现):缺页中断,有空闲页面,直接调入;没有空闲页面进行置换算法,置换的页没有被修改过时可以直接被替换
    页面置换算法:FIFO – Belady现象,LRU,clock(访问位),改进clock(访问位,修改位)

    30.段式管理
    按程序自身的逻辑关系划分为若干个程序段,每个程序段都有一个段名,且有一个段号,以段为单位分配内存,每一个段在内存中占据连续空间,但各段之间可以不连续存放
    可以采用与动态分区法相同的数据结构 — 空闲区表 最先/最佳/最坏适应法
    可以采用与页式管理相同的置换算法 — FIFO,LRU,clock

    31.局部性原理
    在几乎所有的程序的执行中,在一段时间内CPU总是集中地访问程序中某一个部分而不是随机地对程序所有部分具有平均访问概率--这种现象称为局部性原理

    抖动问题
    如果置换算法选择不当,有可能产生刚被调出内存的页又要马上被调回内存,调回内存不久又要马上被调出,如此反复的局面
    系统换页或换段频繁时,以致大部分时间都花费在内外存之间的来回调入调出上,访问外存时间和输入/输出处理时间大大增加,反而造成CPU因等待数据空转,使得整个系统性能大大下降,这就造成了系统抖动
    产生抖动原因:分给进程的内存小于所要求的工作集;选择的页或段的淘汰算法不适
    解决抖动:扩大工作集;选择不同的淘汰算法;挂起某些进程


    32.传输控制方式
    程序直接控制法:有用户进程直接控制内存或CPU和外围设备之间进行传输数据
    优点:控制简单,不需要多少硬件支持
    缺点:CPU与外围设备只能串行工作
    中断控制方式:利用CPU发送中断的方式控制外围设备和CPU传输数据
    优点:提高了CPU的利用率,支持多道程序和设备并行操作
    缺点:数据缓存寄存器比较小,中断次数过多仍占用大量的CPU时间,也可能造成CPU 无法相应中断导致中断丢失
    DMA:在外围设备和内存间开辟直接的数据交换通路进行数据传输
    优点:除了在数据块传输开始时需要CPU启动指令,在整个数据块传输结束后需要CPU 中断外,不需要CPU干涉
    缺点:多个DMA控制器同时使用会造成内存地址冲突;对外围设备的管理和某些操作 仍由CPU控制
    通道:控制内存或CPU和外围设备进行数据传输,通道是一个独立于CPU的专门管输入输出的控制机构,控制设备与内存直接进行数据交换
    优点:进一步减轻了CPU的负担,一个通道可控制多台设备与内存进行数据交换
    缺点:增加了额外的硬件

    33.中断
    在计算机执行期间,系统内发送任何非寻常的或非预期的急需处理的事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完成后又返回原来被中断处继续执行的过程

    34.缓冲
    为了匹配外设与CPU之间的处理速度,为了减少中断次数和CPU中断处理时间,同时也为了解决DMA或通道瓶颈问题
    (为了提高CPU与外设的并行度,减少CPU中断频率)
    种类:单缓冲,双缓冲,多缓冲,缓冲池

    35.设备分配
    系统设备表SDT
    记录所有物理设备的情况 包含DCT
    设备控制表DCT
    系统中每个设备都必须有一张 设备和控制器相连 包含COCT
    控制器表COCT
    每个控制器一张 I/O控制器与通道相连情况 包含CHCT
    通道控制表CHCT
    每个通道一张

    36.磁盘访问时间
    寻道时间:mn+s m磁盘驱动速度 n 寻道道数 s 启动磁头
    旋转延迟(平均): 1/2 * 1/r r为磁盘每秒钟的转数
    数据读取时间: b
    1/r*1/N N为一个磁道上的字节数。 1/r 旋转一周时间


    37.文件的逻辑结构和物理结构

    1. 逻辑结构:字符流式无结构文件 和 记录式有结构文件
    2. 物理结构:文件存储设备划分若干大小相等的物理块,将文件信息也划分为与物理存储设备 的物理块大小相等的逻辑块,以块作为分配和传输信息的基本单位

    连续文件:

    • 优点:文件读取表现好,高效的顺序访问和随机访问
    • 缺点:碎片问题,不利于文件的动态增长

    链式文件:

    • 优点:文件长度可以动态增长,可以使用非连续的物理空间存储
    • 缺点:不利于随机存取,搜索效率低

    索引文件:

    • 优点:动态增长很容易,没有碎片,可以顺序和随机访问
    • 缺点:需要访问两次外存

    逻辑块号到物理块号的变换也是由文件物理结构决定的

    38.文件存储管理
    实质是一个空闲块的组织和管理的问题
    数据结构
    空闲目录文件:把文件存储设备中的空闲块的块号统一放在一个称为空闲文件目录的物理块中,每个表项对应 由多个空闲块构成的空闲区

    空闲链法:把文件存储设备的所有空闲链都链接在一起,从链头分配,链尾回收

    位示图法:每一位对应一个物理块使用情况

    39.目录文件,文件目录
    文件目录:把文件名和对文件实施控制管理的控制管理信息称为该文件的文件说明(文件控制块FCB)

    目录文件:文件目录组成目录文件
    文件系统利用目录文件完成按名存取和对文件信息的保护

    展开全文
  • 操作系统期末复习
  • 操作系统 期末复习

    千次阅读 多人点赞 2018-12-29 22:53:12
    学习资料:老师的PPT、作业、计算机操作系统(第四版)汤子瀛、汤小丹等,加自己的另一篇总结 学习计划:每天复习1章内容+例题+习题+总复习PPT的主要内容 学习时长:距离考试10天,学习计划8天,留1~2天总复习 19...

    学习资料:老师的PPT、作业、计算机操作系统(第四版)汤子瀛、汤小丹等,加自己的另一篇总结

    学习计划:每天复习1章内容+例题+习题+总复习PPT的主要内容

    学习时长:距离考试10天,学习计划8天,留1~2天总复习  19年1月1号复习完了zzz,超出预期的速度

    考试:概念忘记,可以用例子来解释


    第一章 概论

    操作系统的基本概念

    • 概念:操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充,主要作用是管理设备,提高它们的利用率和系统的吞吐量,并为用户和应用程序提供一个接口
    • 目标:方便性、可扩充性、开放性、有效性(提高系统资源的利用率,系统的吞吐量)
    • 作用:计算机和用户的接口、资源管理、资源抽象(封装)

    操作系统的发展过程

    • 单道:内存中仅有一道程序
      • 优点:自动、顺序、单道
      • 缺点:系统资源得不到充分利用
    • 多道:内存中按调度算法执行程序
      • 优点:资源利用率高、系统吞吐量达
      • 缺点:平均周转时间长、无交互能力
    • 分时:一台主机上有多个终端,时间片轮转法
      • 优点:多路性、独立性、及时性、交互性
    • 实时:系统的正确性,取决于逻辑结果和产生结果的时间,允许抢占。最大特点是响应快
    • 分时和实时的区别
      • 多路性、独立性、及时性、交互性、可靠性

    操作系统的基本特性

    • 并发
      • 并行并发、进程、线程
    • 共享
      • 互斥共享、同时访问(实质是交替访问)

    操作系统的虚拟技术

    • 时分复用技术:利用处理机空闲时间,转去为其他用户服务
      • 虚拟处理机技术:多道程序设计技术
      • 虚拟设备技术:将一个IO设备虚拟为多个IO设备,并分配给每一个用户
    • 空分复用技术:利用存储器空闲时间,转去为其他程序服务
      • 虚拟内存
      • 虚拟存储器技术
    • 异步性:每次运行过程不可预知

    操作系统的管理功能

    • 进程控制:创建、撤销进程
    • 进程同步:让多个进程协调进行
    • 进程通信
    • 调度

    第二章 进程管理

    • 前驱图的定义
      • 定义:DAG图,描述进程执行的先后顺序
    • 程序顺序执行的特征
      • 顺序性、封闭性、可再现性
    • PCB定义
      • 定义:为每个进程配置的进程控制块,描述进程的基本情况和活动过程
    • 进程控制-进程状态转换(重点)
    • 信号量、临界区定义
      • 临界区:并发进程中,每个进程访问临界资源的代码称为临界区
      • 信号量
        • 整型信号量:开一个整型变量S
        • 记录型信号量:整型信号未实现“让权等待”,多定义一个变量list,来存储让权了的进程
        • AND型信号量:多个进程共用多个临界区资源
    • 同步机制应遵循的准则
      • 空闲让进、忙则等待、有限等待、让权等待
    • 经典同步问题(重点)
      • 有限缓冲区
        • 代码:循环队列,in=(in+1)%n,out=(out+1)%n,临界区资源counter(全局变量)
      • 生产者-消费者问题
        • 记录型信号解决,代码
          • int in=0,out=0;
            item buffer[n];
            auto mutex=1,empty=n,full=0;
            void producer{
                while(1){
                    new temp;
                    wait(empty);
                    wait(mutex);
                    buffer[in]=temp;
                    in=(in+1)%n;
                    signal(mutex);
                    signal(full);
                }
            }
            
            void consumer(){
                while(1){
                    wait(full);
                    wait(mutex);
                    int good=buffer[out];
                    out=(out+1)%n;
                    signal(mutex);
                    signal(empty);
                }
            }

             

        • AND型信号解决:利用Swait()代替两个连续的wait,即只有资源都空闲的时候才执行
        • 管程解决,代码:写一个类,封装了put和get两个函数
      • 哲学家进餐问题
        • 记录型信号量解决会死锁,直接写AND型,代码:
          int statu[5]={1,1,1,1,1};
          while(1){
              Swait(statu[i],statu[(i+1)%n]) //对于第i位哲学家来说
              do ... sth ...
              Ssignal(statu[i],statu[(i+1)%n]) //对于第i位哲学家来说
          }

           

      • 读者-写者问题:同一时刻只允许一个进程读,不允许读+读 / 写+写 / 写+读

    第三章 调度与死锁

    低级、中级、高级调度定义

    • 高级调度:又称长程调度或作业调度,调度对象是作业,功能是用某种调度算法决定就绪队列中那几个作业调入内存
    • 中级调度:又称内存调度,目的是为了提升吞吐率和资源利用率,功能是将外存中的程序块调入内存,并加入就绪队列
    • 低级调度:又称进程调度或短程调度,调度对象是进程,功能是用算法决定哪个进程获得处理机
    • 总结:高级调度→哪些作业调入内存;中级调度→外存到内存;低级调度→哪个进程获得处理机
    • 作业,是一个总任务,而进程是作业的各个子任务。高级调度做作业分配,中级调度和低级调度面向进程,分别决定了哪些进程允许进入内存和哪些进程允许获得处理机(处理机包括CPU和主存储器)

    调度规则

    • CPU利用率、吞吐量、周转时间(完成时间-到达时间)、平均周转时间($$ T=\frac{1}{n}[\sum _{i=1}^n T_i] $$)、带权周转时间(周转时间/真实执行时间,$$ value>=1 $$)、平均带权周转时间($$ W=\frac{1}{n}[\sum _{i=1}^n \frac{T_i}{T_s}] $$)、等待时间、响应时间

    算法(重点)

    • 先来先服务
    • 短作业优先
    • 优先级调度
    • 时间片轮转法

    死锁定义

    • 若干个进程在争夺资源,最后陷入无限期的阻塞和等待中

    死锁条件

    • 互斥
    • 不剥夺
    • 请求与保持
    • 循环等待

    死锁避免方法-银行家算法(重点)

    • 贪心首先完成能完成的

    死锁预防、解除方法

    • 预防:打破除了互斥的其他三个条件
    • 解除:抢占资源、终止进程

    第四章 存储器管理

    连续分配

    • 概念:为了能将程序装入内存,必须为它分配一定大小的内存空间,连续分配方式是最早出现的存储器分配方式
    • 类型
      • 单一连续分配:系统分为用户区和系统区
      • 固定分区分配
      • 动态分区分配:首次适应(先找到先用)、最坏适应(找到最大的用)、最佳适应算法(找到最小的用)
      • 动态可重定位分配算法:紧凑(去除小碎片,相当于平移)、重定位(重定位寄存器存在进程在内存的首地址)

    基本分页式(重点)

    • 物理地址和逻辑地址的区别
      • 逻辑地址:理解为虚拟地址,包括了偏移量
      • 物理地址:数据真实存放的地方
    • 页表定义及作用
      • 定义:为了能在内存中找到每个页面对应的物理块
      • 作用:实现从页号到物理块号的地址映射
    • 地址变换机构
      • 基本地址变换机构:比下图少了个快表的部分
      • 具有快表的地址变换机构:实质上快表先建立了一个映射表,节约了去页表找页号的时间,相当于预处理

    基本分段式

    • 段表作用:逻辑段到物理内存区的映射
    • 地址变换机构:段表寄存器

    分段式和分页式的区别

    • 分页管理
      • 没有外碎片,但会产生内碎片(页可能填不满)
      • 一维地址
      • 主要用于实现虚拟内存
      • 以页为单位,大小静态
    • 分段管理
      • 没有内碎片,但会有外碎片
      • 二维地址
      • 以段为单位,大小动态

    段页式的实现过程

    • 程序分成若干个段,每个段对应一个页表

    虚拟存储器

    • 定义:具有调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统
    • 页面置换算法
      • 最佳置换算法
      • 先进先出算法
      • 最近最少使用算法
      • 最少使用次数算法

    第五章 输入输出系统

    缓冲管理

    • 缓冲区作用
      • 缓和CPU和IO设备速度不匹配的矛盾
      • 提高CPU和IO设备之间的并行性
      • 减少CPU的中断频率,放宽对CPU中断响应时间的限制
      • 解决数据粒度(数据单元大小)不匹配的问题
    • 单缓冲
    • 双缓冲(缓冲对换):减少了用户响应时间
    • 循环缓冲区
      • 三个指针
        • nextg:指向装了数据的空缓存区
        • nexti:空缓存区
        • Current:正在使用的缓存区
      • 使用
        • Getbuf,装载和读取数据
        • Releasebuf,释放缓存区
    • 缓冲池
      • 组成:emq,inq,outq
      • 工作方式
        • 收容收入Getbuf(emq)
        • 提取输入Getbuf(inq)
        • 收容输出Getbuf(enq)
        • 提取输出Getbuf(outq)
    • SPOOLING系统(重点) 
      • 假脱机技术:利用专门的外围机,当需要用数据的时候,可以直接从磁盘读入 (我感觉就是一个缓存区吧。
      • 组成
        • 输入井和输出井:模拟输入的磁盘
        • 输入缓冲区和输出缓冲区:输入缓冲区,在给输入井之前,先放缓冲区缓一缓
        • 输入进程和输出进程:模拟外围机,从外部输入数据到缓冲区
        • 井管理程序:用于控制作业与磁盘井之间信息的交换

    设备分配(请求与保持条件)

    • 安全算法:每当进程发出I/O请求后,便进入阻塞状态
    • 不安全算法:仅当进程所请求的设备已被另一个进程占用时,才进入阻塞状态

    磁盘调度算法

    先来先服务、最短寻道时间优先(贪心)、SCAN(单向再折返)、CSCAN(单向到最后一个,再跑到另一端的第一个)


    第六章 文件管理

    文件逻辑结构

    • 按是否有结构分类
      • 有结构文件:分为定长记录和不定长记录
      • 无结构文件:流式文件
    • 从文件组织方式
      • 顺序文件
      • 索引文件
      • 索引顺序文件

    文件存储空间管理

    • 空白文件目录:这种方法将盘空间的一个未分配区域称为一个空白文件,系统为所有的空白文件建立一个目录,每个空白文件在这个目录中建立一个表目。
    • 空白块链:这种方法将盘上的所有空白块用链接指针或索引结构组织成一个空白文件。
    • 位示图:它将文件存储器的存储空间建立一张位示图,用以反映整个盘空间的分配情况

    文件目录管理

    • 要求:按名存取、提高读目录的检索速度、文件共享、允许文件重名
    • 文件控制块FCB
      • 基本信息类:文件名、物理位置、逻辑结构、物理结构
      • 存取控制信息类:权限
      • 使用信息类:文件建立的日期和时间,上一次修改的时间
    展开全文
  • 操作系统期末复习
  • 操作系统期末复习
  • Linux操作系统期末复习资料,内含课后习题答案解析。。
  • 操作系统期末复习资料,欢迎下载~
  • 计算机操作系统期末复习

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,072
精华内容 2,428
关键字:

操作系统期末复习