首页 > 编程语言 >磁盘调度算法

磁盘调度算法

时间:2024-12-16 13:21:24浏览次数:7  
标签:LOOK SCAN 磁道 调度 算法 方向 磁盘

磁盘调度算法

image


一、一次磁盘读/写操作需要的时间

image

  1. 寻道时间 TS
  2. 延迟时间 TR
  3. 传输时间 Tt

补充理解(上下的1.2.3.分别对应):

  1. 现在的磁盘移动一个磁道大约需要 0.2ms,磁臂启动时间约为 2ms

    (磁盘的物理移动时间耗费较大,后续算法应尽量减少磁盘的物理移动)

  2. 1/r 就是转一圈需要的时间。找到目标扇区平均需要转半圈,因此再乘以 1

    磁盘的典型转速为 5400转/分,或 7200转/分

  3. 每个磁道要可存 N 字节的数据,因此 b 字节的数据需要 b/N 个磁道才能存储。而读/写一个磁道所需的时间刚好又是转一圈所需要的时间 1/r

    这里理解为要读的数据占某磁道的一部分,算就算这部分的百分比乘读完整个磁道的时间

二、磁盘调度算法

(一)FCFS 先来先服务算法 First Come First Served

image

(二)SSTF 最短寻找时间优先 Shortest Seek Time First

image

(三)SCAN 扫描算法(电梯算法)

image

(四)LOOK 调度算法

image

(五)C-SCAN 循环扫描算法

image

(六)C-LOOK 调度算法

image

——重点:比较

算法 特点 备注
FCFS先来先服务 根据进程请求访问磁盘先后顺序 /
SSTF最短寻找时间优先 优先处理离当前磁头最近的磁道 贪心思想的体现;可能导致“饥饿”
SCAN扫描(电梯算法) 磁头到边缘才能改变移动方向,沿途处理请求 其实更像是”公交车“,真要说的话LOOK才像是电梯;不会导致“饥饿”
C-SCAN循环扫描 事先规定好一个方向,磁头只有在这个方向上移动才处理请求。到了这个方向的末端立刻调转方向回到起点返回途中不处理任何请求 是对SCAN算法对各个位置磁道的响应频率不平均缺点的改进
LOOK 磁头在某个方向上移动,当该方向上前面没有任何请求时可直接调转方向,不用非得到边缘才转向 是对SCAN的优化
C-LOOK 磁头在某个方向1上移动,当该方向1上前面没有任何请求时可直接调转至方向2,且回到离方向2末端最近的请求作为起点,不用非得到边缘才转向 是对C-SCAN的优化

若题目中无特别说明,则将 SCAN 看作 LOOK ,将 C-SCAN 看作 C-LOOK(都看为改进后的版本)(不需要到尽头)

标签:LOOK,SCAN,磁道,调度,算法,方向,磁盘
From: https://www.cnblogs.com/Wind730/p/18609874/disk-scheduling-algorithm-2bumun

相关文章

  • 磁盘的管理
    磁盘的管理‍​​‍一、磁盘初始化此处联系第4.-2节文件系统的全局结构(布局)(一)低级格式化(物理格式化)划分扇区​​(二)分区分区​​(三)逻辑格式化创建文件系统,初始化存储空间管理需要的数据结构等​​‍二、引导块​​​​理解:就是原本整个自举程序直接装在ROM......
  • 【机器学习与数据挖掘实战】案例03:基于k近邻算法的非侵入式电力负荷监测与分解的电力
    【作者主页】FrancekChen【专栏介绍】⌈⌈⌈机器学习与数据挖掘实战案例⌋......
  • H7-TOOL自制Flash读写保护算法系列,为凌欧LKS32MC45x/MC05x/MC08x制作使能和解除算法,支
    说明:很多IC厂家仅发布了内部Flash算法文件,并没有提供读写保护算法文件,也就是选项字节算法文件,需要我们制作。实际上当前已经发布的TOOL版本,已经自制很多了,比如已经支持的兆易创新大部分型号,新唐的大部分型号等。但是依然有些厂家还没自制,所以陆续开始为这些厂家提供读写保护支......
  • 前端算法小白日刷三题13
    今天主要学归并排序、快速排序和二分查找归并排序//归并排序functionmergeSort(arr){if(arr.length<2)returnarr;letmid=Math.floor(arr.length/2)//letleft=arr.slice(0,mid)//letright=arr.slice(mid)function......
  • 算法之数组
    数组二分查找给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。题解:如果等于nums[middle],返回middle;否则返回left或者low。 移除元素在排序数组中查找target的开始位置和结束位置。二分法不可能会......
  • 算法之链表
    链表移除链表元素对于链表来说,删除头节点和中间节点具体操作不一样是因为想要删除一个中间节点,必须要知道该节点的前一个节点,而头节点没有前一个节点。  使用虚拟头节点,统一节点的删除操作,用一个虚拟头节点的next指向head,这个链表中的每个元素都会有前一个节点,从而对所有节点......
  • 当前,inux中的内存页面调度算法
    用户:请详细介绍,目前linux中内存页面调度算法的相关信息讯飞星火:Linux内存页面调度算法是操作系统内存管理中的核心组件之一,它负责在有限的物理内存资源中高效地管理不同进程的页面,以减少页面置换的频率并提高系统性能。以下是对Linux内存页面调度算法的详细介绍:###1.概述Lin......
  • 计算机毕业设计项目源码 大数据深度学习 基于聚类算法实现的二手房价分析及可视化系统
    标题:基于聚类算法实现的二手房价分析及可视化系统基于聚类算法实现的二手房价分析及可视化系统可以具备以下主要功能:数据采集与预处理:从各大二手房平台抓取房源信息,包括房价、面积、房型、位置等属性。数据清洗,处理缺失值、异常值和重复数据。数据标准化和归一化,以便于后......
  • 计算机毕设源码 大数据深度学习 基于聚类算法实现的房屋数据分析及可视化系统
    标题:基于聚类算法实现的房屋数据分析及可视化系统基于聚类算法的房屋数据分析及可视化系统主要功能可以包括以下几个方面:数据采集与预处理:收集房屋销售相关的数据,如房屋价格、面积、房间数量、位置、建造年份等。数据清洗,处理缺失值、异常值,进行标准化或归一化。聚类分析......
  • 毕业设计:python车牌识别系统 CNN算法 卷积神经网络网络 深度学习 tensorflow(源码)✅
    python车牌识别系统CNN算法卷积神经网络网络深度学习tensorflow(源码)1、项目介绍技术栈:Python语言、CNN算法、tensorflow和keras、深度学习、opencv、pyqt5图形界面2、项目界面(1)上传图像进行车牌识别1(2)上传图像进行车牌识别2(3)上传图像进行车牌识别3(4)上传视......