【学习笔记】第二章——处理机调度的概念、层次、时机、切换过程 调度方式、调度算法的指标

文章目录

  • 一. 概念 & 层次
      • 1. 高级调度(作业调度)
      • 2. 中级调度(内存调度)
          • 挂起态 & 七状态模型
      • 3. 低级调度(进程调度)
      • 4. 三种调度的对比联系 && 总结
  • 二. 时机、切换过程 & 调度方式
      • 1. 进程调度的时机
      • 2. 进程调度的方式
      • 3. 进程的切换与过程
      • 4. 总结
  • 三. 调度算法的指标
      • 1. CPU 利用率
      • 2. 系统吞吐量
      • 3. 周转时间
      • 4. 等待时间
      • 5. 响应时间
      • 总结

一. 概念 & 层次

  • 为何需要调度:多任务情况下,需要规则决定任务处理顺序
  • 处理机调度:从就绪队列中,以某算法选择一进程获取CPU运行。
    在这里插入图片描述

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

  • 决定从外存调入内存的顺序
  • 从外存后备队列的作业中挑选作业,分配资源并建立相应进程(建立PCB)。
  • 主要是调入的问题
    在这里插入图片描述

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

  • 虚存与内存间的调度,决定挂起的进程重调入内存。
  • PCB 常驻内存,不会被调到外存。
  • 挂起状态
  • 频率比高级调度要高
    在这里插入图片描述
挂起态 & 七状态模型
  • 五状态模型 + 就绪挂起 & 阻塞挂起 = 七状态模型
  • 挂起是到外存,阻塞还在内存
    在这里插入图片描述

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

  • 从就绪队列选取进程,分配 CPU 的调度
  • 最基本的调度,频率最高
    在这里插入图片描述

4. 三种调度的对比联系 && 总结

  • 任务、发生地、频率与对进程状态的影响
    在这里插入图片描述
  • 总结:
    在这里插入图片描述

二. 时机、切换过程 & 调度方式

1. 进程调度的时机

  • 主动放弃 CPU:正常终止、异常终止 && 等待 I/O 阻塞
  • 被动放弃 CPU:时间片用完、有更紧急事务 && 更高优先级进程进入队列
  • 不能进行进程调度与切换的情况:处理中断、OS内核程序临界区 && 原子操作过程中。
    在这里插入图片描述
  • 临界资源:同一时间段只允许一进程访问。各进程需要互斥访问临界资源
  • 临界区:访问临界资源的代码段
  • 普通临界区:可以进行处理机调度,不会直接影响OS内核的管理工作
  • 操作系统内核程序临界区:不能进行处理机调度,有可能影响内核其他管理工作
  • 见图中两绿色部分对比
    在这里插入图片描述

2. 进程调度的方式

  • 非剥夺:简单、开销小,但无法处理紧急任务(公平)
  • 剥夺:可以优先处理紧急任务(非公平)
    在这里插入图片描述

3. 进程的切换与过程

  • 进程调度(狭义):从就绪队列中选中一个要运行的进程
  • 进程调度(广义):包含进程选择 & 进程切换两个步骤。
  • 进程切换:一进程让出CPU给另一进程的过程。
  • 进程切换的过程主要完成了:保存原进程数据 && 恢复新进程数据
  • 进程切换是有代价的,过于频繁调度、切换会使整个系统的效率降低
    在这里插入图片描述

4. 总结

在这里插入图片描述

三. 调度算法的指标

1. CPU 利用率

  • 利用率 = 工作时间 / 总时间
    在这里插入图片描述

2. 系统吞吐量

  • 系统吞吐量 = 作业完成总量 / 总时间
    在这里插入图片描述

3. 周转时间

  • def:作业提交给系统开始,到完成为止的时间间隔。
  • 平均周转时间 && 周转时机:用户关心自己的单个作业,而操作系统关心整体平均。
    在这里插入图片描述
  • 带权:相对于周转时间,多除了作业实际运行时间

