转转技术

笔记本硬件系列之硬盘详解

       在转转的业务品类中,笔记本质检业务和硬件息息相关,结合日常工作内容,在本篇内容,一起探讨下对笔记本硬件中硬盘存储器的理解。

一、硬盘的分类

        随着存储技术的不断发展,产品形态的不断迭代,硬盘的种类日益丰富。根据硬盘使用场景、拆卸便利性,可以初步简单分为:

➢可移动式硬盘(Movable):可以随时被取出或者更换

○基于芯片存储的USB闪存盘、软盘;

○基于磁头存储的光盘、移动硬盘;

➢非可移动式硬盘(Fixed):固定在设备内部,无法随时取出,

○机械硬盘(HDD);

○固态硬盘(SSD);

○混合硬盘(SSHD);

分类依据

可移动磁头

固定磁头

可移动盘片

可移动硬盘(软盘)

光盘

(CD/DVD)

不可移动盘片

机械硬盘

(HDD)

固态硬盘

(SSD)

表1、硬盘的分类

二、非可移动式硬盘分类

对于笔记本业务,非可移动式硬盘关联度较大,本文就此类型继续探讨。根据存储介质和工作原理的不同,目前常见的硬盘主要可分为以下几类:

2.1、机械硬盘(HDD,Hard Disk Drive)

机械硬盘是传统的硬盘类型,它通过机械部件的运转来实现数据的存储和读取。其内部包含盘片、磁头、电机等机械结构,数据被记录在涂有磁性材料的盘片上。

机械硬盘的优缺点:

➢机械硬盘的优点:

单位存储容量成本较低,容量选择范围广,从几百 GB 到十几 TB 不等,适合需要大量存储数据且对成本较为敏感的场景,比如数据服务器、个人电脑的大容量数据备份等。

➢机械硬盘的缺点:

由于存在机械运动部件,机械硬盘的读写速度相对较慢,通常在每秒几十到一百多 MB,而且抗震性较差,在受到剧烈震动时容易出现数据损坏或硬件故障的情况。

2.2、固态硬盘(SSD,Solid State Drive)

固态硬盘是基于闪存芯片进行数据存储的硬盘,没有机械运动部件。它采用与 U 盘类似的存储原理,但在性能和结构上进行了大幅优化(如采用多通道并行架构、独立缓存芯片)。

固态硬盘的优缺点:

➢固态硬盘的优点:

✓由于设计原理的不同,固态硬盘的读写速度远快于机械硬盘,通常:

○普通的 SATA 接口固态硬盘读写速度可达到每秒 500-600 MB;

○NVMe 协议的 PCIe 4.0 接口固态硬盘,读写速度甚至能突破每秒 7000 MB;

因为固态硬盘的读写速度快,用于笔记本中极大地提升了开机速度(可压缩至 10 秒内)、软件加载速度(大型软件启动时间缩短 50% 以上)和文件传输速度。

✓固态硬盘抗震性好(可承受 1500G 冲击力);

✓体积小(如 M.2 形态厚度仅 2-3mm)、重量轻(约 5-10g);

✓工作时无机械部件结构运转,固态硬盘的静音性很好;

➢固态硬盘的缺点:

●固态硬盘的单位存储容量成本相对较高(相同容量下价格约为机械硬盘的 3-5 倍);

●存在写入寿命限制(以 TLC 闪存为例,单芯片擦写次数约 1000-3000 次);

虽然通过 SLC 缓存、磨损均衡算法可延长使用寿命,但对于需要超大量写入操作的场景(如服务器日志存储、视频渲染临时文件),仍需谨慎考虑。

2.3、混合硬盘(SSHD,Solid State Hybrid Drive)

混合硬盘,一种结合了机械硬盘和固态硬盘优点的过渡性存储产品。

在机械硬盘的基础上,SSHD集成了一小块闪存芯片(通常为 8-64 GB),来作为高速缓存区域(采用 SLC 或 TLC 闪存)。

