为什么固态硬盘快要装满时可能变慢
固态硬盘没有旋转盘片和机械磁头,读取数据很快,但它也有自己的整理工作。空间接近用满时,写入速度有时会下降,原因与闪存怎样修改数据有关。
闪存通常按页写入,却要按更大的块擦除。某一页已有旧数据时,控制器不能总像在纸上改一个字那样直接覆盖。它可能需要把仍然有效的数据搬到别处,擦除整个块,再写入新内容。
空闲空间充足时,控制器有很多干净页面可以选择,搬运工作较少。空间紧张后,可用位置变少,垃圾回收更频繁,一次普通写入背后可能伴随多次内部复制和擦除,这被称为写入放大。
操作系统删除文件时,通常只是先把空间标记为可用。TRIM 指令会告诉固态硬盘哪些页面已经不再需要,让控制器可以提前整理。若整理来不及完成,持续的大量写入仍可能让速度暂时降低。
不少固态硬盘还会用一部分闪存模拟更快的缓存。缓存有空时,短时间写入很迅速;写入量超过缓存,或者硬盘太满导致缓存空间缩小,速度就可能回落到闪存本身的水平。
给硬盘保留一些空余空间,有助于控制器调度,但不需要为了一个固定百分比而焦虑。定期清理真正不需要的大文件、保持系统和固件正常更新,并避免在容量告急时进行长时间重写,通常比反复手动优化更实际。硬盘变慢并不是它在偷懒,而是可供周转的工作台变小了。