这边感觉理解得不太好,抽空再补补课

在这里插入图片描述

4. 等待时间

  • 进程而言:建立后等待被服务的时间之和
  • 作业而言:相对于进程,还要加上作业在外存后备队列中等待的时间
    在这里插入图片描述

5. 响应时间

在这里插入图片描述

总结

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/504341.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

formdata上传文件_关于multipart/formdata上传文件

最近在做一个文件上传的开放接口,用到Content-Type: multipart/form-data这种请求类型,特地做了一些研究和记录。在最初的 http协议中,并没有上传文件方面的功能。RFC1867为 http协议添加了这个能力。常见的浏览器,如 Microsoft I…

【学习笔记】第二章——调度算法:先来先服务FCFS、短作业优先SJF、高响应比HRRN

文章目录一. 先来先服务(FCFS)二. 短作业优先(SJF)三. 高响应比优先1. 对前面两种算法的思考2. 描述四. 一、二、三总结例子都要手动写一遍哦~这三个是供早期的批处理系统使用的算法 一. 先来先服务(FCFS&a…

【学习笔记】第二章——时间片轮转RR、优先级调度、多级反馈队列调度算法

文章目录一. 时间片轮转二. 优先级调度三. 多级反馈队列调度算法四. 总结一. 时间片轮转 公平,轮流给进程提供时间片只用于进程调度(只有进程才能被分配时间片)抢占式,由时钟装置发出时钟中断来通知**缺点:**高频的进…

laravel 分词搜索匹配度_elasticsearch基础笔记9-elasticsearch 词项全文搜索

es的核心功能就是搜索和分析。那么我们看看搜索相关内容1、搜索机制在进入搜索之前,会对查询体根据情况进行分析和处理。2、有哪些常用搜索类型全文查询 词项查询 复合查询 嵌套查询 位置查询 特殊查询等。我们常用到的就是前三种,学起来简单&#xff0c…

【学习笔记】第二章——进程同步、进程互斥、进程互斥的硬件/软件实现方法

文章目录一. 进程同步 && 进程互斥四个区域四个原则总结:二. 进程互斥的软件实现方法1)单标志法2)双标志先检查法3)双标志后检查法4)Peterson 算法总结三. 进程互斥的硬件实现方法1)中断屏蔽方法2&…

python的数据结构包括那些_python算法与数据结构-什么是数据结构

一、什么是数据结构 数据结构,直白地理解,就是研究数据的存储方式。 我们知道,数据存储只有一个目的,即为了方便后期对数据的再利用,就如同我们使用数组存储 {1,2,3,4,5} 是为了后期取得它们的值,因此&…

seo自动发外链_一套节约成本全网营销方案-小小课堂SEO培训教程

很多公司都是由一些小型工作室或个人工作室慢慢发展而来的,在这过程中,人员、资金链、资源、项目等因素一旦出现问题,可能会导致项目失败,那么在互联网上投入的资金如果过多,可能都是白白打了水漂。今天,小…

python 支付宝个人账单_金融支付财务融合业务-实践分享1:订单、账单、交易流水、账套知识解构、原理解析...

本文作者从实际工作实践出发,结合案例等分享了电商金融支付财务融合中的基本概念和相关原理解析,包括:订单、账单、交易流水和账知识解构,供大家一同参考和学习。从事电商、进销存、金融、支付、财务的产品同学,是否对…

【学习笔记】第二章——信号量机制 用信号量实现互斥、同步

文章目录一. 信号量机制整型信号量记录型信号量例子:总结二. 用信号量实现互斥、同步互斥同步前驱总结一. 信号量机制 信号量:一个用于表示系统中某种资源的数量的变量(整数 or 记录型变量)一对原语:wait(S) 和 signa…

opengl 安装_一步步学OpenGL(34) -《GLFX,一个OpenGL效果库》

教程 34GLFX,一个OpenGL效果库原文: http://ogldev.atspace.co.uk/www/tutorial34/tutorial34.htmlCSDN完整版专栏: https://blog.csdn.net/cordova/article/category/9266966理论介绍这篇教程暂时先不继续探索OpenGL的特性和3D技术了,来介绍…

