机械硬盘如何工作

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

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

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

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

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

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

如何协调工作?

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

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

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

相关推荐
存在的五月雨几秒前
JVM 入门学习笔记(内存模型 / GC / 类加载机制)
jvm·笔记·学习
什么半岛铁盒2 分钟前
LangChain常用组件学习
学习·microsoft·langchain
happymaker06265 分钟前
SpringBoot学习日记——DAY04(整合junit,myBatis)
spring boot·学习·junit
Restart-AHTCM9 分钟前
LangChain学习之模型 I/O 与输出解析器 (Output Parsers)(3/8)
前端·学习·langchain
windawdaysss9 分钟前
离线学习SQL和数据库的工具及其部署
数据库·sql·学习
吃好睡好便好9 小时前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
nashane9 小时前
HarmonyOS 6学习:CapsLock键失效诊断与长截图完整实现指南
学习·华为·harmonyos
xian_wwq11 小时前
【学习笔记】AGC协调控制系统概述
笔记·学习
憧憬成为java架构高手的小白12 小时前
docker学习笔记(基于b站多个视频学习)【未完结】
笔记·学习
辰海Coding13 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构