混合硬盘通过 “自适应学习算法”,将用户近 24-72 小时内经常访问的数据(如操作系统文件、常用软件、近期打开的文档)自动迁移到高速缓存中,而不常用的数据则存储在机械硬盘的盘片上。

混合硬盘的优缺点:

➢混合硬盘的优点:

既可以利用机械硬盘实现大容量存储(如 1-2TB),又能通过高速缓存提升常用数据的读写速度(常用文件读取速度接近 SATA 固态硬盘),在成本和性能之间取得了一定的平衡(价格仅比同容量机械硬盘高 10%-20%)。

➢混合硬盘的缺点:

混合硬盘的性能提升效果受限于缓存的大小和算法的优化程度(若缓存满后,性能会回落至机械硬盘水平),相比纯固态硬盘,在随机读写性能(IOPS 约为纯 SSD 的 1/5-1/10)和持续高负载场景下的稳定性上仍有较大差距。

目前SSHD市场份额相对较小,主要应用于一些对存储容量和成本有一定要求,同时又希望获得部分性能提升的笔记本电脑(如入门级游戏本)、家用 NAS 等设备中。

三、硬盘的接口和协议

在日常购买硬盘或者搜索相关硬盘资料时,通常各种复杂的参数、名词,整的眼花缭乱,云里雾里,比如M.2、SATA、NVME等等,下面咱们一起来梳理下。

在介绍之前,先了解几个概念:

○接口: 硬盘与主板之间的物理连接方式,决定了外观和插槽,通俗理解为“插头形状”;

○总线: 接口背后的通信通道,规定了数据传输的“线路“,通俗理解为“电线和带宽”;

○协议: 通信规则和指令集,规定了数据如何读写、寻址和调度,通俗理解为“传输规则”;

计算机和硬盘之间,通过”接口 -> 总线 -> 协议”的层级形式,实现物理形式连接和数据交换通信。硬盘种类繁多,形态各异,因此接口类型和协议也较多,简单梳理如下图1:

Image图1、硬盘接口、总线、协议

      硬盘的接口协议是连接硬盘与计算机主板的桥梁,直接影响硬盘的读写速度、兼容性和稳定性。不同类型的硬盘对应着不同的接口协议,目前主流的硬盘接口协议主要有以下几种,其核心区别、优缺点及适用场景如下:

3.1、各接口协议核心参数对比表

协议

类型

传输

方式

最新

主流版本

单通道带宽

常用通道数

理论峰值速率

适用类型

兼容性

SATA

串行

SATA3.0

6 Gbps

x1

~600 MB/s

机械硬盘、

入门级SSD

极高

全平台支持

PCIe

串行

PCIe4.0

16 Gbps

x4

~8 GB/s

中高端SSD

中等

需主板支持

NVME

(基于PCIe)

串行

(并行架构)

NVME 2.0

16 Gbps

x4

~8 GB/s

高端SSD

M.2形态为主

中等

需主板支持

IDE(ATA)

并行

ATA-6

133 MB/s

x1

~133 MB/s

老旧机械硬盘

低

3.2、不同的接口解析

硬盘接口,直接决定着硬盘与计算机之间的连接速度,在整个计算机系统中,硬盘接口的优劣直接影响着程序运行快慢和系统性能好坏。

硬盘接口类型可分为 ATA、IDE、SATA 、M.2、SCSI 、SAS 、光纤通道等,常用场景:

接口类型

使用场景

ATA、IDE

多用于家用产品中,少部分应用于服务器

SATA

用于家用产品中

M.2

用于固态硬盘

SCSI

用于服务器市场

SAS

多用于中、高端服务器和高端工作站中

光纤通道

用于高端服务器,价格昂贵

       笔记本硬件中,常见接口有ATA、SATA、M.2接口,下面一起梳理下。

3.2.1、ATA、PATA、SATA接口

ATA(Advanced Technology Attachment,高级技术附加装置),IDE(电子集成驱动器)的接口标准,分为:

