11-短作业优先算法与思想

这篇具有很好参考价值的文章主要介绍了11-短作业优先算法与思想。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

短作业优先 (SJF Shortest job First)

算法思想

  1. 追求最少的平均等待时间,最少的平均周转时间,最少的平均平均带权周转时间

算法规则

1.最短的作业/进程优先得到服务(所谓"最短",是指要求服务时间最短)

用途和模式

  1. 即用于作业调度,也可以用于进程调度
  2. 用于进程调度时候,称为"短进程优先(SPF Shortest Process First算法)"

是否可抢占

1.SJF和SPF是非抢占式算法。但是也有抢占式的版本—最短剩余时间优先算法(SRTN Shortest Reamining Time Next)
2.最短剩余时间优先算法:每当有进程假如就绪队列改变时就需要调度,如果新到达的进程剩余时间比当前运行的进程剩余时间更短,则由新进程抢占处理机,当前运行进程重新回到就绪队列。另外,当一个进程完成时也需要调度

例题

1.非抢占式

抢占式短进程优先算法怎么算,操作系统,服务器,linux,运维,系统安全,系统架构

2.抢占式

抢占式短进程优先算法怎么算,操作系统,服务器,linux,运维,系统安全,系统架构

3.做题注意点

  1. 如果题目中未特别说明,所提到的"短作业/进程优先算法"默认是非抢占式的
  2. 很多书上会说"SJF调度算法的平均等待时间,平均周转时间最少"。这种说法是不全面的
  3. 应该修改为"在所有进程同时可运行时,采用SJF调度算法的平均等待时间、平均周转时间最少"
  4. 如果不加上述前提条件,则应该说"抢占式的短作业/进程优先算法(最短剩余时间优先 SRNT)的平均等待时间、平均周转时间最少"
  5. 虽然严格来说,SJF的平均等待时间、平均周转时间并不一定最少,但相比于其他算法(如FCFS),SJF仍然能够获得较少的平均等待时间、平均周转时间

优缺点

优点

  1. “最短的” 平均等待时间、平均周转时间

缺点

  1. 不公平 对短作业有利、对长作业不利。
  2. 可能产生饥饿现象
  3. 另外作业/进程的运行时间的由用户提供的,并不一定真实,不一定能做到真正的短作业优先。

是否会导致饥饿

会,如果源源不断有短作业/进程到来,可能会导致长作业/进程长时间得不到服务,产生"饥饿现象"。如果一直得不到服务,则称为"饿死"文章来源地址https://www.toymoban.com/news/detail-735486.html

到了这里,关于11-短作业优先算法与思想的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【STM32】进阶(一):抢占式优先级和响应式优先级(NVIC_PriorityGroupConfig)

    【STM32】STM32单片机总目录 STM32(Cortex-M3)中每个中断源都有两级优先级:抢占式优先级(pre-emption priority)和子优先级(subpriority),子优先级也叫响应式优先级。 望文知义,就是优先级高的可以抢占优先级的中断。 具有高抢占式优先级的中断可以在具有低抢占式优先级的中断

    2024年02月12日
    浏览(55)
  • 操作系统:实验一:进程调度实验——最高优先数优先的调度算法以及先来先服务算法 源码

    一、实验目的 (1)了解进程实体PCB结构; (2)理解进程不同状态和状态之间的转换过程; (3)掌握优先数的调度算法和先来先服务算法; 二、实验内容与要求 设计一个有 N个进程共行的进程调度程序 四、实验步骤 (1)实验设计 进程调度算法: 采用最高优先数优先的调

    2024年02月06日
    浏览(44)
  • 【操作系统】-- 先来先服务算法(FCFS)、短作业优先算法(SJF)、高响应比调度算法(HRRN)

    1、算法思想 主要从 公平 的角度考虑。 2、算法规则 按照 作业/进程 到达的 先后顺序 进行服务。 3、是否可抢占 非抢占式算法。 4、是否可导致饥饿 不会导致饥饿。 5、优缺点 优点:公平、算法实现简单。 缺点:对长作业有利,对短作业不利。 6、例题 例:各进程到达就绪

    2024年02月02日
    浏览(48)
  • 【进程调度】基于优先级的轮转调度C++实现算法

    在计算机科学领域, 进程调度是操作系统中一个关键的组成部分,它负责协调系统中各个进程的执行顺序,以最大程度地提高系统资源利用率 。在这篇博客中,将深入探讨基于优先级的轮转调度算法,该算法结合了进程的 优先级 和 时间片轮转 的思想,以实现高效的任务执

    2024年01月20日
    浏览(46)
  • 操作系统进程调度算法——先来先服务、时间片轮转、优先级调度算法

    (1)算法内容: 先来先服务调度算法是一种最简单的调度算法,可以应用于高级调度也可以运用于低级调度。高级调度时,FCFS调度算法按照作业进入后备作业队列的先后顺序选择作业进入内存,即先进入后备作业队列的作业被优先选择进入内存,然后为选中的作业创建进程

    2023年04月21日
    浏览(41)
  • 【操作系统】基于动态优先级的进程调度算法-C语言实现(有代码)

    本文章将会介绍如何编写动态优先级的进程调度算法,并使用从语言实现。 一、什么是动态优先级的调度算法        进程运行一个时间片后,如果进程已占用 CPU时间已达到所需要的运行时间,则撤消该进程;如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行

    2024年02月06日
    浏览(49)
  • 操作系统:用C语言实现FCFS(先来先服务),SJF(短作业抢占)和RR(时间片轮转,时间片=1)

       加深对进程调度的理解,熟悉进程调度的不同算法,比较其优劣性。 假如一个系统中有5个进程,它们的到达时间内如表1所示,忽略I/O以及其他开销时间。若分别按先来先服务(FCFS)、抢占的短作业优先(SJF)、时间片轮转(RR,时间片=1)进行CPU调度,请按照上述三个

    2024年02月04日
    浏览(56)
  • 【Linux进程篇-----进程优先级】

    1.基本概念 cpu 资源分配的先后顺序,就是指进程的优先权(priority) .优先权高的进程有优先执行权利。配置进程优先权对多任务环境的 Linux 很有用,可以改善系统性能。还可以把进程运行到指定的 CPU 上,这样一来,把不重要的进程安排到某个 CPU,可以大大改善系统整体性能

    2024年02月08日
    浏览(38)
  • Linux—进程状态、僵尸进程、孤独进程、优先级

    📘北尘_ :个人主页 🌎个人专栏 :《Linux操作系统》《经典算法试题 》《C++》 《数据结构与算法》 ☀️走在路上,不忘来时的初心 为了弄明白正在运行的进程是什么意思,我们需要知道进程的不同状态。一个进程可以有几个状态(在 Linux内核里,进程有时候也叫做任务)

    2024年02月05日
    浏览(47)
  • 【Linux】进程状态、进程优先级和进程切换

    作者简介:დ旧言~,目前大二,现在学习Java,c,c++,Python等 座右铭:松树千年终是朽,槿花一日自为荣。 目标:了解冯诺依曼体系结构与操作系统,掌握Linux的进程 毒鸡汤:一花凋零荒芜不了整个春天,一次挫折也荒废不了整个人生。 望小伙伴们点赞👍收藏✨加关注哟💕

    2024年02月04日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包