之前写了几篇 SSD 的科普文章,讲的内容比较底层,比如 NAND 的结构、FTL 映射表、Snap Read 等等。

有读者留言说:
“这些内容确实挺硬核,不过有点深。”

那今天我们换个轻松一点的话题,聊一个大家几乎都遇到过的问题:

为什么换了 SSD 之后,电脑会突然变快这么多?


很多人第一次感受到 SSD 的威力,都不是在跑分软件里。

而是在一个非常普通的场景里——

开机。

我在 2014 年买了人生中的第一台笔记本电脑。

配置是:

  • 4G 内存

  • 512G 机械硬盘

当时其实也不太懂电脑配置,只觉得“能用就行”。

电脑买回家的第一天,我干的第一件事,就是装了一个 360安全卫士。

扫描电脑发现:

500 多个漏洞。

于是开始疯狂修复、疯狂打补丁。

折腾完之后,我重启了一下电脑,开机时间 1 分多钟。

360 给了我一个评价:

击败了全国 1% 的电脑。

……

男生之间总会因为一些很小的事情莫名其妙开始比较。

有一天我和室友聊天。

小方说:“我电脑开机 15 秒,击败全国 99% 的用户。”

我当场就震惊了,“为什么你的电脑那么快,我的要一分多钟?”

小方只回了两个字:“垃圾”。

就这两个字,彻底点燃了我的胜负欲。我暗暗发誓:

一定要超过他。


第一次意识到软件也能拖慢电脑,后来慢慢学会了一些电脑知识。才发现:

360 在电脑中毒的时候是救星,在电脑正常的时候它就是最大的毒瘤。

我开始学着自己装系统。再也不装 360 了。

电脑开机时间稳定在:

30 秒左右。

当时我已经觉得很快了。


直到大三那年。

我买了人生第一块 东芝 SSD。

装好系统,开机。

7 秒。

那一刻我才真正意识到:

原来电脑还能这么快。


那为什么 SSD 会快这么多?

很多人会觉得:

电脑快不快主要看三个东西:

  • CPU

  • 内存

  • 硬盘

其实这个理解并没有错。

可以简单类比一下:

CPU:

CPU 就像人的大脑。

CPU 的主频越高,比如 3GHz,说明它每秒可以完成更多计算。

可以理解为:

大脑思考的速度。


内存:

内存就像人的工作台。

CPU 需要处理的数据会先放在内存里。

但是内存有一个特点:

断电就丢数据。

所以它只能用来暂时存放数据。


硬盘:

硬盘则是长期存储数据的地方。

比如:

  • 操作系统

  • 软件

  • 游戏

  • 文档

这些都存储在硬盘里。

电脑启动的时候,其实就是在做一件事情:

把系统从硬盘读取到内存里。

然后 CPU 再在内存里执行系统。


为什么开机其实是一个“随机 IO”过程?


电脑启动的时候,需要读取大量文件。

而且这些文件有一个特点:

非常碎。

操作系统不是一个大文件,而是:

  • 上万个小文件

  • 散落在磁盘的不同位置

系统启动的时候,CPU 会不断发出请求:

读取这里,
读取那里,
再读取另外一个位置。

这种情况就叫:

随机 IO(Random IO)

IO 是 Input / Output 的缩写,也就是读和写。

随机 IO 的意思是:

每次读写的位置都不连续。


机械硬盘为什么随机 IO 很慢,如图所示:

机械硬盘的工作方式非常“机械”。

里面有两个核心部件:

盘片 + 磁头

盘片会持续高速旋转。

磁头负责读取数据。

当系统要读取某个数据的时候,需要经历两个步骤:

第一步:寻道(Seek)

磁头需要移动到正确的磁道。

这个过程叫:

寻道时间(Seek Time)

一般需要:

几毫秒(ms)


第二步:等待盘片旋转

即使磁头已经到了正确位置,也不一定马上能读数据。

因为:

载有数据的盘片可能还没有转到磁头下面。

所以还要等待盘片转过来。

这个时间叫:

旋转延迟(Rotational Latency)


所以一次随机读取大概需要

寻道时间 + 旋转延迟

通常加起来:

5~10ms

换算一下:

1 秒 = 1000 ms

也就是说:

机械硬盘随机 IO 大概:

100 IOPS 左右

如果系统启动时需要读取几百个小文件,磁头就得来回摆几百次,盘片就得转几百圈。时间就这样一点一点被吃掉,开机一分钟,真不算夸张。


为什么 SSD 会快这么多

SSD 就完全不一样。

SSD 没有:

  • 盘片

  • 磁头

  • 机械运动

SSD 读取数据,本质上是:

电子访问。

访问延迟通常只有:

几十微秒(us)

而:

1 ms = 1000 us

所以:

HDD ≈ 10 ms
SSD ≈ 100 us

差距大约是:

100 倍。


SSD 还有一个隐藏优势:并行读写,这是HDD 完全做不到的事情:一块 SSD 内部通常会有:多个 Channel、多颗 NAND、多个 Plane,控制器可以同时让很多 NAND 一起工作。


所以 SSD 不仅延迟更低,还可以:

同时处理多个 IO。


这就是为什么 SSD 对系统启动帮助最大。系统启动的特点是:

  • 文件很多

  • 文件很小

  • 读取位置非常分散

也就是:

典型的随机 IO 场景。

而 SSD 恰恰最擅长:

随机 IO。



所以,从本质上来说:

机械硬盘慢,不是因为接口慢,也不是因为算法差。

而是因为它必须依赖:磁头移动+盘片旋转,每一次随机读取,都要经历:寻道时间 + 旋转延迟,这是机械结构带来的物理极限。而 SSD 没有磁头,也没有盘片。数据访问完全是电子操作。更重要的是,SSD 还能让多颗 NAND 同时并行工作。

所以在随机 IO 这种场景下:

SSD 对 HDD 几乎是降维打击。

这也是为什么:

同样一台电脑,只是把机械硬盘换成 SSD,开机时间就可能从:

1 分钟
↓
10 秒

很多人第一次感受到存储技术进步,其实不是在实验室里,而是在那一次:

电脑突然变得非常快的开机。



最后:

之前我们聊过 NAND 的结构、FTL 映射表、Snap Read 等比较底层的内容。

接下来几篇文章,我会继续从一些更直观的问题出发,比如:

  • 为什么 SSD 越用越慢

  • 为什么 SSD 容量越大通常性能越强

  • 为什么有些 SSD 跑分很高,但真实体验一般

从日常现象,一步一步聊到 SSD 的底层原理。