➢PATA:ParallelATA,并行ATA接口,通常习惯将其称为ATA接口

用传统的40-pin 并口数据线连接主板与硬盘的,外部接口速度最大为133MB/s。并口线的抗干扰性太差,且排线占空间,不利计算机散热,逐渐被SATA所取代。

➢SATA:SerialATA,串行ATA接口

更轻薄、更灵活的接线方式,相较于PATA接口,数据传输速率更快。 

第一代SATA硬盘的写入速度为 150 MB/s,第二代 SATA 硬盘的写入速度则高达 300MB/s,整整比第一代的速度提高了一倍。正逐渐取代 PATA 接口。

SATA接口,是一种较为传统的硬盘接口,广泛应用于各种电脑设备中,通常为2.5英寸硬盘的标准接口,如下图2。

Image
Image

图2、SATA接口样式

SATA接口的优缺点:

○SATA接口的优点:

✓兼容性极强:2003 年推出以来,几乎所有消费级和服务器级主板均配备 SATA 接口(通常 4-6 个),支持热插拔(SATA Hot Plug),可直接替换老旧硬盘;

✓成本低廉:接口芯片和数据线成本低,且支持最长 1 米传输距离;

✓稳定性高:

采用差分信号传输,抗干扰能力强,日常故障率极低(年均故障率约 0.5%)。

○SATA接口的缺点:

✓带宽瓶颈明显:

SATA 3.0 理论峰值速率仅 600 MB/s,即使搭配高性能 SATA SSD(如三星 870 EVO),实际持续读写速度也无法突破 600 MB/s,无法发挥出高端闪存芯片的性能;

✓架构老旧:

基于 “AHCI 协议” 设计,仅支持单队列(Queue Depth=32),在多任务并发读写场景(如同时打开多个软件、传输多个文件)下,IOPS 表现较差(约 10000-20000 IOPS)。

3.2.2、M.2接口

M. 2接口前身为NGFF(NextGenerationFormFactor),于2013年正式更名为M.2。

根据接口形状的不同,如下图3所示,分为三种类型:

➢M-Key:支持PCI-E x4通道,拥有高达32Gbps的带宽;

➢B-Key:主要支持SATA(兼容AHCI)和PCI-Ex2通道;

➢B&M-Key:支持SATA接口;

Image

图3、M.2接口样式

3.3、不同的协议解析

3.3.1、PCIe协议

PCIe是一种物理接口与总线协议,用于硬件设备(如显卡、网卡、SSD)与主板的连接(是主板上的固有的硬件),提供高速数据传输通道,其性能由版本(如PCIe3.0、 4.0、5.0)和通道数(如x4、x8)决定,例如PCIe 4.0 x4的带宽可达64GB/s。

PCIe协议,并非专门为存储设备设计,但现在也广泛用在固态硬盘上,PCIe接口的固态硬盘可以直接插在主板的PCIe插槽上,如下图3,获得更高的数据传输速度,常见于台式机。

Image

图3、PCIe插槽

PCIe协议优缺点:

➢PCIe协议的优点:

○带宽潜力大:

PCIe 协议采用多通道并行设计,通道数可灵活扩展(x1/x2/x4/x8/x16),以主流的 PCIe 4.0 x4 为例,理论带宽达 64 GB/s,是 SATA 3.0 的 13 倍以上,可充分满足高端 SSD 的性能需求;

○扩展性强:

除硬盘外,还支持显卡、网卡、RAID 卡等设备,同一 PCIe 总线可连接多个设备(通过交换机芯片);

○延迟低:

采用点对点传输(Peer-to-Peer),无需经过南桥芯片中转,数据传输延迟比 SATA 低 30%-50%;

➢PCIe协议的缺点:

●兼容性受限:

不同版本的 PCIe 协议(如 3.0/4.0/5.0)存在向下兼容但不向上兼容的问题。

例如 PCIe 4.0 SSD 插入 PCIe 3.0 接口,会降速至 PCIe 3.0 速率;

