IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> 计算机操作系统学习之时间片轮转、优先级调度、多级反馈队列调度算法 -> 正文阅读

[数据结构与算法]计算机操作系统学习之时间片轮转、优先级调度、多级反馈队列调度算法

一.时间片轮转算法

  • 算法规则:轮流让就绪队列中的进程执行一个时间片。若进程未在一个时间片内执行完毕,则将进程重新放到就绪队列队尾进行排队。
  • 用于进程调度(只有作业放入内存建立了相应的进程后,才能被分配处理机时间片)
  • 抢占式的算法(如果进程未在一个时间片内执行完毕,会被强行剥夺处理机使用权)
  • 优点:公平,响应快
  • 缺点:由于高频率的进程切换,会有一定开销。不区分任务的紧急程度
  • 不会导致饥饿
  • 时间片过长时:当每个进程都可以在一个时间片内运行完毕,则会退化成先来先服务算法
  • 时间片过短时:由于高频率的进程切换,系统需要花费大量时间来进行进程切换

二.优先级调度算法

  • 算法规则:每个进程/作业有各自的优先级,调度时选择优先级最高的进程/作业
  • 用于进程和作业调度
  • 非抢占式的情况:只有当前进程主动放弃处理机后,会选择当前已到达并且优先级最高的进程进行执行
  • 抢占式的情况:不仅在进程主动放弃处理机时,每当有新的进程到达就绪队列时,就需要根据优先级进行调度
  • 静态优先级:创建进程时确定,之后一直不变
  • 动态优先级:根据具体情况动态的调整优先级
  • 合理设置优先级
    系统进程优先级高于用户进程
    前台进程优先级高于后台进程
    操作系统更偏好于I/O型进程
  • 优先级调整的时机
    如果进程在就绪队列中等待时间很长时,可以适当提升其优先级
    如果进程占用处理机运行了很长时间时,可以适当降低其优先级
  • 优点:比较灵活,可以优先处理紧急和重要进程
  • 缺点:如果有源源不断的高优先级进程进入就绪队列,则可能出现饥饿

三.多级反馈队列调度算法

  • 算法规则
    (1)首先设置多级就绪队列,各队列的优先级从高到低,时间片从小到大
    (2)新进程到达时先进入第1级队列,按先来先服务原则等待分配时间片。若时间片用完进程还未结束,则将其放入下一级队列队尾。如果已经在最后一级队列,则继续放入最后一级队列队尾
    (3)每次都执行不为空队列中的最高优先级队列中的靠前的进程
    也就是说只有第1~k级队列都为空时,才会执行第k+1级队列中的进程
    (4)如果是被抢占处理机的进程则依旧放入原队列队尾
  • 用于进程调度
  • 抢占式的算法(假设在第3级队列的进程运行过程中第1级队列中进入了一个新的进程,那么新进程会抢占处理机,原来运行的进程进入第3级队列队尾)
  • 优点:对各类进程相对公平;每个新到达的进程都可以很快得到响应;短进程只有较少的时间就可以完成;可灵活的调整对各类进程的偏好程度(比如专门将其放入哪一级队列)
  • 会导致饥饿(如果有短进程源源不断的到达)
  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-11-24 08:12:21  更:2021-11-24 08:14:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/9 16:17:35-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码