存储设备原理

存储设备原理,第1张

机械硬盘 简介


机械硬盘中较为重要的几个部件为盘片,盘面,磁头,磁道,扇区,簇,柱面.

机械硬盘是由多个盘片组成,每个盘片还有两个盘面(类似于光盘).并且带有一个读写磁头,负责读写数据.

机械硬盘中的盘片由多个同心圆构成,每个圆称为一个磁道,每个磁道之间有一定的间隔.在盘片旋转时,磁头在磁道上读写数据.

从同心圆心向外划出几条间隔,可以将同心圆分割成不同的弧段,将每一个弧段成为一个扇区(也成为块),是磁盘读写数据的最小单位.

而簇则是将多个相邻扇区组合在一起的逻辑概念,它是部分文件系统管理的直接对象,一个簇只能由一个文件使用,一个文件可以使用多个簇.

柱面是在整个机械硬盘中,每个盘片相同位置磁道所组成的集合,这一概念存在的意义是为了方便磁盘的寻址.

读写原理 物理层面

如上图所示,磁头主要依靠电磁原理写入数据.
磁头按照与记录介质之间的接触与否,分为接触式磁头与浮动式磁头.

在磁带和软盘中,采用的是软质载体,因此只能使用接触式磁头.而在硬盘等硬质载体中使用接触式磁头会导致磁盘磨损,发热而降低寿命,因此采用浮动式磁头.磁盘读写时,盘片高速旋转,带动盘面表层气流形成气垫,使磁头浮起而不直接接触盘片.

当磁头到达需要写数据的地址时,根据对应bit产生不同的电流,被电流磁化的铁芯将磁层磁化.当这部分介质移出磁头作用区域后,产生足够强的剩磁.

在读取时,磁头线圈自身不带电,在通过含有剩磁的磁层时,由于磁通量变化而产生感应电动势.根据感应电动势的正负确定原始数据的bit.

逻辑层面

由于扇区是数据读写的最小单元,因此读取数据时需要能够定位扇区所在位置.为了达到这一目的需要一个三维数据(柱面号,磁头号,扇区号)即可定位一个扇区位置.

存储容量

上述定位模式支持的硬盘容量有限,用8bit来存储磁头地址,用10bit来存储柱面地址,用6bit来存储扇区地址,而一个扇区共有512Byte,这样使用寻址一块硬盘最大容量为256 * 1024 * 63 * 512B = 8064 MB(若按1MB=1000000B来算就是8.4GB)

并且考虑,如果每个扇区存储的数据量一定,越接近圆心的扇区面积越小,其存储密度越高,而离圆心远的则存储密度低.为了避免这种"大面积小数据"的情况,现在磁盘更多采用同密度盘片.

同密度盘片,意味着内外磁道上的扇区数量不同,扇区数量增加,容量增加,原始的模式定位寻址已不再适用.
在LBA地址中,地址不再表示实际硬盘的实际物理地址(柱面、磁头和扇区).LBA编址方式将CHS这种三维寻址方式转变为一维的线性寻址,它把硬盘所有的物理扇区的C/H/S编号通过一定的规则转变为一线性的编号.

逻辑扇区号LBA的公式:
LBA(逻辑扇区号)=磁头数 × 每磁道扇区数 × 当前所在柱面号 + 每磁道扇区数 × 当前所在磁头号 + 当前所在扇区号 – 1

读写时间

从发起一个读取请求,到读出所有的数据所花费的时间为 寻道时间 + 延迟时间 + 传输时间
寻道时间 : 磁头在读写信息前需要先移动到目标扇区所在的磁道,这一部分也是磁盘调度算法所优化的时间.
延迟时间 : 磁头移动到对应磁道后,还需要等待盘片旋转到对应扇区.延迟时间只与磁盘转速有关.
传输时间 : 从磁盘中读取或写入数据所经历的时间.与写入的字节数量以及磁盘转速有关.
除了对寻道时间的优化,还可以对延迟时间进行优化.

当读取完一个扇区后,需要经过短暂的时间才能进行下一次的读取.假设需要读取一个盘面上两个连续的扇区,在盘面上对扇区进行间隔式的排布,可以在读取完一个扇区后,经过短暂的时间由于磁盘自转跳过物理上相邻的扇区,而到达下一个逻辑上相邻的扇区.以此来减少延迟时间.

另外对同柱面不同盘面,读写连续的盘面的逻辑记录也能减少延迟时间.

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/716669.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存