例如老旧主板(如 2017 年前的主板)可能无 PCIe M.2 接口;

●成本较高:

PCIe 控制器芯片和接口设计复杂,导致 PCIe SSD 价格比同容量 SATA SSD 高 20%-40%;同时,长距离传输(超过 0.5 米)需使用专用屏蔽线,成本增加。

3.3.2、NVMe协议:(Non-Volatile Memory Express)

NVMe协议,专门针对固态硬盘 SSD 优化,用于优化主机与存储设备之间的数据传输效率。它通过并行队列(如64K命令队列)和低延迟指令,充分发挥SSD的并发性能,取代传统的AHCI协议。

相较于PCIe协议,NVMe协议不直接定义带宽,而是通过优化命令处理提升效率,例如,NVMe 支持 64000 个并行命令队列(传统 SATA 仅 1 个)

NVMe协议的优缺点:

➢NVMe协议的优点:

○架构优化:

专为闪存设计,支持多队列(Queue Depth 最高 65536)和并行 IO 操作,在多任务场景下 IOPS 表现极佳(高端 NVMe SSD 可达 100 万 + IOPS),是 SATA SSD 的 5-10 倍;

○延迟极低:

采用 “直接内存访问(DMA)” 技术,数据可直接在 SSD 和内存之间传输,无需 CPU 中转,读写延迟可低至 10-20 微秒,比 SATA SSD 低 50% 以上;

○功能丰富:

支持热插拔、加密(TCG Opal 2.0)、健康状态监测(SMART 扩展)、功耗管理(DevSleep)等功能,满足企业级和消费级场景的多样化需求。

➢NVMe协议的缺点:

●依赖主板支持:

需主板配备 M.2 PCIe 接口(且支持 NVMe 协议),部分老旧主板虽有 M.2 接口,但仅支持 SATA 协议,无法使用 NVMe SSD;

●散热要求高:

高性能 NVMe SSD 工作时功耗较高(如 PCIe 4.0 SSD 满载功耗约 10-15W),若未配备散热片,可能因温度过高(超过 70℃)导致性能降速(Throttling)。

本篇文章中,结合机械硬盘的结构组成,详解下机械硬盘的工作原理。

四、机械硬盘的组成部分

机械硬盘作为一种依靠机械结构工作的存储设备,其内部结构复杂且精密(公差精度达微米级),主要由磁盘片、磁头、主轴电机、磁头驱动机构、控制电路板、外壳六大核心部分组成,各部件的位置分布参考下图4:

Image

图4、机械硬盘的组成

各部件的功能如下:

组件

功能

磁盘片

上下表面,均覆盖磁性材料

多盘平行堆叠,间距1-2mm,(单碟容量1-2TB)

磁头

每个磁盘片2个磁头,

磁头悬浮在磁盘片上方5-10纳米处读写数据

主轴电机

驱动碟片同步旋转(5400/7200/10000 RPM)

磁头驱动机构

位于磁头臂末端,控制磁头移动定位

控制电路板

包含硬盘固件和接口控制器(SATA/SAS),通常包含:

●硬盘控制器芯片(主芯片,处理指令与数据)     

●缓存芯片(DDR 内存,通常 128MB-2GB)  

●电机驱动芯片(为主轴电机、音圈电机供电)    

●信号处理芯片(放大磁头读取的微弱电信号)

磁盘外壳

磁盘的外包装,金属材质,密封防尘

五、机械硬盘的工作原理

上面讲到机械硬盘的外部结构,再结合它的内部结构,来谈谈它的工作原理。

5.1、磁盘片的组成和逻辑结构

先用一张图来做整体了解,见下图5:

Image

5、机械硬盘的磁盘片

机械硬盘中,磁盘片通常由多个盘片(Platter)有序层叠形成,如下图6。盘片正反两面都涂有磁性物质,因此一个盘片有两个盘面(Side),及上下盘面。正常情况下,每个盘面都会用来存储数据,成为有效盘片,数据会以二进制的方式被存储在盘面里,特殊情况下,也有硬盘盘面数为单数。

