操作系统中的调度算法

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

处理机调度层次:

1.高级调度(作业调度/)

2.中级调度(内存调度/)

3.低级调度(进程调度/)

一、作业调度算法

1.先来先服务算法(FCFS)

2.短作业优先算法(SJF)

3.优先级调度算法(PR)

4.高响应比调度算法(PR特例)

操作系统中的调度算法

5.时间片轮转算法(RR)

6.多级队列调度算法

7.基于公平原则的调度算法(主要考虑调度的公平性)

补:实时调度算法:针对实时任务

实现实时调度算法的基本条件:

1.提供必要的信息

如开始截止时间,完成截止时间、处理时间、资源、优先级

2.系统处理能力强

操作系统中的调度算法

ps:处理时间ci,周期时间pi

3.采用抢占式调度机制

4.采用快速切换机制

对中断具有快速的响应能力;

快速的任务分派能力

实时调度算法:

1.最早截止时间优先调度算法(EDF)

2.最低松弛度优先算法(LLF)

二、连续分配存储管理方式--动态分区分配算法(第五章:存储器管理)

1.顺序式动态分区分配算法:

首次适应算法:链首开始顺序查找,直到找到一个大小能满足要求的空闲分区为止。

缺点:低址部分留下许多小碎片

循环首次适应算法:从上次找到的空闲分区的下一个空闲分区开始查找,直到找到一个能满足要求的空闲分区。

优点:空闲分区分布均匀,减少了查找开销。

缺点:缺乏大的空闲分区。

最佳适应算法:空闲分区按照容量从小到大的顺序链接,搜索整个序列,找到适合条件的最小分区进行分配。

优点:用最小的空间满足要求。

缺点:留下许多难已利用的小碎片。

最坏适应算法:空闲分区按照容量从大到小的顺序链接搜索整个序列,寻找最大的分区进行分配。

优点:分割后空闲块仍为较大分块。

缺点:缺乏大的空闲块。

2.索引式动态分区分配算法:

快速适应算法:

伙伴系统:主要用于多处理机系统中。

哈希算法:建立哈希函数,构造一张以空闲区大小为关键字的哈希表,该表的每一个表项对应一个空闲分区链表的头指针。进行分配时,根据空闲区大小,通过计算哈希函数,得到哈希表中的位置,找到对应的空闲分区链表。

优点:查找快速

补:连续分配存储管理方式---动态重定位分区分配算法

类似于动态分区分配算法,增加了紧凑功能

紧凑:通过移动内存中的作业位置,把原来多个小分区拼接成一个大分区的方法,也叫拼接。

离散分区分配存储管理方式

操作系统中的调度算法

 操作系统中的调度算法

补:局部性原理(存储器管理)

 时间局部性:如果程序的某个指令被执行,那么不久后这条指令很有可能再次被执行;如果某个数据被访问,不久后这个数据很可能再次被访问(因为程序中存在大量循环)。

空间局部性:一旦程序访问了某个存储单元,不久后其附近的存储单元很有可能被访问(因为很多数据在内存中都是连续存放的)

页面置换算法(第六章:虚拟存储器)

1.最佳置换算法(OPT):

操作系统中的调度算法

2.先进先出置换算法(FIFO):

操作系统中的调度算法

只有FIFO算法会出现Belady异常

Belady异常---当为进程分配的物理块数增多时,缺页次数不减反增的现象。

原因:虽实现简单,但是与进程实际运行时的规律不适应,因为先进入的页面可能是最常使用的页面。

 3.最近最少使用算法(LRU):

选择最近最久未使用的页面予以淘汰

操作系统中的调度算法

 LRU实现需要专门的硬件支持,所以虽然性能好(性能最接近最佳适应算法),但实现困难,开销大。

4.最少使用置换算法(LFU):

选择最近使用最少的页面进行淘汰。

5.clock算法

LRU近似算法,又称最近未用(NRU)或二次机会页面置换算法

最近未用(NRU)或二次机会页面置换算法

最近未用(NRU)或二次机会页面置换算法

操作系统中的调度算法

6.改进的时钟置换算法 :

操作系统中的调度算法

补:抖动

抖动:一个进程的页面经常换入换出。

原因:系统为进程分配的物理块太少。

磁盘调度算法

1.先来先服务(FIFO):

操作系统中的调度算法

2.最短寻找时间优先 (SSTF):

操作系统中的调度算法

 3.扫描算法(SCAN)

操作系统中的调度算法

4.LOOK调度算法(SCAN算法的改进)

操作系统中的调度算法

5.循环扫描算法(C-SCAN) :

操作系统中的调度算法

I/O

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法