【LeetCode笔记】剑指 Offer 60. n个骰子的点数(Java、动态规划)

文章目录题目描述代码 & 思路1. 二维数组(方便理解)2. 一维数组(节约空间)二刷鸽了好久的打题博客~要继续补起来了! 今天不打题,明天变垃圾 QAQ 题目描述 一眼就想先暴力枚举、或者递归呀&…

java 根据圆心计算圆弧上点的经纬度_【控制测量学】-高斯投影正算公式以及java代码

正算公式(将经纬度转化为坐标):java代码(附有源代码和修改后的代码):源代码:/** * 由经纬度反算成高斯投影坐标 * * param longitude * param latitude * return */ public static double[] GaussToBLToGauss( double longitude, double latitude) { …

【LeetCode笔记】剑指 Offer 59 - II. 队列的最大值(Java、辅助队列)

文章目录题目描述思路 && 代码二刷题目描述 恢复打题的第二天打卡~ 可以说是这道最小栈的兄弟题目了,很相似总体思路还是一样,靠空间换时间~也就是借助辅助队列 思路 && 代码 这篇题解的动图做得很好&#xff…

redis setnx原子性_不支持原子性的 Redis 事务也叫事务吗?

文章收录在 GitHub JavaKeeper ,N线互联网开发必备技能兵器谱 假设现在有这样一个业务,用户获取的某些数据来自第三方接口信息,为避免频繁请求第三方接口,我们往往会加一层缓存,缓存肯定要有时效性,假设我们…

【LeetCode笔记】剑指 Offer 67. 把字符串转换成整数 (Java、字符串)

文章目录题目描述思路 && 代码二刷题目描述 老阅读题了,感觉这道题有点类似写业务接口。 思路 && 代码 首先,把情况划分一下: 非正常值,直接给 0(这个实际上可以划分到2的代码中)可取…

详细描述三个适于瀑布模型的项目_信息系统项目管理师-第二三章:信息系统项目管理基础与立项管理2...

三、信息系统项目的生命周期1、项目生命周期的定义—项目从启动、组织与准备、执行到结束所经历的一系列阶段2、★项目生命周期的特征①成本与人力投入在开始时较低,在工作执行期间达到最高,并在项目快要结束时迅速回落②风险与不确定性在项目开始时最大,并在项目的整个生命周期…

【LeetCode笔记】剑指 Offer 64. 求1 + 2 + ... + n (Java、限制语法、二刷)

文章目录题目描述思路 && 代码注释版代码(方便理解):无注释版代码(方便背诵 )二刷题目描述 鬼鬼,又到了我最喜欢的戴着脚镣跳舞环节。 讲道理,我觉得这类题应该整个归纳啥的。。&#x…

虚拟dom_从0到1实现一个虚拟DOM

来源 | https://segmentfault.com/a/1190000021331850要构建自己的虚拟 DOM,需要知道两件事。你甚至不需要深入 React 的源代码或者深入任何其他虚拟 DOM 实现的源代码,因为它们是如此庞大和复杂——但实际上,虚拟 DOM 的主要部分只需不到 50…

【LeetCode笔记】剑指 Offer 31. 栈的压入、弹出序列 (Java、栈)

文章目录题目描述代码 && 思路二刷题目描述 打卡第三天!加油加油~ 数据结构笔试题貌似也会考 ,不过考法不一样,有点规律。总的来说还是挺有意思的,我们直接来看代码吧~ 代码 && 思路 O(…

【LeetCode笔记】剑指 Offer 20. 表示数值的字符串(Java、字符串)

文章目录题目描述思路 && 代码题目描述 呃…比较恶心的一道题,需要读好题,分完情况再下手有看到dalao用有限状态机来做,不过这边还是直接用了我自己的做法 思路 && 代码 ps:这里没有参考题解的写法&#xff…