常见的作业调度算法

article/2025/9/16 0:56:11

目录

  • 写在前面
  • 先来先服务算法
  • 短作业优先算法
  • 高响应比优先调度算法

写在前面

  1. 评价作业调度算法的优劣,通常看平均周转时间和带权周转时间
  2. 周转时间 = 作业完成时间 - 作业到达时间
  3. 平均周转时间 = (作业完成时间 - 作业到达时间)/ 作业数量
  4. 带权周转时间 = 作业周转时间 / 作业服务时间

先来先服务算法

顾名思义,先来先服务算法就是先来的作业先调度运行,后来的后运行。和队列的先进先出
的意思是一样的。不过先来先服务算法很少单独使用,都是和其他算法一起结合使用。

实例
在这里插入图片描述

我们来计算 A 和 B 的周转时间和带权周转时间(C,D 两个的计算就一样了)。

比如 A 的周转时间就是 T完成 - T到达,也就是 1 (个时间单位)。带权周转时间就是 1 / 1 = 1。

B 的周转时间是 101 - 1 = 100,带权周转时间,100 / 100 = 1。

下面给出全部的周转时间和带权周转时间
在这里插入图片描述

短作业优先算法

短作业调度算法的核心在于,运行时间越短的作业就先执行。
这里有两个需要注意的地方:1.首先,第一到达的作业一定先运行,因为经常题目中是给出所有的作业,很多初学者以为直接从中选取短作业。2.要注意,在后续比较作业长短的时候,要看作业是否到达,就是上图的到达时间,没有到达的作业是不能比较的。3. 短作业优先具有最短的平均周转时间

实例:这个实例包含了先来先服务算法(两者的比较)
在这里插入图片描述

这里讲 A 和 D 两个作业(因为 D 短作业优先)。
首先,A 作业是先到达的,毋庸置疑,先计算 A 。
A 周转时间是 T完成 - T到达 = 4,带权周转是 4 / 4 = 1

我们观察,当 A 作业完成的时候,已经过去了 4 个时间单位了。而B,C,D,E 的到达时间为 1,2,3,4。所以所有作业均已到达,这个时候可以比较哪个是短作业了。观察服务时间,D 为 2 是最短的。

D 的周转时间 6 - 3 = 3 , 带权周转时间 3 / 2 = 1.5 。其他的作业也是用同样的方式计算。

高响应比优先调度算法

我们分析上面的两个算法,先来先考虑的是作业的等待时间,而短作业考虑的是作业的运
行时间,都有优劣,但是如果把二者结合起来岂不是更好,这就是高响应比优先调度算
法。注意:该算法的优先级需要每执行一个进程后重新计算一次。

优先级的计算:
在这里插入图片描述

变换上式可以得到:优先权 = 1 + (等待时间 / 要求服务时间)
这个算式在考试分析中更常用。

实例
在这里插入图片描述

同样,我这里演示 A 和 B 的计算方式。(这里没有列出完成时间,需要自己计算)
A 先到达,毋庸置疑必须先计算,周转时间:3 - 0 = 3,带权周转时间 3 / 3 =1

当 A 完成的时候,过去了 3 个单位时间(服务时间),此时只有 B 进程到达(B 的到达时间是 2)。

所以 B 的周转时间 , 9 - 2 =7 。 带权周转时间 7 / 6 = 1.17。

再接着看,当 B 完成时,时间到达了 9 这个时间单位。而 C,D,E 都再 9 之前到达了。所以这个时候要看谁的优先级高。

  • C 的优先级:1+5/4 = 2.25
  • D 的优先级:1+3/5 = 1.6
  • E 的优先级:1+1/2 = 1.5

计算得到 C 的优先级最高,所以先计算 C 周转时间和平均周转时间。计算方式同上。

同理,计算 D 和 E 的优先级,计算得到 E 的优先级更高。

同样的方式计算下面的内容。

在这里插入图片描述

你可以把这个题的 先来先服务算法短作业调度算法 也计算一下,最后可以得出谁的效率更高。

这是三个算法在这道题上的比较
在这里插入图片描述

我们可以看到短作业调度算法的效率更高。但是并不是说这个算法是最好的,每个算法有利有弊,需要看具体情况使用。


http://chatgpt.dhexx.cn/article/foEeD14n.shtml

相关文章

进程(作业)调度算法

3.2 调度算法(重点!!!) 一、先来先服务和短作业(进程)优先调度算法二、高优先权优先调度算法三、基于时间片的轮转调度算法 一、先来先服务和短作业(进程)优先调度算法…

优先级调度算法

算法介绍 优先调度算法的类型(用于作业调度) 1)非抢占式优先权调度算法 系统一旦把处理机分配给优先权最高的进程后,便一直执行下去,至完成。 2)抢占式优先权调度算法 只要系统中出现一个新的就绪进程…

进程调度算法;先来先服务调度算法、短作业优先调度算法、时间片轮转调度算法

一、 实验目的和要求 1. 了解进程调度算法的特点 2. 掌握进程调度算法,如先来先服务调度算法(first come first served,FCFS)、短作业优先调度算法(shotjob first,SJF)、时间片轮转调度算法。 二、 实验内容 …

操作系统调度算法--高响应比优先调度算法解析

