位置: 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 转载请保留说明!

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

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

  • iPhone自带型号名称怎么修改(iphone型号名称)

    iPhone自带型号名称怎么修改(iphone型号名称)

  • 怎么隐藏app store的已购买项目(怎么隐藏appstore下载过的软件)

    怎么隐藏app store的已购买项目(怎么隐藏appstore下载过的软件)

  • 苹果搜索页面怎么关闭(苹果搜索页面怎么设置自己想要的)

    苹果搜索页面怎么关闭(苹果搜索页面怎么设置自己想要的)

  • 苹果11屏幕摔碎了怎么办(苹果11屏幕摔碎了原图)

    苹果11屏幕摔碎了怎么办(苹果11屏幕摔碎了原图)

  • 开机00007b蓝屏(开机0000003b蓝屏)

    开机00007b蓝屏(开机0000003b蓝屏)

  • 来源qq空间是什么意思(来源是qq空间的是怎么加的)

    来源qq空间是什么意思(来源是qq空间的是怎么加的)

  • 更新了微信怎么设置深夜模式(更新了微信怎么找不到群)

    更新了微信怎么设置深夜模式(更新了微信怎么找不到群)

  • 电脑卡住了怎么办只有鼠标可以动(电脑卡住了怎么结束进程)

    电脑卡住了怎么办只有鼠标可以动(电脑卡住了怎么结束进程)

  • program files是什么文件夹(program files是什么文件)

    program files是什么文件夹(program files是什么文件)

  • widows是一个什么系统(windows 是一种什么样的软件)

    widows是一个什么系统(windows 是一种什么样的软件)

  • facetime对方挂掉显示什么(facetime通话直接挂断)

    facetime对方挂掉显示什么(facetime通话直接挂断)

  • 手机版本升级对手机有影响吗(手机版本升级对手机有没有好处)

    手机版本升级对手机有影响吗(手机版本升级对手机有没有好处)

  • 新买的华为手机怎么辨别真假(新买的华为手机第一次充电的正确方法)

    新买的华为手机怎么辨别真假(新买的华为手机第一次充电的正确方法)

  • oppor11闪充多少w(oppor11plus闪充多少w)

    oppor11闪充多少w(oppor11plus闪充多少w)

  • ps需要独立显卡吗(电脑主机和显示器怎么安装)

    ps需要独立显卡吗(电脑主机和显示器怎么安装)

  • 苹果8怎么设置自动开关机(苹果8怎么设置动态壁纸)

    苹果8怎么设置自动开关机(苹果8怎么设置动态壁纸)

  • 诺基亚ta1099是什么型号(诺基亚ta1099全新价格多少钱)

    诺基亚ta1099是什么型号(诺基亚ta1099全新价格多少钱)

  • 目录如何自动生成页码(目录如何自动生成页码wps)

    目录如何自动生成页码(目录如何自动生成页码wps)

  • 苹果动态壁纸解决怎么不动(苹果动态壁纸解决怎么不动 - 天气预报)

    苹果动态壁纸解决怎么不动(苹果动态壁纸解决怎么不动 - 天气预报)

  • 小米9指纹识别不灵敏(小米9指纹识别模块)

    小米9指纹识别不灵敏(小米9指纹识别模块)

  • Linux系统下对硬盘分区进行扩容的方法总结(linux对硬件的要求)

    Linux系统下对硬盘分区进行扩容的方法总结(linux对硬件的要求)

  • python里的π怎么输入(python里%s)

    python里的π怎么输入(python里%s)

  • 前端动画实现以及原理浅析(前端动画库)

    前端动画实现以及原理浅析(前端动画库)

  • 农产品一般纳税人开普票免税吗
  • 公司产品的打样费入什么会计科目
  • 支付境外技术服务费代扣代缴所得税账务处理
  • 增值税16点税降到13点,补缴税款怎么算
  • 不动产出租需要缴纳哪些税
  • 企业最常用的业务分录
  • 营业成本利润率降低说明什么
  • 补交前期未开票收入税金本期怎么申报?
  • 汽油税种
  • 运输发票抵税多少个点
  • 一个季度申报一次是什么
  • 个人所得税申报错误如何更正申报
  • 合同开票金额一定等于合同额吗
  • 代购工作室合法吗
  • 策划公司费用怎么算
  • 建筑测量水准仪怎么读数
  • windows10专业
  • 个体工商户年检怎么办
  • 上年度的发票还能红冲吗
  • 维修机器设备买什么好
  • 企业所得税预缴申报
  • 写一段简单的自我介绍
  • 银行承兑汇票开出后多久可以签收
  • 企业法人看病费用能报销吗
  • 预提收入需不需要计提增值税
  • 计提本月固定资产折旧,其中车间折旧额1100
  • 存货跌价准备的分录
  • php autoload用法
  • 支付属于借方吗?
  • 发生广告费的会计分录
  • web开发 python
  • 手把手怎么写
  • typescript和javascript那个更高级
  • 给员工期权和给股票的区别
  • 收到对方退回的现金
  • while循环语法结构
  • 发票校验码二维码看不到了怎么查
  • 销售方开具的红字信息表
  • 差旅费的进项税额需要转出吗
  • 已认证发票被作废
  • 利息收入的纳税调整
  • 配送中心适合哪种类型的企业
  • 织梦模板安装完整教程
  • 预收账款期末余额在借方还是贷方
  • sql2008数据库维护计划
  • 企业出售房屋
  • 发出商品的增值税
  • mysql数据库性能优化方法有哪些
  • 定期定额征收和查账征收的区别
  • 合伙企业怎么建账
  • 估价入库怎么记账
  • 银行承兑汇票是什么意思
  • 对方公司倒闭应收账款,销售需要承担吗
  • 公司把钱打到银行了,银行未打到我工资卡
  • 月末结转销售会计分录
  • 购买工程物资能使现金流量变动吗
  • win8系统打不开设置
  • windowsxp文件
  • windows2008防火墙允许远程桌面
  • freebsd ports安装
  • linux连接ssr
  • windows 进度条
  • linux系统进程管理
  • 怎么看win8.1的版本
  • dns轮询是什么意思
  • linux防病毒措施
  • win10 ug
  • opengl纹理贴图步骤
  • HTML <!DOCTYPE> 标签
  • 什么是自然数
  • 在android的activity活动中
  • python数值计算基础
  • pythonista pygame
  • 类似愤怒小鸟的小游戏
  • unity网络请求
  • 基于Android的人脸门禁系统
  • 供暖配套费
  • 差额征税可以全部抵成本么?
  • 西藏景区门票优惠政策最新
  • 双休日可以拿房产证吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设