• 王道考研——操作系统(第二章 进程管理)


    一、调度的概念、层次

    知识总览

    在这里插入图片描述

    调度的基本概念

    在这里插入图片描述

    调度的三个层次——高级调度(作业调度)

    在这里插入图片描述

    调度的三个层次——低级调度(进程调度/处理机调度)

    在这里插入图片描述

    内存中同时存在很多个进程,但系统中的cpu资源是有限的,所以操作系统也需要制定某种策略,挑出一个进程,把处理机分配给它

    调度的三个层次——中级调度(内存调度)

    在这里插入图片描述

    补充知识:进程的挂起态与七状态模型

    在这里插入图片描述

    三层调度的联系、对比

    在这里插入图片描述

    知识回顾与重要考点

    在这里插入图片描述

    二、进程调度(低级调度)的时机切换与过程调度方式

    进程调度的时机

    在这里插入图片描述
    在这里插入图片描述

    “上锁”

    左边:如果还没退出临界区(还没解锁)就进行进程调度,但是进程调度相关的程序也需要访问就绪队列,但此时就绪队列被锁住了,因此又无法顺利进行进程调度

    右边:在打印机打印完成之前,进程一直处于临界区内,临界资源不会解锁。但打印机又是慢速设备,此时如果一直不允许进程调度的话就会导致CPU一直空闲。
    因此:假如进程此时访问的是打印机(普通的临界资源),…。所以,如果进程在访问一个普通的临界资源,在一种普通的临界区中,这个时候是应该进行进程调度和切换的,来增加系统的并发度,增加cpu的利用率。

    在这里插入图片描述
    由“当前运行的进程是否可以强行地被剥夺处理机资源“这个问题,我们引出了下一个知识点——进程调度的方式

    进程调度的方式

    在这里插入图片描述

    进程的切换与过程

    在这里插入图片描述

    知识回顾与重要考点

    在这里插入图片描述

    三、调度算法的评价指标

    CPU利用率

    在这里插入图片描述

    系统吞吐量

    在这里插入图片描述

    周转时间

    在这里插入图片描述
    (一个上厕所十分钟的人和一个上厕所一分钟的人,前者只需要从十分钟到十一分钟,后者需要从一分钟到十一分钟)

    因此,出现了带权周转时间:
    在这里插入图片描述

    等待时间

    在这里插入图片描述

    响应时间

    在这里插入图片描述

    知识回顾与重要考点

    在这里插入图片描述

    四、调度算法(先来先服务、最短作业优先、最高响应比优先)

    Tips:各种调度算法的学习思路

    1. 算法思想
    2. 算法规则
    3. 这种调度算法是用于作业调度还是进程调度?
    4. 抢占式?非抢占式?
    5. 优点和缺点
    6. 是否会导致饥饿(某进程/作业长期得不到服务

    先来先服务(FCFS, First Come First Serve)

    在这里插入图片描述

    在这里插入图片描述

    带权周转时间其实表示的是整个周转时间比运行时间大多少倍这样的指标;P3的带权周转时间这么大,表示这个进程本来只需要很少的时间为它服务,但是它需要等很长的时间才可以被处理,因此对于P3的用户来说,他的体验是特别糟糕的

    短作业优先(SJF, Shortest Job First)

    在这里插入图片描述
    注意这个“最短的”要打双引号!!!!!
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    对FCFS和SJF两种算法的思考…

    在这里插入图片描述
    由此,引出了下面这种算法

    高响应比优先(HRRN, Highest Response Ratio Next)

    在这里插入图片描述

    在这里插入图片描述

    这个题目中由于它是纯计算型的进程,所以并不会有I/O操作,也就是说不会有主动地要求阻塞,因此主动阻塞这种情况不需要考虑

    知识回顾与重要考点

    在这里插入图片描述

    五、调度算法(时间片轮转、优先级调度、多级反馈队列)

    时间片轮转(RR, Round-Robin)

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    如果时间片大小为5:
    在这里插入图片描述
    在这里插入图片描述
    如果时间片太大,使得每个进程都可以在一个时间片内就完成,则时间片轮转调度算法退化为先来先服务调度算法,并且会增大进程响应时间。因此时间片不能太大
    另一方面,进程调度、切换是有时间代价的(保存、恢复运行环境),因此如果时间片太小,会导致进程切换过于频繁,系统会花大量的时间来处理进程切换,从而导致实际用于进程执行的时间比例减少。可见时间片也不能太小

    优先级调度算法

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    思考…

    在这里插入图片描述

    多级反馈队列调度算法

    在这里插入图片描述
    在这里插入图片描述

    知识回顾与重要考点

    在这里插入图片描述

  • 相关阅读:
    ST-SSL:基于自监督学习的交通流预测模型
    是前端受欢迎,不是你学了前端你就受欢迎好吧
    Python安装教程(Windows10系统)
    大数据技术大全
    TMP451
    《探索网校 App 的魅力世界:知识与科技的完美结合》
    Git 创建远程仓库和本地仓库进行连接
    10、内网安全-横向移动&域控提权&NetLogon&ADCS&PAC&KDC&永恒之蓝
    SSH爆破攻击及应急响应/事件处置
    C++/Qt音视频通话开发MetaRTC源码解读,dtls交互流程,dtls抓包分析
  • 原文地址:https://blog.csdn.net/m0_51448653/article/details/127992789