位置: IT常识 - 正文

进程调度算法有哪些(进程调度算法例题分析)

编辑:rootadmin

推荐整理分享进程调度算法有哪些(进程调度算法例题分析),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:进程调度算法有多种, ________ 不是进程调度算法,进程调度算法有哪些,进程调度算法有哪些类型,进程调度算法有哪些,进程调度算法有哪些,常用的进程调度算法有,进程调度算法有多种, ________ 不是进程调度算法,进程调度算法有多种, ________ 不是进程调度算法,内容如对您有帮助,希望把文章链接给更多的朋友!

《进程调度是什么》一节讲到在多任务操作系统中,整个进程调度机制可能包含 3 种进程调度程序,分别是长期调度程序、短期调度程序和中期调度程序。

根据指定的调度策略(算法),长期调度程序可以从用户发布的诸多任务中挑选出一个任务,并将其移入内存;中期调度程序可以从外存中处于就绪或者等待状态的诸多进程中挑选出一个进程,并将其移入内存;短期调度程序可以从内存中处于就绪状态的诸多进程中挑选出一个进程,并将 CPU 资源分配给它。

不同种类的操作系统,其采用的任务(进程)调度算法也不相同。本节,我们将带您了解一些常见的调度算法。

1、先来先服务调度算法

先来先服务调度算法简称 FCFS 调度算法,既适用于任务调度,也适用于进程调度,是最简单的一种调度算法,广泛应用于批处理操作系统中。

顾名思义,FCFS 算法的核心调度思想是:最早发布的任务最先得到调度,最早请求 CPU 资源的进程最先获得 CPU 资源。FCFS 算法属于非抢占式调度算法,即只有获得 CPU 资源的进程执行完毕后,其它进程才能执行。

FCFS 算法看似很公平,但对于一些在长任务(进程)之后进入内存的短任务(进程)来说,它们需要等待足够长的时间,直到长任务执行完毕后才能获得 CPU 资源。因此在单位时间内,FCFS 算法调度的进程数量较少(吞吐量较低)。

FCFS 算法很少单独使用,而是和其它一些算法搭配使用。例如在基于优先级的调度算法中,对于具有同样优先级的多个任务或者进程,需要进一步采用 FCFS 算法确定它们的执行顺序。

2、最短作业优先调度算法

最短作业优先调度算法(简称 SJF 算法)既适用于进程调度,也适用于任务调用,属于非抢占式调度算法。

SJF 算法的核心调度思想是:执行时间最短的任务或者进程最先得到调度。也就是说,用户发布的所有任务中执行时间最短的任务会优先得到调度,就绪队列中执行时间最短的进程会优先获得 CPU 资源。

使用最短作业优先调度算法,可以保证操作系统在同一时间内处理的任务或进程数最多,即吞吐量大于其它的调度算法。但是,如果系统中不断有执行时间短的新任务进入,那么执行时间长的任务将永远得不到执行的机会。

3、最高响应比优先调度算法进程调度算法有哪些(进程调度算法例题分析)

FCFS 算法只考虑了每个任务(进程)的等待时间,而未考虑不同任务(进程)的执行时间;SJF 算法正好相反,只考虑了每个任务(进程)的执行时间,而未考虑等待时间。

最高响应比优先调度算法(简称 HRN 算法)对 FCFS 和 SJF 这两种极端的算法做了平衡,它基于每个任务(进程)的等待时间和执行时间,通过比较每个任务(进程)的响应比,谁的响应比最大,就优先得到调度。

任务(进程)响应比的求值公式为:(W+T)/T,其中 W 表示任务(进程)的等待时间,T 表示任务(进程)的执行时间。

HRN 算法的不足之处在于,每次进行任务调度或者进程调度,都要提前计算出每个任务(进程)的响应比,才能挑选出响应比最大的任务或进程,无疑会影响整体的系统效率。

4、轮转法

轮转法是一种抢占式调度算法,只适用于进程调度,无法进行任务调度。

轮转法的调度思想是:将 CPU 资源轮流分配给各个进程使用,每个进程使用固定大小的时间(又称时间片)。对于在时间片内未执行完的进程,调度算法会将它中断并将 CPU 资源分配给下一个进程,直到该进程再次分配到 CPU 资源,它才可以继续执行。

轮转法常用于分时操作系统中。

5、优先级调度法

优先级调度算法是批处理操作系统中最常见的调度算法之一,既适用于进程调度,也适用于任务调度。

所谓优先级调度算法,指的是由用户或者操作系统为每个任务(进程)设定一个优先级,优先级最高的任务(进程)最先得到调度,优先级相同的任务或进程,通常借助 FCFS 算法进一步判断出它们的执行顺序。

