【系统架构设计师】计算机组成与体系结构 ⑩ ( 磁盘管理 | 磁盘移臂调度算法 | 先来先服务算法 | 最短寻道时间优先 | 扫描算法 | 循环扫描算法 )

news2024/11/24 16:03:58

文章目录

  • 一、磁盘移臂调度算法
    • 1、磁盘移臂调度算法简介
    • 2、先来先服务算法
    • 3、最短寻道时间优先
    • 4、扫描算法
    • 5、循环扫描算法
  • 二、最短寻道时间优先算法示例






一、磁盘移臂调度算法




1、磁盘移臂调度算法简介


磁盘 数据块读取 的 性能 主要由

  • 寻道时间
  • 旋转延时

决定 ;

旋转延时 是 硬盘的 盘面 持续保持匀速旋转 实现的 , 这是 硬盘 本身的硬件特性 , 该延时没有规律 ;

磁头的寻道时间 , 是可以使用算法进行优化的 , 该算法称为 " 移臂调度算法 " ,

" 磁盘移臂调度算法 " 在 磁盘调度器 Disk Scheduler 中实现 , 用于 用于优化磁盘访问时间 , 以最小化 磁头移动时间 和 优化磁盘 访问顺序 ;


" 磁盘移臂调度算法 " 有如下几种 :

  • 先来先服务 , FCFS , First Come First Served
  • 最短寻道时间优先 , SSTF , Shortest Seek Time First
  • 电梯算法 Elevator Algorithm / 扫描算法 SCAN
  • 循环扫描算法 , C-SCAN , Circular SCAN

2、先来先服务算法


先来先服务 , FCFS , First Come First Served , 谁先申请 , 就先让谁访问磁盘数据 , 这是最简单的磁盘调度算法 , 按照请求到达的顺序依次处理 ;

先来先服务 FCFS 算法 的 缺点是 磁头在磁盘上无规律地移动 , 造成平均等待时间较长 , 效率很低 ;


下面是 先来先服务 FCFS 算法 示例 ,

左侧的 ① ② ③ ~ ⑨ 是 申请的 顺序序号 ,

初始状态下 , 磁头位于 100 号磁道 ;

第 ① 个数据请求 , 申请访问 55 号磁道 , 根据 先来先服务 的 算法原则 , 先为 申请 ① 服务 , 需要从 100 号磁道 移动到 55 号磁道 , 移动了 45 个磁道 ;

第 ② 个数据请求 , 申请访问 58 号磁道 , 当前处于 55 号磁道 , 移动 3 个磁道 , 去访问 58 号磁道 ;

最终访问完 ① ~ ⑨ 这 9 个数据请求 , 平均每个数据请求 寻道长度为 55.3 个 ;

在这里插入图片描述


3、最短寻道时间优先


最短寻道时间优先 , SSTF , Shortest Seek Time First , 每次选择 最靠近当前磁头位置的请求 进行处理 , 以最小化寻道时间 ;

最短寻道时间优先 SSTF 算法 相比于 先来先服务算法 在效率上是有提升的 ;

最短寻道时间优先 SSTF 算法的 缺点是 可能会因为 频繁访问某些区域 而 导致其他区域的请求 长时间等待 , 可能产生饥饿现象 ;


下面的案例是 最短寻道时间优先 算法示例 :

初始位置时 100 号磁道 ,

先后出现了 ① ~ ⑨ 九个数据访问请求 , 磁头寻道 并不会按照 请求顺序 进行寻道 ,

而是按照 磁道 距离进行 寻道 ;

离 初始位置 100 号磁道 , 最近的 被访问磁道号 是 90 , 那么优先访问 90 号磁道 , 跨越 10 个磁道 , 访问完毕后 , 处于 90 号磁道位置 ;

距离 90 号磁道 最近的是 58 号磁道 , 跨越 32 个磁道 , 访问完毕后 , 处于 58 号磁道位置 ;

距离 58 号磁道 最近的请求是 55 号磁道 , 跨越 3 个磁道 , 访问完毕后 , 处于 55 号磁道 ;

以此类推 …

访问完 最后一个数据后 , 9 个寻道平均寻道个数是 27.5 个磁道 ;

在这里插入图片描述


4、扫描算法


扫描算法 SCAN 又叫做 电梯算法 Elevator Algorithm ;

扫描算法 SCAN 的运行机制是 模拟电梯的运行方式 , 沿着一个方向移动磁头 , 直到遇到 最边缘的请求 , 然后改变方向移动 ;

扫描算法 SCAN 适合处理相对均匀分布的请求 , 能有效减少平均等待时间 ;


5、循环扫描算法


