机械硬盘如何工作

机械硬盘有三个核心组件:盘片,磁头和磁道。

盘片:存储数据的实际载体。表面涂有一层极薄的磁性材料,数据就是通过改变这些微小颗粒的磁极方向来记录0和1。一个磁盘中通常不止一张盘片,而是多层叠在一起。每张盘片的正反两面都可以存数据。

盘片由主轴电机带动,以恒定的速度高速旋转。

磁头:磁头负责读写盘片上的数据。由于盘片是双面的,所以磁头的数量通常为盘片数量*2。所有磁头都固定在机械臂上。

磁道:磁道是无数个独立的同心圆,从最外圈开始向圆心编号,最外圈是0磁道。

扇区:一个磁道太长了,如果不切分很难管理。每个磁道被切分为多个小段,每一段叫一个扇区。扇区是硬盘读写的最小物理单位。扇区是硬盘读写的最小物理单位,读写一个磁盘块,本质上就是读写几个连续的扇区。

如何协调工作?

当CPU命令硬盘读取某个文件时,硬盘需要做两个动作,这两个动作决定了硬盘I/O的慢:

第一步:寻道。磁头原本停在内圈,现在数据在外圈。机械臂必须摆动,把磁头移动到指定的磁道上方。耗时大约3到10ms,这是最慢的一步。

第二步:旋转延迟。磁头已经到位,但是磁头只能原地不动,等盘片旋转,把那个扇区到磁头底下才能读取数据,这是另一个瓶颈,大约平均耗时4ms。

相关推荐
世人万千丶1 天前
Flutter 框架跨平台鸿蒙开发 - 恐惧清单应用
学习·flutter·华为·开源·harmonyos·鸿蒙
yuzhuanhei1 天前
Visual Studio 配置C++opencv
c++·学习·visual studio
此刻觐神1 天前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习
憧憬从前1 天前
算法学习记录DAY2
学习
babe小鑫1 天前
会计岗位学习数据分析的价值分析
学习·数据挖掘·数据分析
千枫s1 天前
电脑vm虚拟机kali linux安装shannon
学习·网络安全
zjnlswd1 天前
tkinter学习案例--笔记代码
笔记·学习
咬_咬1 天前
go语言学习(基本数据类型)
开发语言·学习·golang·数据类型
山甫aa1 天前
List 容器 -----C++的stl学习
开发语言·c++·学习
无聊大侠hello world1 天前
Yu-AI-Agent 项目(AI 恋爱大师智能体) · 学习笔记
人工智能·笔记·学习