任务(进程)的优先级,通常用固定区间内的数字表示,如 0~7 或 0~4095。有的操作系统中,数字越小优先级越低;有的则正好相反,数字越小优先级越高。

使用此方法调度 CPU 时,它可能是抢占式调度算法,也可能是非抢占调度算法。假设新进程的优先级高于当前正在执行的进程,如果调度算法立即将 CPU 资源分配给新进程,则它属于抢占式调度算法;反之,如果调度算法将新进程作为下一个要执行的进程,则它属于非抢占式调度算法。

6、多级队列调度算法

我们知道,进入内存后的进程,其 PCB 会进入就绪队列,等待分配 CPU 资源。

多级队列调度算法的核心思想是,根据各个进程的某些属性(例如所占内存大小、进程优先级、进程类型等),将就绪队列分割成很多队列,同一属性的进程位于同一队列,如下图所示:

图 1 分割就绪队列

通常情况下,不同的队列设定有不同的优先级,优先级越高的队列,其内部的进程会优先执行。至于同一队列中进程的执行顺序,各个队列可以使用不同的调度算法,例如 FCFS 算法,轮转法等。

本文链接地址:https://www.jiuchutong.com/zhishi/277421.html 转载请保留说明!

上一篇:内置管理员无法打开图片解决方法(内置管理员无法激活)

下一篇:电脑输入法无法切换怎么办?(电脑输入法无法输入中文怎么办)

  • 税务局退回个税会计分录
  • 企业资产损失税前扣除管理办法2011215号第46条
  • 税控盘费用抵扣
  • 公司购买手机如何入账
  • 税后平均投资利息怎么算
  • 规划设计合同需要缴纳印花税吗为什么
  • 设备使用率怎么计算公式
  • 退伍士兵增值税减免账务处理
  • 更换电脑后个税信息如何导入
  • 营改增计算举例
  • 主营业务成本计算公式是什么
  • 公司固定资产丢失谁负责
  • 主营业务税金及附加包括印花税吗
  • 货物已到发票未到怎么做账
  • 汇算清缴补交所得税的账务处理小企业会计准则
  • 金融性负债总额是什么
  • 初级备考计划表
  • 税务登记证遗失了怎么注销
  • 增加资产的会计科目
  • 测量仪器进工程成本的什么科目?
  • 增值税留抵税额会计科目
  • fat文件系统包括
  • 出差补助没有发票可以直接入账吗
  • 发生利息收入的分录
  • 公司的贷款过桥怎么办
  • 备用金冲销的会计分录
  • image driver
  • 怎么开通公众号微信公众平台
  • 增量预算对应什么预算
  • 应收账款转让的限制约定
  • PHP:imagecreatefromgd()的用法_GD库图像处理函数
  • 企业的生产环节
  • 留抵税额进项构成比例
  • thinkphp 快速入门
  • 支付运费的会计处理
  • 客户多付款入哪个科目
  • 营改增之前的建筑业税率是多少
  • YII视图整合kindeditor扩展的方法
  • 对于企业无法支付的应付账款
  • opencv实战项目教程
  • 出口退税的一般程序
  • 租房开的发票收的税怎么做账?
  • 如何根据营业执照核定税种
  • 缴纳城镇土地税
  • pycharm cant find main
  • 食堂支出无发票
  • 小企业销售收入分录
  • 投资性房地产成本模式转公允模式差额
  • 平均资产总额与资产总额的关系
  • 对公账户收钱要手续费吗
  • 职工工资加计扣除
  • 二手车置换新车需要什么手续
  • 工会经费计提基数包括奖金吗
  • 用现金购买股票分录
  • 实收资本或股本什么意思
  • 收到科技局研发项目资金计入什么科目
  • 投标保证金退回是不是没中标
  • 小规模物业广告怎么写
  • 财政登记证取消了吗
  • 没有什么费用
  • 未分配利润借方是什么意思
  • 零售商品的经营特点有什么(多选题)
  • sql中的coalesce
  • windowsxp教程
  • 硬盘安装在机箱内,属于主机的组成部分
  • centos无法上网无法ping外网
  • postgres.exe是什么进程 postgres进程查询
  • javascript入门教程
  • javascript对象的属性和方法
  • gridview用法
  • dirsearch批量
  • js日历插件日期选择器
  • jquery关闭当前页面
  • pycharm flask框架
  • 定额发票查询入口在哪里
  • 收到123660的短信是什么意思
  • 农用三轮车免征增值税文件
  • 2023年内蒙古房贷利率
  • 大同税务局官网录取名单
  • 营业执照每个季度申报吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设