磁盘结构

  • 盘面(Platter):一个磁盘有多个盘面;
  • 磁道(Track):盘面上的圆形带状区域,一个盘面可以有多个磁道;
  • 扇区(Track Sector):磁道上的一个弧段,一个磁道可以有多个扇区,它是最小的物理储存单位,目前主要有 512 bytes 与 4 K 两种大小;
  • 磁头(Head):与盘面非常接近,能够将盘面上的磁场转换为电信号(读),或者将电信号转换为盘面的磁场(写)
  • 制动手臂(Actuator arm):用于在磁道之间移动磁头;
  • 主轴(Spindle):使整个盘面转动。

磁盘调度算法

读写一个磁盘块的时间的影响因素有:

  • 旋转时间(主轴转动盘面,使得磁头移动到适当的扇区上)
  • 寻道时间(制动手臂移动,使得磁头移动到适当的磁道上)
  • 实际的数据传输时间

其中,寻道时间最长,因此磁盘调度的主要目标是使磁盘的平均寻道时间最短。

1. 先来先服务

FCFS, First Come First Served

按照磁盘请求的顺序进行调度。

优点是公平和简单。缺点也很明显,因为未对寻道做任何优化,使平均寻道时间可能较长。

2. 最短寻道时间优先

SSTF, Shortest Seek Time First

优先调度与当前磁头所在磁道距离最近的磁道。

虽然平均寻道时间比较低,但是不够公平。如果新到达的磁道请求总是比一个在等待的磁道请求近,那么在等待的磁道请求会一直等待下去,也就是出现饥饿现象。具体来说,两端的磁道请求更容易出现饥饿现象。

3. 电梯算法

SCAN

电梯总是保持一个方向运行,直到该方向没有请求为止,然后改变运行方向。

电梯算法(扫描算法)和电梯的运行过程类似,总是按一个方向来进行磁盘调度,直到该方向上没有未完成的磁盘请求,然后改变方向。

因为考虑了移动方向,因此所有的磁盘请求都会被满足,解决了 SSTF 的饥饿问题。

操作系统:了解一下磁盘结构相关推荐

  1. 【操作系统】磁盘结构

    磁盘结构 磁盘概述 磁盘格式化 引导控制块 分区控制块 磁盘坏块 磁盘阵列 磁盘概述 磁盘是由表面涂有磁性物质的金属或塑料构成的圆形盘片,通过一个称为磁头的导体线圈从磁盘中存取数据. 在读/写磁盘期间 ...

  2. 操作系统:磁盘结构和磁盘块号计算方法

    磁盘结构 磁盘存储器是一种高速.大容量的随机存储设备 用于存放大量的文件和数据 磁盘设备由一组盘组组成: 包括一张或多张盘片,每张盘片分正反两面 每面可划分成若干磁道各磁道之间留有必要的间隙 每条磁道 ...

  3. 操作系统实验4—磁盘调度

    操作系统实验4-磁盘调度 文章目录 操作系统实验4-磁盘调度 实验描述 设计思路 上机代码 测试结果 心得体会 实验描述 实验内容: 编写一个磁盘调度程序,模拟操作系统对磁盘的调度. 实验目的: 本实 ...

  4. 【转】2.2【MySQL】运行原理(二):InnoDB 内存结构、磁盘结构及update sql执行过程分析

    前一篇讲完了查询流程,我们是不是再讲讲更新流程.插入流程和删除流程?在数据库里面,我们说的update操作其实包括了更新.插入和删除.如果大家有看过MyBatis的源码,应该知道Executor里面也 ...

  5. 【学习笔记】第四章——文件 II(基本操作、文件保护、文件系统层次结构、磁盘结构、磁盘调度算法)

    文章目录 一. 文件:基本操作.保护与层次结构 1)基本操作 2)文件保护 3)文件系统的层次结构 结合例子,便于理解 二. 磁盘 1)磁盘结构 2)调度算法 1. 一次磁盘读/写所需时间 2. 调度 ...

  6. Linux7/CentOS7 磁盘结构与分区

    管理磁盘和文件系统都是管理员的重要工作之一.所以我们在这里要格外注意. 下边,我们就来一起来看看管理磁盘和文件系统的一些基础命令. 想要学会管理磁盘.首先我们要了解磁盘,我们首先就来说说"磁 ...

  7. 磁盘结构,原理,MBR,文件系统,分区,swap,加密,raid,配额

    一,磁盘的组成结构: 磁盘主要由盘片.机械手臂.磁头与主轴马达,而数据的写入其实是在盘片上面 图1-–传统磁盘结构 图2--传统磁盘剖面图 解析:图2中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线 ...

  8. 【Linux】磁盘结构/文件系统/软硬链接/动静态库

    文章目录 前言 一.磁盘结构 1.磁盘的物理结构 2.磁盘的存储结构 3.磁盘的逻辑结构 二.文件系统 1.对 IO 单位的优化 2.磁盘分区与分组 3.对分组的具体管理方法 4.文件操作 三.软硬链 ...

  9. 磁盘结构和工作原理以及LBA与CHS

    硬盘(英语:Hard Disk Drive,缩写:HDD) 硬盘(英语:Hard Disk Drive,缩写:HDD)是电脑上使用坚硬的旋转盘片为基础的非易失性存储器,它在平整的磁性表面存储和检索数字 ...

最新文章

  1. linux上安装spark_hadoop_java_scala
  2. 网易云携手美云智数掀起企业移动信息化发展新浪潮
  3. 什么是加载因子/负载因子/装载因子
  4. 访问SAP C4C Business Configuration工作中心时遇到的错误信息
  5. JavaWeb学习总结(二)——JSP中的九个内置对象
  6. 全景图解高铁数据,谁是最有潜力的高铁城市?
  7. 大学生体测成绩判断c语言_体育改革瞄准高校,体测不过关可能真的毕不了业了...
  8. 信息学奥赛C++语言:数字卡片
  9. Sql Server和oracle的函数区别总结
  10. Could not find resource——mybatis 找不到映射器xml文件
  11. python3 小工具
  12. Java常用日志框架介绍(转载)
  13. syslinux引导硬盘linux,使用SysLinux引导Linux系统
  14. Trimmed 稳健均值估计与 中位数-中位数配对偏差法估计标准差——理论与 Python 实现
  15. 小象学院 nlp 自然语言处理项目实战
  16. 百度竞价点击价格怎么算
  17. Js获取上传文件的绝对路径时总是的到C:\fakepath\+文件名称 解决方案
  18. python同步远程文件夹_python pyinotify 监控远程文件夹来实现即时全量同步
  19. 相关性分析热点图_车联网数据分析(二):驾驶行为分析
  20. 小米pro显示无服务器,【解决】小米WiFi放大器pro连接不稳定/连接后无网络的问题!!!...

热门文章

  1. 对网站的代码采集实例
  2. java web接收POST数据
  3. (转)iOS 各种控件默认高度(图示)
  4. Unity3D之预设
  5. Oracle数据库的一些常用命令
  6. 一分钟了解 Matlab求两个矩阵的相关程度corr2
  7. Linux编程——入门级Makefile文件编写
  8. linux efi不要boot目录,LINUX下EFIBOOTMGR的使用,删除UEFI主板多余启动项和添加启动项-Go语言中文社区...
  9. spark如何防止内存溢出_Spark 理论基石 —— RDD
  10. python作用域-Python之函数作用域