高响应比优先调度算法(Highest Response Radio Next,HRRN)是一种对CPU中央控制器响应比的分配的算法。HRRN是介于FCFS(先来先服务算法)与SJF(短作业优先算法)之间的折中算法。FCFS算法所考虑的只…

进程调度算法

操作系统常见的进程调度算法 调度算法是指:根据系统的资源分配策略所规定的资源分配算法。常见的进程调度算法有: 1.先来先去服务 2.时间片轮转法 3.多级反馈队列算法 4.最短进程优先 5.最短剩余时间优先 6.最高响应比优先 7.多级反馈队列调度算法 一、…

【操作系统】调度算法

目录 🏫基本概念 🏥先来先服务(FCFS, First Come First Serve) 🏩短作业优先(SJF, Shortest Job First) 🍆细节 ⛪️高响应比优先(HRRN,Highest Response Ratio Next) &#x…

调度算法

1.先来先服务调度算法(FCFS): 按照到达的先后顺序进行调度。 周转时间完成时间 - 到达时间 带权周转时间周转时间 / 运行时间 等待时间周转时间 - 运行时间 特殊情况:当有I/O操作(输入/输出)的进程的时候…

操作系统——调度算法

文章目录 前言一、先来先服务(FCFS)二、最短时间优先(SJF)三、最高响应比优先(HRRN)四、时间片轮转(RR)五、优先级调度六、多级反馈队列总结 前言 本文的主要内容是调度算法的介绍,包括先来先服务(FCFS)、最短时间优先(SJF)、最高响应比优先(HRRN)、时间片轮转(RR)…

调度算法-优先级调度算法+例题详解

1. 优先级调度算法的类型 优先级进程调度算法,是把处理机分配给就绪队列中优先级最高的进程。这时,又可进一步把该算法分成如下两种。 非抢占式优先级调度算法。抢占式优先级调度算法。 2. 优先级的类型 静态优先级 静态优先级是在创建进程时确定的&…

【操作系统】常用的调度算法

文章目录 前言先来先服务调度算法(FCFS)短作业/短进程优先算法(SJF/SPF)时间片轮转调度算法(RR)高响应比优先调度算法(HRRF)优先级调度算法(PSA)静态优先级动…

【操作系统】几种常用调度算法

文章目录 一、先来先服务调度算法(FCFS)二、短作业优先调度算法(SJF)最短作业优先调度算法(SJF)最短剩余时间优先调度算法(SRTF) 三、响应比最高者优先调度算法(HRRF&…

【操作系统】_7种进程调度算法

书中一共描述了七种进程调度算法,为了学到这几种调度算法,后边做了几道练习题。 1. 先来先服务(FCFS)调度算法 先来先服务调度算法是最简单的调度方法。其基本原则是,按照进程进入就绪队列的先后次序进行选择。对于进…

常用的调度算法(包含实例)|操作系统

目录 1.先来先服务调度算法(FCFS)2.优先级调度算法3.最短作业优先调度算法(SJF)4.最高响应比优先调度算法(HRRN)5.轮转调度算法(RR)6.多级反馈轮转调度算法7.实时系统的调度算法 1.先…

几种常见的调度算法

文章目录 1.先来先服务算法(FCFS,First Come First Service)2.短作业优先算法(SJF,Short Job First)3.高响应比优先算法4.时间片轮转算法5.优先级调度算法6.多级反馈队列算法 1.先来先服务算法(FCFS,First Come First …

videojs播放m3u8格式视频

videojs 是不支持m3u8格式,需要配合videojs-contrib-hls插件 npm install --save video.js npm install --save videojs-contrib-hls 不加muted 刷新时不会自动播放,但是加上就会没有声音了,因为业务不需要声音所以没有影响

一个可以在线播放解析m3u8,mp4的网站 m3u8player.lantianye3.top

自己写的一个可以在线播放m3u8的网页,在这里分享一下。借助m3u8 player网页播放器,只需将您的M3U8文件地址或者mp4链接复制粘贴到播放器地址栏中然后点击播放即可。 网站 http://m3u8player.lantianye3.top/ 如有不足,多多指教。 首页截图&am…

视频工具下载(m3u8、MP4)

下载视频m3u8工具 FFmpeg 转 ts 格式 笔记有点乱 都是一笔带过(有链接),可以参考别人教程 1、下载m3u8工具(支持win和liunx) 下载链接 20201019 (都是2020年的,还是可以用) 使用…

前端如何播放m3u8格式的视频

m3u8格式的视频是将文件分成一小段一小段的ts文件,播放完一个在播放下一个,由于每次请求的ts文件都很小,所以基本可以做到无延时播放。目前WEB上主流的直播方案主要是HLS和RTMP,移动端主要是HLS,PC端主要是RTMP。 HLS…

如何下载m3u8格式视频

小编记得以前手机流量少的时候,电脑上下课程或电影再存到手机上看还是很容易的 现在虽然这种需求比较少,但还是有一些视频想下载下来,不过却发现下不了了因为很多的视频都不提供下载地址或下载的是加密的视频格式 即使我们能通过工具采集到…

Android m3u8网络视频播放

最近在做 m3u8网络视频播放,踩了不少坑,也试了不少的 框架,特别记录一下其中用的比较多的三种 第一种:media:ijkplayer media:ijkplayer 是由 bilbil 提供的开源的视频 框架,但是由过之后感觉不太好用: …