【王道考研 操作系统】【第二章】处理机调度 进程调度算法

第一章【王道考研 操作系统】【第一章】操作系统的概述、特征、发展、体系结构 中断与系统调用

第二章 1~5【王道考研 操作系统】【第二章】进程概念 进程控制 进程通信 线程概念和多线程模型

第二章

6. 处理机调度的概念、层次

6.1 概念

处理机调度,就是从就绪队列中 按照一定的算法选择一个进程将处理机分配给它 运行,以实现进程的并发执行。

6.2 调度的三个层次

6.2.1 高级调度(作业调度)

按一定的原则从 外存 上处于后备队列的作业中挑选一个 (或多个) 作业,给他们分配 内存 等资源,并建立相应的进程 (建立PCB),以使他们获得竞争处理机的权利。
image-20220301204941042

6.2.2 中级调度(内存调度)

引入虚拟存储技术后,可将暂时不能运行的进程调至外存等待,等它重新具备运行条件时再调入内存。这样做可以提高内存利用率和系统吞吐量。

中级调度,就是要决定哪个处于 挂起 状态的进程 重新调入内存

  • 暂时调到外存等待的进程状态为 挂起状态 suspend,五状态模型 --> 七状态模型。
    image-20220301210034345

6.2.3 低级调度(进程调度)

按照某种方法从 就绪队列 中选取一个 进程,将 处理机 分配给它;由于并发执行,进程调度的频率很高,是操作系统中最基本的调度。

6.2.4 三层调度的联系、对比

image-20220301210429230

7. 进程调度的时机、切换与过程、调度方式

7.1 进程调度的时机

进程调度(低级调度),就是按照某种算法从就绪队列中选择一个进程为其分配处理机。
image-20220301210939598
补充:
image-20220301211300603

7.2 进程切换的过程

进程切换 是指一个进程让出处理机,由另一个进程占有处理机的过程。

image-20220301211807674

7.3 调度方式——非抢占 / 抢占方式

image-20220301211527551

8. 进程调度算法

8.1 评价指标

  • CPU利用率:CPU忙碌的时间 占 总时间 的比例。

  • 系统吞吐量:单位时间内完成作业的时间。
    image-20220301212515931

  • 周转时间:从作业 被提交给系统 (外存) 开始,到 作业完成 为止的时间间隔。

  • 等待时间:进程 / 作业处于 等待处理机 状态时间之和。
    image-20220301213308121

  • 响应时间:从用户 提交请求首次响应 所用的时间。

8.2 调度算法

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

按照到达的先后顺序调度,事实上就是等待时间越久的越优先得到服务。
image-20220301214122681
总结:
image-20220301214338904

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

image-20220301214558274
抢占式的短作业优先算法,又称为 最短剩余时间优先算法 SRTN
image-20220301214805329
在所有进程都几乎同时到达时,采用 SJF调度算法的 平均等待时间、平均周转时间最少
任何情况下,SRNT算法的平均等待时间、平均周转时间最少。

总结:
image-20220301215238549

8.2.3 高响应比优先 HRRN

image-20220301215620055
总结:
image-20220301215824352

8.2.4 三个调度算法的对比

image-20220301220034870


版权声明:本文为liangjingxin4747原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。