调度算法先来先服务(FCFS)、最短作业优先(SJF)和最高响应比优先(HRRN)算法
一、调度算法
(一)先来先服务(FCFS,First Come First Serve)
- 例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用先来先服务调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。
(二)短作业优先(SJF,Shortest Job First)
1. 短作业/进程优先调度算法
- 例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用非抢占式的短作业优先调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。
- 短作业/进程优先调度算法:每次调度时选择当前已到达且运行时间最短的作业/进程。
2. 抢占式的短作业优先算法
- 例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用抢占式的短作业优先调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。
- 抢占式的短作业优先算法又称“最短剩余时间优先算法(SRTN)”
- 最短剩余时间优先算法:每当有进程加入就绪队列改变时就需要调度,如果新到达的进程剩余时间比当前运行的进程剩余时间更短,则由新进程抢占处理机,当前运行进程重新回到就绪队列。另外,当一个进程完成时也需要调度。
注意几个小细节:
- 如果题目中未特别说明,所提到的“短作业/进程优先算法”默认是非抢占式的
- 很多书上都会说“SJF 调度算法的平均等待时间、平均周转时间最少”
①、严格来说,这个表述是错误的,不严谨的。之前的例子表明,最短剩余时间优先算法得到的平均等待
时间、平均周转时间还要更少。
②、应该加上一个条件“在所有进程同时可运行时,采用SJF调度算法的平均等待时间、平均周转时间最少”;
③、或者说“在所有进程都几乎同时到达时,采用SJF调度算法的平均等待时间、平均周转时间最少”;
④、如果不加上述前提条件,则应该说“抢占式的短作业/进程优先调度算法(最短剩余时间优先, SRNT算法)的平均等待时间、平均周转时间最少” - 虽然严格来说,SJF的平均等待时间、平均周转时间并不一定最少,但相比于其他算法(如 FCFS),SJF依然可以获得较少的平均等待时间、平均周转时间
- 如果选择题中遇到“SJF 算法的平均等待时间、平均周转时间最少”的选项,那最好判断其他选项是不是有很明显的错误,如果没有更合适的选项,那也应该选择该选项
3. 对FCFS和SJF两种算法的思考
- FCFS 算法是在每次调度的时候选择一个等待时间最长的作业(进程)为其服务。但是没有考虑到作业的运行时间,因此导致了对短作业不友好的问题.
- SJF 算法是选择一个执行时间最短的作业为其服务。但是又完全不考虑各个作业的等待时间,因此导致了对长作业不友好的问题,甚至还会造成饥饿问题.
- 能不能设计一个算法,即考虑到各个作业的等待时间,也能兼顾运行时间呢? 【高响应比优先算法】
(三)高响应比优先(HRRN,Highest Response Ratio Next)
- 例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用高响应比优先调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。
- 注:这几种算法主要关心对用户的公平性、平均周转时间、平均等待时间等评价系统整体性能的指标,但是不关心“响应时间”,也并不区分任务的紧急程度,因此对于用户来说,交互性很糟糕。因此这三种算法一般适合用于早期的批处理系统,当然,FCFS算法也常结合其他的算法使用,在现在也扮演着很重要的角色。而适合用于交互式系统的调度算法
调度算法先来先服务(FCFS)、最短作业优先(SJF)和最高响应比优先(HRRN)算法相关推荐
- 操作系统之进程管理:6、调度算法(先来先服务FCFS、最短作业优先SJF、最高响应比优先HRRN、时间片轮转法、优先级调度、多级反馈队列)
6.调度算法 适用于早期批处理机系统的调度算法 思维导图 1.先来先服务FCFS 2.最短作业优先SJF 非抢占式最短作业优先 抢占式最短作业优先(最短剩余时间优先算法) 注 3.最高响应比优先HRR ...
- 调度算法——先来先服务(FCFS)、短作业优先(SJF)、高响应比优先(HRRN) 例题详细!!!
文章目录 前言 知识总览 先来先服务(FCFS, First Come First Serve) 短作业优先(SJF, Shortest Job First) 对FCFS和SJF两种算法的思考 高响应 ...
- 操作系统实验 作业调度算法 先来先服务FCFS调度算法
作业调度算法 先来先服务FCFS调度算法 作业调度的原理: 非抢占调度 把作业从外存调入内存 作业调度算法: 先来先服务FCFS 短作业优先SJF 静态优先级调度 高响应比优先调度 实验原理 作业调度 ...
- Java操作系统进程调度算法——先来先服务(FCFS)算法
Java操作系统进程调度算法--先来先服务(FCFS)算法 Java操作系统进程调度算法--先来先服务(FCFS)算法 文章目录 Java操作系统进程调度算法--先来先服务(FCFS)算法 前言 一. ...
- 作业调度算法【平均周转时间、平均带权周转时间、先来先服务FCFS、短作业优先SJF、高优先权(级)算法FPF、高响应比优先算法HRRN】
文章目录 先来先服务算法(FCFS) 短作业优先算法(SJF).短进程优先算法(SPF) 周转时间和带权周转时间 高优先权(级)调度算法FPF 高响应比优先调度算法HRRN 先来先服务算法(FCFS) ...
- 【学习笔记】第二章——调度算法:先来先服务FCFS、短作业优先SJF、高响应比HRRN
文章目录 一. 先来先服务(FCFS) 二. 短作业优先(SJF) 三. 高响应比优先 1. 对前面两种算法的思考 2. 描述 四. 一.二.三总结 例子都要手动写一遍哦-这三个是供早期的批处理系统使 ...
- 操作系统之文件管理:9、磁盘的结构与磁盘调度算法(先来先服务FCFS、最短寻找时间优先SSTF、扫描算法SCAN、循环扫描算法C-SCAN、LOOK调度算法、C-LOOK调度算法)
9.磁盘的结构 磁盘结构 思维导图 磁盘.磁道.扇区.盘面.柱面 如何在磁盘中读/写数据? 磁盘的物理地址 一次磁盘读/写操作需要的时间 磁盘调度算法 1.先来先服务FCFS 2.最短寻找时间优先SS ...
- 2.2.4 操作系统之作业/进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先)
文章目录 0.思维导图 1.先来先服务---FCFS 2.短作业优先---SJF 3.高响应比优先---HRRN 4.三种算法的对比和总结 0.思维导图 1.先来先服务-FCFS First come ...
- hrrn算法java_常用的调度算法
调度算法是什么: 根据系统的资源分配策略所规定的资源分配算法.对于不同的系统和系统目标,通常采用不同的调度算法. 先来先服务(First Come First Served,FCFS) 一种最简单的调 ...
- 【操作系统 - 1】先来先服务FCFS和短作业优先SJF进程调度算法
操作系统系列 学习至此,发现很多学了但很久没用的知识,久而久之,慢慢遗忘.等哪天还需要的话,却发现已经忘得差不多了,即使整理了文档(word等),还是得从头再学一遍.读研第一学期,发现很多东西都可以从 ...
最新文章
- 如何理解ScanDef的概念
- 从贝叶斯理论到马尔可夫随机场(MRF)--以图像分割为例
- IDEA控制台输出中文乱码日志文件正常
- 南农计算机考研985,江浙沪985/211考研难度梯队排名
- 开源的无客户端桌面远程网关 Apache Guacamole 被曝多个严重漏洞,可导致 RCE
- Java开发者还用SSH?大清朝都亡了,你知道吗?
- Navicat for my sql 数据结构导出(制作数据字典)
- 祖母是一片不知愁的落叶
- 如何解决 Elasticsearch 中未分配的分片
- MATLAB 中的randn函数
- 数据挖掘——基于R文本情感分析(2)
- java 大臣的旅费_蓝桥杯 大臣的旅费
- 小指数rsa 多线程版writeup
- 项目管理的3个关键动作:启动、推进、复盘
- 【C语言初学必看】猜数字游戏背后的知识
- 手把手带大家搭建一个java个人网站(腾讯云为例)
- css中设置图片上下移动,CSS如何实现图片上下垂直居中
- 二维码登录(三)扫码登录
- WinPE启动U盘工具箱
- 中文匹配 matlab