循环扫描算法 , C-SCAN , Circular SCAN , 沿着一个方向移动磁头 , 直到 磁头 移动到 最边缘 , 当到达最边缘时直接跳到另一边的最边缘 , 形成一个循环 ;

循环扫描算法 适合处理特定模式的请求分布 , 可以减少平均等待时间 ;





二、最短寻道时间优先算法示例



初始状态下 , 磁头位于 15 号 磁道 / 柱面 , 下面是 6 个数据访问请求 , 以及数据所在的磁道 , 采用 最短寻道时间优先算法 , 计算其 数据访问 序列 ;


磁道 就是 柱面 , 二者含义相同 ;

磁头号 是 磁头在不同 盘面 的编号 , 一个硬盘 有 6 个盘面 , 则每个盘面上都有一个磁头 ;

扇区 是 同一个磁道 的 不同角度区域 , 磁头在磁道上以后 , 靠 磁盘旋转 切换扇区 ;


一般在软考中 , 只需要关注 磁道 即可 , 不需要关注 磁头号 和 扇区号 这两个迷惑选项 ;

在这里插入图片描述

计算过程 :

初始状态 , 磁头位于 15 号磁道 ;

  • 当前离 15 号 最近的 磁道 是 ① 和 ⑤ 请求 , 都在 12 磁道中 ;
  • 先 响应 ① 和 ⑤ 请求 , 具体先响应那个 , 无从判断 , 可能是 ①⑤ , 也可能是 ⑤① ;

响应完 ①⑤ 请求后 , 当前处于 12 号磁道 , 离 12 号磁道最近的是 ② 和 ④ 请求的 19 号 磁道 ;

然后访问 ③ 号请求的 23 号磁道 ,

最后访问 ⑥ 号请求的 28 号磁道 ;

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

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

相关文章

软设之UML图中的用例图

UML图中用例图 用例图描述一组用例,参与者及它们之间的关系 关系包括: 包含关系,扩展关系,泛化关系 用例建模的流程: 识别参与者 合并需求获得用例 细化用例描述 调整用例模型

《C语言》认识数据类型和理解变量

🌹个人主页🌹:喜欢草莓熊的bear 🌹专栏🌹:C语言基础 目录 前言 一、数据类型的介绍 1.1 字符型 1.2 整形 1.3 浮点型 1.4 布尔类型 1.5 各种数据类型的长度 1.5.1 sizeof操作符 1.5.2 数据类型长度…

【React Hooks原理 - useCallback、useMemo】

介绍 在实际项目中,useCallback、useMemo这两个Hooks想必会很常见,可能我们会处于性能考虑避免组件重复刷新而使用类似useCallback、useMemo来进行缓存。接下来我们会从源码和使用的角度来聊聊这两个hooks。【源码地址】 为什么要有这两个Hooks 在开始…

2.4章节python中字符串类型

在Python中,字符串(String)是一种基本的数据类型,用于表示文本信息。字符串可以包含字母、数字、标点符号或任何Unicode字符。Python中的字符串是不可变的,这意味着一旦创建了字符串,就不能更改字符串中的字…

无人机运营合格证及无人机驾驶员合格证(AOPA)技术详解

无人机运营合格证及无人机驾驶员合格证(AOPA)技术详解如下: 一、无人机运营合格证 无人机运营合格证是无人机运营企业或个人必须获得的证书,以确保无人机在运营过程中符合相关法规和标准。对于无人机运营合格证的具体要求和申请…

TF-IDF计算过程一步步推导详解含代码演示

相关概念 TF-IDF TF-IDF(Term Frequency–Inverse Document Frequency)是一种用于资讯检索与文本挖掘的常用加权技术。TF-IDF是一种统计方法,用以评估一个字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在…

交叉测试的优点和缺点!

交叉测试在软件测试中具有重要的地位和作用。通过交叉测试,可以提高软件质量、提升用户体验、增加测试覆盖率、提高测试效率以及满足市场需求和竞争优势。因此,在软件开发和测试过程中,应充分重视交叉测试的实施和应用。 以下是对其优缺点的…

STM32/GD32驱动步进电机芯片TM2160

文章目录 官方概要简单介绍整体架构流程 官方概要 TMC2160是一款带SPI接口的大功率步进电机驱动IC。它具有业界最先进的步进电机驱动器,具有简单的步进/方向接口。采用外部晶体管,可实现高动态、高转矩驱动。基于TRINAMICs先进的spreadCycle和stealthCh…

el-input-number 点击加减只能加一次

