SSD写放大的理解与现有解决问题方法的学习

本文介绍了SSD硬盘的基本概念,包括Page和Block的区别,解释了写放大现象及其原因,并详细阐述了TRIM技术如何有效减少写放大,提高SSD性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Page和Block

SSD的硬盘有page和block的概念。Page大小为4K,Block大小为512K(即128个Block)。

2.写放大

从前一直认为SSD的写放大(Write amplification)是指SSD一次写必须写一个Block,其实不是这样的。SSD一次写的单位是page,但是SSD的Write只能写到空的page上,对于之前写过的page,必须先进行一次Erase。而Erase的单位是Block,所以如果一个page的数据删掉之后,要想再写到这个page上,必须经过以下三步:

1.将在同一个Block的其他page读出来。

2.将整个Block Erase。

3。然后将整个Block的数据写下去。

3.解决方法Trim

TRIM是现在公认的解决写放大的比较好的方案。

TRIM位于操作系统层。操作系统使用TRIM命令来通知SSD某个page的数据不需要了,可以回收了。

支持TRIM的操作系统和以往的主要区别是删除一个Page的操作不同。在磁盘时期,删除一个page,之后在文件系统的记录信息里将该page的标志位设置为可用,但是并没有将数据删除。使用SSD且支持TRIM的操作系统,在删除一个page时,会同时通知SSD这个page的数据不需要了,SSD内部有一个空闲时刻的垃圾收集进程,在空闲时刻SSD会将一些空闲的数据集中到一起,然后一起Erase。这样每次写操作,就在已经Erase好了的Page上写入新的数据。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值