每一个这样的有效盘面都会有盘面号,按顺序从上至下从“0”开始依次编号。在硬盘系统中,每个有效盘面都有一个对应的读写磁头,因此盘面号又叫磁头号。

Image

图6、机械硬盘的磁盘片的盘面

对于单个盘面而言,为了方便数据读取,可以分为几个逻辑结构:

➢磁道(Track):

磁盘在格式化时被划分成许多同心圆,这些同心圆轨迹叫做磁道。

磁道由外向内,从0开始顺序编号。每个盘面有300~1024个磁道,新式大容量硬盘每面的磁道数更多。每个磁道又被划分为若干个扇区,信息以脉冲串的形式记录在这些轨迹中。

➢扇区(Sectors):

  在磁盘里的磁道上等分出若干个弧段,这些弧段便是磁盘的扇区,每个扇区可以存放512个字节或4KB(通常是512字节),磁盘驱动器向磁盘读取/写入数据时,以扇区为单位位。

通常扇区与扇区之间也有一定间隔(逻辑上的间隔,物理上没有任何间隔,但是每个扇区的开头都有一个同步信息,外围电路可以用来判断一个扇区的开始)。

如果将单个盘面中的某个磁道展开,则如下图7:Image

图7、机械硬盘的盘面中磁道展开

➢簇(Cluster):

将相邻的若干个扇区称为了一个簇。操作系统读写磁盘的基本单位是扇区,而文件系统的基本单位是簇。

如在Windows下,随便找个几字节的文件,在其上面点击鼠标右键选择属性,看看实际大小与占用空间两项内容,如大小:2字节(2个字母),占用空间:4KB(4096字节)。占用空间即为机器分区的簇大小,因为再小的文件都会占用空间,逻辑基本单位是4K,所以都会占用4K。 

簇的大小通常为4K,8K,16K,32K,64K等:

●簇越大存储性能越好,但空间浪费严重。

●簇越小性能相对越低,但空间利用率高。FAT32格式的文件系统簇的大小默认为4K。

Image

图8、机械硬盘的盘面中磁道、扇区示意

➢柱面(Cylinder):

多个盘片垂直层叠,形成一个虚拟的圆柱体,这个堆叠的圆柱从外向内,分别为0柱面、1柱面...N柱面,越往内柱面的同心圆越小。每个圆柱上的磁头由上而下从“0”开始编号。

如果将某个柱面展开,则如下图9:

Image

图9、机械硬盘的柱面沿着盘面、磁道展开

5.2、机械硬盘的工作原理

5.2.1、机械硬盘的数据读/写模式

在谈机械硬盘的工作原理前,咱们先了解下机械硬盘的数据读/写原理。

前面讲到硬盘是有磁盘片的层叠组合而成,从先入为主的概念中,很容易会觉得硬盘读写数据时,是按照盘面有序读/写操作的。但是为了更好的提高硬盘的读写效率,硬盘在设计时,数据的读/写按柱面进行操作。

为什么要如此设计呢?因为磁头的选取是通过电子切换,而柱面选取则是通过机械切换。相较于机械切换,电子切换速度要更为迅速,所以数据的读/写按柱面进行,而不按盘面进行。

磁头读/写数据时,先在同一柱面内从“0”磁头开始进行操作,依次向下在同一柱面的不同盘面进行操作,直至同一柱面的所有磁头全部读/写完毕,磁头才转移到下一柱面,优先顺序为:

1、某个盘面,某个磁道,某个扇区,按顺序写满扇区,直至写满整个磁道;

2、同一柱面,下一个盘面,同样写满扇区,写满磁道,直至写满柱面;

3、下一柱面,循环操作;

当计算机系统需要在磁盘上,读取/写入数据时,它会根据柱面号、磁头号和扇区号,来确定目标数据的位置。通过控制磁头的移动和盘片的旋转,准确地定位到特定柱面上的特定扇区,从而进行数据的读写操作。