el-input-number 点击加减只能加一次 <el-input-number v-model"editForm.quantity" placeholder"请输入下单数量(店均)" change"quantityChangeFn"></el-input-number>需要在方法里面加 this.$forceUpdate() quantityChangeFn(val…

Postman保存API返回的token以全局使用的整个流程

1、 调通获取token的接口&#xff0c;包含传递参数的类型&#xff0c;和输入密码是否需要md5加密&#xff0c;根据接口的要求&#xff0c;传入数据 2、 查看接口响应的报文&#xff0c;可以看到token的有效时间&#xff0c;token的类型&#xff0c;里面的access_token就是想要获…

如何利用代理IP打造热门文章

作为内容创作者&#xff0c;我们都知道&#xff0c;有时候地理限制和访问障碍可能会成为我们获取新鲜素材和优质信息的障碍。使用代理IP&#xff0c;正是突破这些限制的好方法&#xff01; 1. 无缝获取全球视野 如果你还在苦恼看不到其他地区的热点文章&#xff0c;你可以尝试…

react 自定义 年-月-日 组件,单独选择年、月、日,并且产生联动

自定义 年-月-日 组件 code import { useState } from react function Year_Month_Date() {const [yearList, setYearList] useState([])const [monthList, setMonthList] useState([])const [dateList, setDateList] useState([])const [currentYear, setCurrentYear] u…

【C++】 解决 C++ 语言报错:Invalid Cast

文章目录 引言 无效类型转换&#xff08;Invalid Cast&#xff09;是 C 编程中常见且严重的错误之一。当程序试图进行不合法或不安全的类型转换时&#xff0c;就会发生无效类型转换错误。这种错误不仅会导致程序崩溃&#xff0c;还可能引发不可预测的行为。本文将深入探讨无效…

PLL和CDR的内部结构及其区别

比较PLL和CDR的内部结构及其区别&#xff1a; 基本结构&#xff1a; PLL&#xff08;相位锁定环&#xff09;&#xff1a; 相位检测器环路滤波器压控振荡器&#xff08;VCO&#xff09;分频器&#xff08;可选&#xff0c;用于频率合成&#xff09; CDR&#xff08;时钟数据恢复…

jmeter-beanshell学习2-beanshell断言

继续写&#xff0c;之前写了获取变量&#xff0c;设置变量&#xff0c;今天先写个简单点的断言。 一般情况用响应断言&#xff0c;就挺好使&#xff0c;但是自动化还要生成报告&#xff0c;如果断言失败了&#xff0c;要保存结果&#xff0c;只能用beanshell处理&#xff0c;顺…

昇思25天学习打卡营第17天(+1)|Diffusion扩散模型

1. 学习内容复盘 本文基于Hugging Face&#xff1a;The Annotated Diffusion Model一文翻译迁移而来&#xff0c;同时参考了由浅入深了解Diffusion Model一文。 本教程在Jupyter Notebook上成功运行。如您下载本文档为Python文件&#xff0c;执行Python文件时&#xff0c;请确…

LLM - 神经网络的训练过程

1. 对于回归问题&#xff0c;用损失函数来计算预测值和真实值的差异&#xff0c;一种常用的公式是如下图所示(Mean Square Error)&#xff0c;如果损失函数的值越小说明神经网络学习越准确&#xff0c;所以神经网络训练目标是减小损失函数的值&#xff0c; 2. 对于分类问题&…

MaxKB开源知识库问答系统发布v1.3.0版本,新增强大的工作流引擎

2024年4月12日&#xff0c;1Panel开源项目组正式发布官方开源子项目——MaxKB开源知识库问答系统&#xff08;github.com/1Panel-dev/MaxKB&#xff09;。MaxKB开源项目发布后迅速获得了社区用户的认可&#xff0c;成功登顶GitHub Trending趋势榜主榜。 截至2024年7月4日&…

相关技术 太阳能热水器循环水泵制作技术

网盘 https://pan.baidu.com/s/1oAKwUEGkKnEgxE-F4znKow?pwdidxd 双温区蓄能供热型太阳能热水系统及其工作方法.pdf 双罐叠压节能恒温型太阳能热水机组.pdf 基于傅科电流的循环式风能热水器.pdf 基于太阳能利用的建筑冷热电联产系统及工作方法.pdf 基于太阳能和热泵的双蓄式热…

计算机网络之以太网

上文内容&#xff1a;总线局域网以及冲突的解决方法 1.以太网的起源 1.1起源 60年代末期&#xff0c;夏威夷大学Norman Abramson等研制ALOHA无线网络系统,实现Oahu岛上的主机和其它岛及船上的读卡机和终端通信&#xff1b; 出境信道地址&#xff1a;主机到终端&#xff1…