前言

上学期(大二上)提前水过了操作系统课程,期末考试前总结了下。之后还会深入学习。

  • 以下内容仅为应对期末考试

概念题:

  • 操作系统功能:处理机管理,存储器管理,设备管理,文件管理,用户接口
  • 用户接口:用户使用计算机系统的手段称为用户接口。
  • 编程接口:编程接口是为用户程序在执行中访问系统资源而设置的,是用户程序获得操作系统服务的唯一途径。它由一组系统调用组成,每一个系统调用都对应一个能完成特定功能的子程序。
  • 进程状态:
    OS_1
  • 进程:一般来说,进程是程序的一次执行过程,它可以和其他进程并发执行。也可以说进程是程序在一个数据集合上的一次执行过程,是系统进行资源分配和调度的独立单位。总的来说,进程是具有一定独立功能的程序关于一个数据集合的一次运行过程。进程通常分成两类:用户进程和系统进程。
  • 进程的组成:进程控制块,有关程序段,相应的数据结构集。
  • 进程控制块(PCB):进程标识信息,处理机状态,进程调度信息,进程控制信息
  • 缓冲:

    • 引入缓冲的原因:

      1. 为了匹配外设与CPU之间的处理速度。
      2. 为了减少中断次数和中断处理时间。
      3. 为了解决DMA或通道方式时的瓶颈问题。
    • 缓冲的种类

      1. 单缓冲
      2. 多缓冲
      3. 缓冲池
    • 缓冲池由多个缓冲区组成。一个缓冲区由两部分组成:一部分是用来标识该缓冲区和用于管理的缓冲首部,另一部分是用于存放数据的缓冲体。这两部分一一对应。
    • SPOOLing系统:操作系统中实现虚拟设备的功能模块是在计算机控制下通过联机的外部设备同时操作来实现其功能的。

      • 组成:

        • 预输入程序。
        • 井管理程序。
        • 缓输出程序。
      • SPOOLing系统必须建立在具有多道程序功能的操作系统上,而且还应有高速随机外存的支持,这通常是采用磁盘存储技术。
      • 特点:

        • 提高了I/O的速度。
        • 将独占设备改造为共享设备。
        • 实现了虚拟设备功能。
  • 文件:文件被解释为一组赋名的相关联字符或者是相关联记录(一个有意义的信息单位)的集合。
  • 文件共享:文件共享是指一个文件可以让指定的多个用户同时使用。
  • 文件共享的方式:①绕道法。②链接法。③基本文件目录法。
  • 中断:中断是指计算机在执行期间,系统内发生非寻常的急需处理事件,使得CPU暂时停止当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被停止处继续执行或执行优先级高的新进程的过程。
    (中断源,中断请求,中断响应)
  • 通道:通道是一种硬件设施,本质上是一台专门用来管理I/O的处理器,它根据来自CPU的I/O操作指令,以独立于CPU的方式执行有关的通道程序,承担起I/O操作的组织,管理,数据传送以及结束等工作。只有在结束了CPU委托的I/O任务之后才向CPU发出中断请求信号。

    • 通道的连接方式:
      四级连接,三级控制

    OS_2

    • 通道的类型:

      • 字节多路通道
      • 选择通道
      • 数组多路通道
      • 通道适配器

问答题(6道大题):

一. 作业调度算法:

1. △先来先服务调度算法(FCFS)
2. 优先级调度算法(静态/动态优先级)
2. 轮转调度算法
根据时间片是否可变,分为 固定周期轮转法,可变周期轮转法
4. △分级轮转调度算法:
多个就绪队列 高优先级队列为空才能调度低优先级队列的进程
5. 分级反馈轮转调度算法
允许进程在不同的队列间移动
6. △最短作业优先调度算法
作业周转快,系统的吞吐量大
7. △响应比高者优先级调度算法
Rp =  (等待时间 + 要求执行时间) / 要求执行时间 = 1 + 等待时间/要求执行时间

分析调度情况,计算 平均周转时间,平均带权周转时间
OS_3
例题:
OS_4
地址转换:静态地址重定位,动态地址重定位(需要硬件支持,能够实现虚拟内存)

  • 分区存储管理:

    • 单分区存储管理
    • 多分区存储管理(固定分区存储管理,可变分区存储管理);分配算法:最先适应分配算法,最优适应分配算法,最坏适应分配算法
  • 虚拟存储管理方法:动态页式,动态段式,动态段页式
  • 页式存储管理:静态页式(作业/进程执行前,按页全部装入内存),动态页式
    把主存分成大小相等的区,称为块。把程序的逻辑空间进行分页,页的大小和块相等。按页存放到块中。

二. 页面置换算法:

OS_5

1. 随机置换算法  
2. 轮转置换算法(RR)  
3. △先进先出置换算法(FIFO)  
4. △最近最少用置换算法(LRU)  
5. 最近最不常用置换算法(LFU)  
6. Clcok置换算法  
简单Clock置换算法(访问位),改进型Clock置换算法(访问位,修改位)  
7. 页面缓冲算法(PBA)  
8. 最佳置换算法(OPT)  <br><br>

例题:

  • OS_6

    • 缺页次数 = 总列数 - 空白列数
    • 缺页率 = 缺页次数 / 总列数
  • FIFO算法:
    OS_7
    可参考进行应试学习
  • LRU算法
    OS_8

三. 磁盘的驱动调度

块是信息读/写的最小单位。
确定一个块所在的位置,必须给出3个参数:柱面号,磁头号,扇区号

驱动调度:移臂调度,旋转调度
移臂调度:
    1. 先来先服务调度算法(FCFS)
    2. 最短寻找时间优先调度算法(SSTF)距离磁头最近的
    3. 扫描调度算法(SCAN 电梯算法)看磁头方向,找到最大的后,找离磁头最近的
    4. 循环扫描调度算法(CSCAN)磁头单向移动,到上限后从0开始
    
列表:
    被访问的下一个磁道号        移动距离(磁道数)
    
计算时间:
总的访问时间 = 寻道时间 + 延迟时间 + 传输时间
计算寻道时间:移动磁道需要的时间。
计算延迟时间:6000r/min = 100r/s 平均旋转延迟时间 = 1/100 / 2 = 5ms  
总的旋转延迟时间 = 5 * 4 = 20 ms
计算传输时间:100r/s = 0.01s/r 读取一个扇区的时间 = 10ms/100(扇区数) = 0.1ms
传输时间 = 0.1ms * 4 = 0.4ms
求和即可。4为寻道次数

四. PV原语

  • 当时差不多放弃这道题了,题型不固定,比较难。没有复习套路。

五. 避免死锁(银行家算法)

求出 尚需量 = 最大需求量 - 已占资源

列表:
给出:

进程已占资源最大需求量尚需量(最大需求量 - 已占资源)
----
进程可提供Work需要Need已分配Allocation释放Work+Allocation完成Finish
P1根据题目尚需量已占资源可提供+已分配true

给出结论: 存在安全序列P1,P2,目前系统处于安全状态。

六. 文件系统:

出题比较简单,小学生运算。
例题:
OS_9
OS_10




扫一扫在手机打开当前页