FCFS,SJF,HRRN调度算法
FCFS,SJF,HRRN调度算法
各种调度算法的学习思路
- 算法思想
- 算法规划
- 这种调度算法是用于作业调度还是进程调度
- 抢占式?非抢占式?
- 优缺点
- 是否会导致饥饿(某进程/作业长期得不到服务)
先来先服务(FCFS)
- 算法思想:主要从“公平”的角度考虑(类似于排队购物)
- 算法规则:按照作业/进程到达的先后顺序进行服务
- 用于作业调度/进程调度:用于作业调度时,考虑的是哪个作业先到达后备队列;用于进程调度时,考虑的是哪个进程先到达就绪队列
- 是否可抢占:非抢占式的算法
- 优缺点:
- 优点:公平,算法实现简单;
- 缺点:排在长作业(进程)后面的短作业需要等待很长时间,带权周转时间很大,对短作业来说用户体验不好,即对长作业有利,对短作业不利
- 是否会导致饥饿:不会
例子:
短作业优先(SJF)
- 算法思想:追求最少的平均等待时间,最少的平均周转时间,最少的平均带权周转时间
- 算法规则:最短的作业/进程优先得到服务(所谓最短,指要求服务时间最短)
- 用于作业/进程调度:既可用于作业调度,又可用于进程调度。用于进程调度时称为“短进程优先”SPF算法(shortest process first)
- 是否可抢占的:SJF和SPF是非抢占式的算法,但是也有抢占式的版本→最短剩余时间优先算法(SRTN,shortest remaining time next)
- 优缺点:
- 优点:”最短的“平均等待时间,平均周转时间
- 缺点:不公平,对短作业有利,对长作业不利,可能产生饥饿现象,另外,作业/进程的运行时间是由用户提供的,并不一定真实,不一定能做到真正的短作业优先
- 是否会导致饥饿
例子:非抢占式:
抢占式:
注:
- 题目为特别说明,默认非抢占式
- 抢占式的短作业/进程优先调度算法的平均等待时间,平均周转时间最少;在所有进程都几乎同时到达/所有进程同时可运行的情况下,SJF算法的平均等待时间,平均周转时间最少
高响应比优先(HHRN,highest response ratio next)
算法思想:综合考虑作业/进程的等待时间和要求服务的时间
算法规划:在每次调度时先计算各个作业/进程的响应比,选择响应比最高的作业/进程为其服务
响应比=(等待时间+要求服务时间)/要求服务时间
用于作业进程调度:既可以用于作业调度,也可以用于进程调度
是否可抢占:非抢占式的算法,因此只有当前运行的进程/作业主动放弃处理机时,才需要调度,才需要计算响应比
优缺点:
- 优点:综合考虑了等待时间和运行时间(要求服务时间),等待时间相同时,要求服务时间短的优先(SJF的优点);要求服务时间相同时,等待时间长的优先(FCFS的优点),对于长作业来说,随者等待时间越来越长,其响应比也会越来越大,从而避免了长作业饥饿的问题
是否会导致饥饿:不会
例子:
FCFS,SJF,HRRN调度算法相关推荐
- FCFS、SJF、HRRN调度算法
文章目录 FCFS.SJF.HRRN调度算法 知识总览图 先来先服务(FCFS,First Come First Serve) 短作业优先(SJF,Shortest Job First) 对FCFS和 ...
- 【操作系统 - 1】先来先服务FCFS和短作业优先SJF进程调度算法
操作系统系列 学习至此,发现很多学了但很久没用的知识,久而久之,慢慢遗忘.等哪天还需要的话,却发现已经忘得差不多了,即使整理了文档(word等),还是得从头再学一遍.读研第一学期,发现很多东西都可以从 ...
- FCFS,SJF以及PSA进程调度算法效率的比较
实现 下面是用 Java 程序比较 FCFS,SJF 和 PSA 算法效率的示例代码: FCFS 思路 对于 FCFS 算法,我们可以定义一个 Process 类来表示一个进程,其中包含进程名称.到达 ...
- 《操作系统》实验一:先来先服务FCFS和短作业优先SJF进程调度算法
[实验题目]:先来先服务FCFS和短作业优先SJF进程调度算法 [实验学时]:4学时 [实验目的] 通过这次实验,加深对进程概念的理解,进一步掌握进程状态的转变.进程调度的策略及对系统性能的评价方法. ...
- FCFS,SJF以及PSA进程调度算法的比较
实现 下面是用 Java 程序比较 FCFS,SJF 和 PSA 算法效率的示例代码: FCFS 思路 对于 FCFS 算法,我们可以定义一个 Process 类来表示一个进程,其中包含进程名称.到达 ...
- 操作系统(五):FCFS/SJF/非抢占优先级/RR
操作系统(五):FCFS/SJF/非抢占优先级/RR 一.题目1(书上170页5.7) 5.4 5.4 Consider the following set of processes, with th ...
- 最短作业优先(SJF)调度算法
最短作业优先(SJF)调度算法将每个进程与其下次 CPU 执行的长度关联起来.当 CPU 变为空闲时,它会被赋给具有最短 CPU 执行的进程.如果两个进程具有同样长度的 CPU 执行,那么可以由 FC ...
- 计算机操作系统学习之FCFS、SJF和HRRN调度算法
文章目录 一.FCFS算法(先来先服务) 二.SJF算法(短作业优先算法) 1.不可抢占的情况(即SJF算法) 2.可抢占的情况(最短剩余时间优先算法 即SRTN算法) 3.优缺点 4.补充 三.HR ...
- FCFS、SJF、HRRN调度算法以及时间片轮转、优先级调度算法、多级反馈队列算法总结
先来先服务(FCFS) 算法思想 主要从"公平"角度考虑 算法规则 按照作业/进程到达的先后顺序进行服务 用于作业/进程调度? 用于作业调度时,考虑哪个作业先到达后备队列: 用于进 ...
最新文章
- 分表分库之一:分布式数据库的常见用法
- Spring Boot 全局异常处理
- mysql的FIQ怎么安装_MySQL数据库设计总结
- 无忧计算机c语言二级题库,干货for计算机等级考试题库:二级C语言试题
- 白盒测试和黑盒测试_黑盒测试与白盒测试的比较
- android 百度移动搜索 url 参数,百度刷站内快排算法参数-百度搜索URL参数比较详解...
- python文件读写方法手机_python读取文件—txt文件常用读写操作
- 稳压电源的设计与制作_电子爱好设计的直流可调压电源电路,太完美了,有图,亲测可用...
- 无连接可靠传输_这些RF连接器设计原则你应该多了解一下
- mysql5.7 glibcxx_3.4.15_Percona Server安装可能出现的问题 version `GLIBCXX_3.4.15' not found ...
- mysql逻辑读高影响_运维日记| MySQL/Oracle深度解析之一:逻辑读
- 编译Sqoop2错误解决
- 为什么win10开热点后电脑没有网络?
- opnet中SOCKET接口开发
- web留言板整蛊网站愚人节
- Java多线程并发笔记01 对象锁 类锁 对象锁的同步和异步 脏读
- cogs1439 货车运输 LCA
- 你应该知道的一些微信技巧
- 导入FBX格式的模型至UE4
- 强化学习入门项目 Spinning up OpenAI (1) installation
热门文章
- .NET PPT控件 Spire.Presentation for .NET V2.8发布 | 附下载
- Android开发之Canvas rotate方法释疑
- Linux下高效编写Shell——shell特殊字符汇总
- 超级计算机TOP500、green500、graph500最新排名(2012.11)
- C#正则表达式编程(四):正则表达式
- Spring的IoC解析
- vue返回上级并且携带数据_前后端分离之后端返回用户角色信息(vueelementadmin+laravel)...
- markdown 图片居中_Markdown入门指南【我为什么要推荐你学习Markdown?】
- freebsd mysql删_FreeBSD增加、删除以及管理用户(适用Linux)
- 海康威视面试-java应用开发