讲到这里,我们可以很容易计算出硬盘的容量:

硬盘容量 = 盘面(磁头)数 × 柱面数 × 扇区数 × 每扇区字节数

5.2.2、机械硬盘的工作原理

机械硬盘的工作过程是 “机械运动 + 电子信号处理” 的协同过程,核心是通过磁头在高速旋转的盘片上,完成 “寻址 - 读写 - 校验” 的闭环操作。

工作流程可以为:

启动初始化 -> 硬盘寻址 -> 数据读取/写入 -> 停止工作

5.2.2.1、启动初始化

机械硬盘的启动初始化过程,可以分为三步:

➢通电自检:

计算机开机后,电源向控制电路板供电(12V 为主轴电机供电,5V 为芯片供电),硬盘控制器芯片首先执行 “自检程序”,检测主轴电机、磁头、磁头驱动机构是否正常(如电机是否能转动、磁头是否能移动到停放区),若检测失败,会通过 SATA 接口向主板发送错误代码(如 “01” 表示磁头故障);

通常硬盘出现异常时,Windows系统加载时会出现蓝屏现象,并抛出此错误码。

➢主轴电机启动:

自检通过后,硬盘控制器向主轴电机发送启动指令,电机从静止状态开始加速,经过 2-3 秒(7200 RPM 硬盘)达到额定转速,此时盘片表面的空气膜形成,磁头在悬浮臂的作用下,从停放区移动到 “待命磁道”(通常是盘片外侧的空闲磁道),等待读写指令;

➢参数加载:

控制器从硬盘的 “固件区”(盘片内侧的专用磁道)加载硬盘参数(如容量、磁头数、磁道数、扇区数),并将参数发送给主板 BIOS,完成初始化,此时硬盘进入 “就绪状态”(Ready)。

通过这三步的操作,硬盘完成初始化操作,进入工作状态。

5.2.2.2、硬盘寻址

硬盘进行读/写数据操作,肯定得先在硬盘物理空间中,找到具体的数据操作位置,才能进行数据读/写操作。根据上面提到的机械硬盘数据读/写模式,只要确定柱面(Cylinder)、磁头(Head)、扇区(Sector),即可以确定数据在硬盘中的存储位置,这就是提到的CHS概念。

但是,机械硬盘的寻址方式,并非使用CHS,而是采用 “逻辑块地址(LBA,Logical Block Addressing)” 的方式来进行物理寻址。通俗来讲,所谓的LBA,就是每一个扇区的下标。

在图9中,将某个柱面展开,如果再进一步,将整个磁盘展开呢?则如下图10:

Image

图10、机械硬盘整体展开示意

在图10中,可以看到将整个磁盘展开,则扇区的地址呈线性地址。可以将磁盘看成一个三维数组,那么对于扇区则是一个“一维数组”,数组的下标则是LBA,每个元素则是对应的扇区。

扇区Sector是一个逻辑概念,而硬盘中的数据位置是一个物理概念,对于扇区地址,则需要从逻辑地址转换成为物理地址,这就是硬盘工作原理中的LBA 地址转换。

LBA->CHS转换公式如下:

○柱面号: C  = LBA ÷ (H × S)

○磁头号: H = (LBA % (H × S)) ÷ S

○扇区号: S  = (LBA % (H × S)) % S + 1(扇区号从 1 开始计数)

示例:若硬盘参数为 H=4(2 片盘片,每片 2 个磁头)、S=64(每磁道 64 个扇区),LBA=1000,则:

C = 1000 ÷ (4×64) =3(取整数)

H = (1000 % 256) ÷ 64=24 ÷ 64 =0

S  = (1000 % 256) % 64 +1 = 24 + 1 = 25

物理地址:磁头 0、柱面 3、扇区 25

确定了数据操作位置在硬盘中的空间物理坐标,则需要通过运动的方式,磁头和扇区协同运动,将磁头移动到具体的物理坐标,这个过程包括:

➢磁头定位(寻道):

控制器向音圈电机发送电流信号,带动磁头臂移动,将指定磁头(Hd)移动到目标柱面(C)的磁道上方,此过程称为 “寻道”,耗时约 4-8 毫秒(平均寻道时间);

➢扇区定位(旋转延迟):

由于盘片在高速旋转,目标扇区(Sd)需旋转到磁头下方才能进行读写,此过程的耗时称为 “平均旋转延迟”,计算公式为 “(60 × 1000) ÷ (2 × 转速)”(取旋转半圈的平均时间):

○5400 RPM 硬盘:平均旋转延迟 = (60×1000)÷(2×5400)≈5.56 毫秒

○7200 RPM 硬盘:平均旋转延迟≈4.17 毫秒

○15000 RPM 硬盘:平均旋转延迟≈2 毫秒

总寻址时间:平均寻道时间 + 平均旋转延迟,是机械硬盘随机读写性能的核心指标(通常 8-15 毫秒),远高于固态硬盘(0.1-1 毫秒)。

对于计算机的文件系统来讲,扇区通常只有512字节,对扇区操作,效率太低,通常会一次性读取多个扇区,通常将一次性读取的空间大小,叫做块(Block),最常见的一个块为4KB,即连续8个扇区组成一个“块”,“块”是文件存取的最小单位,所以有的地方,LBA定义的是块的下标,原理都是一致的。

5.2.2.3、数据读/写

当计算机需要向机械硬盘读/写数据时,整个过程如下:

➢指令与数据接收:

操作系统通过 SATA 接口向硬盘控制器发送指令:

○“写入指令”:(如 ATA 协议中的 “WRITE SECTOR (S)” 指令)、目标 LBA 地址和待写入数据(通常以 “扇区” 为单位,如 8 个扇区 = 4KB);

○“读取指令”(如 ATA 协议中的 “READ SECTOR (S)” 指令)、目标LBA地址;

➢数据缓存与处理:

控制器将待写入数据暂存到缓存芯片中,同时对数据进行 “编码”(如 8b/10b 编码,将 8 位数据转换为 10 位信号,提高抗干扰能力)和 “校验码生成”(如生成 CRC32 校验码,用于后续验证数据完整性);

➢寻址与定位:

控制器执行寻址过程,将磁头移动到目标磁道,等待目标扇区旋转到磁头下方;

➢数据校验与反馈:

○写操作:

写完后,磁头立即读取刚写入的数据,与缓存中的原始数据进行比对(通过 CRC32 校验):

✧若一致,控制器向操作系统发送 “写入成功” 信号;

✧若不一致,控制器会尝试重新写入(通常重试 3-5 次),若多次失败,则标记该扇区为 “坏扇区”,并将数据写入备用扇区(硬盘预留约 1%-2% 的备用扇区),同时更新 “坏扇区映射表”(存储在固件区)。

○读操作:

控制器利用 ECC 码对读取的数据进行校验。

若发现轻微错误(如 1-2 位错误),可通过 ECC 码自动纠正;若错误严重(如 3 位以上错误),则尝试重新读取(重试 3-5 次),若仍失败,向操作系统发送 “读取错误” 信号;

若校验通过,控制器将数据从缓存芯片传输到主板(通过 SATA 接口),完成读取;

若操作系统后续读取的是相邻扇区(如连续读取文件),控制器会提前将相邻扇区的数据读取到缓存中(称为 “预读取”),减少磁头的机械操作,提升连续读取速度(如 7200 RPM 硬盘连续读取速度可达 150-200 MB/s)。

5.2.2.4、停止工作过程

当计算机系统,进行关机,或者进入休眠状态时,硬盘则会进入停止工作操作,这个过程包含:

➢指令接收与准备:

操作系统向硬盘发送 “停止指令”(如 ATA 协议中的 “STANDBY IMMEDIATE” 指令);

➢磁头归位:

控制器控制音圈电机,将所有磁头移动到盘片内侧的停放区(无磁性涂层,即使盘片停止旋转,磁头也不会损坏),同时切断磁头的读写电路;

➢主轴电机减速:

控制器降低主轴电机的驱动电流,电机转速逐渐下降,经过 3-5 秒(7200 RPM 硬盘)完全停止旋转;

➢低功耗模式:

控制器切断大部分芯片的电源(仅保留唤醒电路通电),硬盘进入 “休眠状态”(功耗约 0.1-0.5W),等待下次开机或唤醒指令(如主板发送 “唤醒信号”)。

完成这些操作后,硬盘进入停止工作状态。

5.2.3、机械硬盘与文件系统

前面提到,硬盘扇区通常大小为512字节,对于现代系统,文件可能高达数GB,甚至TB,而硬盘的扇区是线性序列,如果在文件系统中,文件操作时仅仅告诉操作系统“文件从扇区100开始,至扇区500结束”,则会引出很多问题:

○碎片化管理复杂:

文件写入、删除操作,会产生碎片,一个文件可能分散在不同扇区,直接用物理地址描述太复杂。

○不方便跨平台:不同磁盘厂商的底层结构不同,需要一个抽象层。

○权限与属性无法记录:文件的时间戳、权限、拥有者等信息没有地方存储。

○检索速度低:如果没有索引,每次打开一个文件都得“扫盘”,效率极低。

通俗理解,硬盘的扇区就像图书馆的书架格子,如果没有“目录卡片”和“书籍标签”,找一本书需要逐个翻阅书架。为了解决此些问题,引出了文件系统元数据的定义:

文件系统元数据是操作系统管理磁盘的索引表+文件属性表

文件系统元数据包括:

○基本信息:文件名称、类型、大小、时间戳、文件权限、用户和组、文件标志位等;

○空间管理信息:文件占用的簇或者扇区编号、空闲空间的管理结构(如位图、链表)

○目录结构:记录下属文件和子目录的索引;

文件系统元数据抽象了复杂的物理结构,引入了一些便利:

○快速索引:记录每个文件在哪些簇/扇区;

○空间管理:哪些磁盘区域已使用、哪些空闲;

○属性存储:文件的大小、创建/修改时间、权限、所有者等;

○一致性保障:通过日志和校验机制保证系统崩溃后数据一致;

○逻辑抽象:用户看到的是文件夹和文件名,而非扇区号。

文件系统特有的数据结构:

文件系统

元数据

核心结构

说明

结构示例

FAT32

 FAT表

(File Allocation Table)  

链式结构存储簇链表 ,文件像链表一样在FAT表中跟踪

[引导扇区]

[文件分配表 FAT] 

-- 记录每个簇的下一个簇编号

[根目录区]

[文件数据区]

NTFS

 MFT

(Master File Table)  

所有文件,包括系统文件,都存成MFT中的记录,每条记录固定大小,便于查找

文件记录:文件属性+文件簇号

目录索引:树形结构

日志:崩溃恢复

EXT4

Inode表

每个文件一个inode节点,inode中记录文件原信息和数据块指针

[超级块 SuperBlock]

[Inode表]

[块位图 Block Bitmap]

[数据块 Data Block]

APFS

B+树索引

高性能目录和空间管理

        因为文件系统的元数据的设计存在,由此引出硬盘格式化操作的差异:

➢快速格式化: 

只清空元数据表(如MFT、FAT表),标记所有簇为空闲,数据区未清除;  

➢完全格式化: 扫描所有扇区并重建元数据,甚至覆盖数据区;  

六、 总结

通过以上的梳理,对于笔记本的硬盘硬件组成,以及对机械硬盘的工作原理,有了初步的了解。在笔记本日常硬盘中,主要是机械硬盘和固态硬盘,而固态硬盘的设计技术概念和机械硬盘还是存在差异。

在下一篇中,咱们再继续探讨固态硬盘的工作原理。