操作系统中的调度算法文章来源地址https://www.toymoban.com/news/detail-495793.html

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

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

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

相关文章

  • 操作系统中的调度算法

    处理机调度层次: 1.高级调度( 作业 调度/) 2.中级调度( 内存 调度/) 3.低级调度( 进程 调度/) 一、作业调度算法 1.先来先服务算法(FCFS) 2.短作业优先算法(SJF) 3.优先级调度算法(PR) 4.高响应比调度算法(PR特例) 5.时间片轮转算法(RR) 6.多级队列调度算法 7.基

    2024年02月10日
    浏览(30)
  • 编写C程序模拟实现单处理机系统中进程调度,实现对多个进程的调度模拟,要求采用多级反馈队列调度算法进行模拟调度。(江西师范大学)

    编写C程序模拟实现单处理机系统中进程调度,实现对多个进程的调度模拟,要求采用多级反馈队列调度算法进行模拟调度。 数据结构设计:PCB:结构体;就绪队列:每个节点为进程PCB;进程状态 具体调度算法:FCFS、SJF、PR;涉及多种操作:排序、链表操作 程序输出设计:调

    2024年02月04日
    浏览(44)
  • 操作系统调度算法--高响应比优先调度算法解析

      高响应比优先调度算法(Highest Response Radio Next,HRRN)是一种对CPU中央控制器响应比的分配的算法。HRRN是介于FCFS(先来先服务算法)与SJF(短作业优先算法)之间的折中算法。FCFS算法所考虑的只是作业等待时间,而忽视了作业的运行时间(类似我们在生活中排队买东西)。

    2023年04月18日
    浏览(28)
  • 操作系统页面调度算法

    实验项目名称:操作系统页面调度算法 一、实验目的和要求 目的:对操作系统中使用的页面调度算法进行设计。 要求:对教材中所讲述的几种页面调度算法进行深入的分析,通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的

    2024年02月04日
    浏览(32)
  • 操作系统——调度算法

    本文的主要内容是调度算法的介绍,包括先来先服务(FCFS)、最短时间优先(SJF)、最高响应比优先(HRRN)、时间片轮转(RR)、优先级调度和多级反馈队列这六种方法,这些调度算法会从其算法思想、算法规则、该方法用于作业调度还是进程调度、进程调度的方式(抢占式和非抢占式

    2023年04月14日
    浏览(27)
  • 【操作系统】调度算法

    目录 🏫基本概念 🏥先来先服务(FCFS, First Come First Serve) 🏩短作业优先(SJF, Shortest Job First) 🍆细节 ⛪️高响应比优先(HRRN,Highest Response Ratio Next) 🌇时间片轮转(RR,Round-Robin) 🏰时间片大小的影响 🗼优先级调度算法 🌄多级反馈队列调度算法 🌈实例  🗽多级队列调度

    2024年02月08日
    浏览(34)
  • 「 操作系统 」聊聊进程调度算法

    图文并茂!谈谈进程调度那些算法 Cone 进程调度/页面置换/磁盘调度算法 xiaolinCoding 图解经典的进程调度算法 飞天小牛肉 进程调度算法是操作系统中非常重要的一部分,它决定了操作系统中各个进程的执行顺序和时间片。在单核CPU下,任何时刻都只可能有一个程序在执行,比

    2024年02月04日
    浏览(50)
  • 【操作系统之进程调度算法习题】

    在一个具有三道作业的批处理系统中,作业调度采用先来先服务(FCFS) 调度算法,进程调度采用 短作业优先调度算法。现有如下所示的作业序列, 注意 1.具有三道作业的批处理系统指的是内存最多能有3个作业; 2.表格样式是考试时候的格式,练习时候也按这个格式练习各作业的周

    2024年02月11日
    浏览(39)
  • 操作系统磁盘调度算法(c++)

    先来先服务这个没什么好说了,按顺序来就是了。将需要访问的磁道序列直接作为算法的访问序列,然后将每次移动的磁道数量记录下来。 最短寻道时间优先,每次执行完,看一下离自己最近的哪条磁道有任务,就移动过去执行。每次寻找下一次访问的磁道号时,都遍历磁道

    2024年02月04日
    浏览(30)
  • 操作系统之调度算法(学习笔记)

    周转时间 :从作业被提交给系统开始,到作业完成为止的这段时间间隔称为作业周转时间。( 周转时间=作业完成时间-作业提交时间 ) 平均周转时间 :作业周转总时间 / 作业个数( 平均周转时间=(作业1周转时间+作业2周转时间+……作业n周转时间)/n ) 服务时间 :进程在

    2024年02月03日
    浏览(31)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包