3.4 为啥越用越慢?NAND闪存的读写过程
SSD与传统HDD有着不同的架构和原理,读写数据的过程也是不一样的,这种原理上的不同带给SSD优异的性能,但是也决定了SSD固有的一些缺点。
HDD磁盘有扇区、柱面之分,SSD的基本组成也有Page(页面)、Block(区块)、Plane(平面)之分,page是最基本的组成,大小一般是4KB,,每个block通常包含64个page,容量是256KB,也有128个page的,容量就是512KB,不过目前主流的25nm工艺闪存普遍都是8KB page容量,128个page配置。
多个block再组成plane,而plane就是就是闪存中的一颗核心(die)了,而我们看到的闪存片其实是多颗die封装在一起的,一般是2-8颗,而整个SSD上则会由多片闪存组成。
实际上,如果SSD内部是以die颗粒的RAID 0模式组建的,那么block层级之上还有一个band之分,它是RAID 0模式中所有芯片的同一块block区块的总和。
简单的描述就是这样:page→block→band→plane-die→闪存片→SSD。
数据读写的主要过程就在page、block以及band三个层面上。
在系统中,数据写入是以page为单位的,SSD写入新数据擦除原有的数据,但是擦除过程只能以block为单位,要清除就得擦除整个block单元,哪怕只写入了一个page的文件。
在一篇国外博文中找到一个非常简单形象的SSD写数据的描述,我们来看看SSD到底是怎么写入数据的。
这里为了简化说明,假设每个block只有12个page,每个page大小1Byte。
无数据的情况就是这样的,SSD性能最好的状态
打开笔记本程序
输入1234并保存
这个文件的大小正好是4Byte
写入到SSD就是占用了block A的4个page
改变原来的文档内容,变成56781234
现在文档大小变成了8B
保存时SSD不能直接覆盖原有文件,需要重新占用8个page文件
现在就是这个样子了
Block A实际上已经写“脏”了,要恢复性能就需要删除整个block区块,此时需要把有用的数据拷贝到另一个空白blokc中然后再清除Block A。
数据写入到空白的block B中
实际过程中数据显然不是只有这么简单,略微复杂一点的情况就如上图所示,1234.txt文档占用了8个page,xyz.dll也是占用8个page,但是分别在两个block区块中,word.doc文件也是占用了两个block,其中占满一个,另一个占用了8个page。
此时如果用户删除了xyz.dll文件,那么数据就要重新洗牌,Block B中的1234.txt重新拷贝到block A中,dock文件中的4B也要写入block A中,还有多余的4个page要再占用block D的4个page空间,而block E中的数据是满的,不需要移动,此时的排列就如上图所示,腾出来的block B和block C也就可以清除数据以恢复性能了。
上述过程还只是非常简单的例子,如果是真实的应用环境情况会更复杂,SSD需要不断地在各个block之间进行写入-转移-清空操作,而且SSD的写入速度与擦除速度相差很大,这也会影响SSD的性能发挥。
总之,SSD的特性决定了它的写入方式,不能直接覆写数据使得SSD多了擦除的操作,而写入单位与擦除单位的不统一又让SSD不停地在各个Block区块之间折腾,而写入数据的延迟约为0.2ms,但擦除操作需要2ms左右,SSD用久了需要擦除的区块就会越多,性能自然也会变慢。
这些问题都是SSD必须处理的,影响可大可小,也让很多人开始对SSD的可靠性不放心,下一个关注点自然就是SSD的使用寿命了。
我匿名了 2014-03-28 06:39
157#
超能网友管理员 2013-08-08 16:41 | 加入黑名单
该评论年代久远,荒废失修,暂不可见。
已有18次举报支持(32) | 反对(1) | 举报 | 回复
151#
超能网友 2013-07-12 22:16 | 加入黑名单
该评论年代久远,荒废失修,暂不可见。
已有14次举报支持(24) | 反对(0) | 举报 | 回复
150#
游客 2013-05-04 17:32
该评论年代久远,荒废失修,暂不可见。
已有12次举报支持(22) | 反对(0) | 举报 | 回复
148#
游客 2012-12-18 14:53
该评论年代久远,荒废失修,暂不可见。
已有16次举报支持(71) | 反对(1) | 举报 | 回复
137#
游客 2012-12-06 10:58
该评论年代久远,荒废失修,暂不可见。
已有10次举报支持(31) | 反对(6) | 举报 | 回复
134#
游客 2016-02-03 23:25
该评论年代久远,荒废失修,暂不可见。
已有14次举报支持(18) | 反对(3) | 举报 | 回复
160#
超能网友学前班 2016-01-23 11:12 | 加入黑名单
该评论年代久远,荒废失修,暂不可见。
已有15次举报支持(17) | 反对(6) | 举报 | 回复
159#
超能网友学前班 2016-01-23 11:06 | 加入黑名单
该评论年代久远,荒废失修,暂不可见。
已有16次举报支持(19) | 反对(2) | 举报 | 回复
158#
游客 2013-10-30 18:23
该评论年代久远,荒废失修,暂不可见。
已有15次举报支持(16) | 反对(0) | 举报 | 回复
155#
超能网友大学生 2013-09-07 15:19 | 加入黑名单
154#
游客 2013-08-31 21:21
该评论年代久远,荒废失修,暂不可见。
已有11次举报支持(18) | 反对(0) | 举报 | 回复
153#
游客 2013-08-15 18:08
该评论年代久远,荒废失修,暂不可见。
已有11次举报支持(14) | 反对(0) | 举报 | 回复
152#
游客 2013-06-21 20:00
该评论年代久远,荒废失修,暂不可见。
已有11次举报支持(13) | 反对(0) | 举报 | 回复
149#
游客 2013-04-19 00:51
该评论年代久远,荒废失修,暂不可见。
已有9次举报支持(15) | 反对(1) | 举报 | 回复
147#
游客 2013-04-18 15:28
该评论年代久远,荒废失修,暂不可见。
已有9次举报支持(12) | 反对(1) | 举报 | 回复
146#
游客 2013-02-18 14:55
145#
游客 2013-02-18 10:18
该评论年代久远,荒废失修,暂不可见。
已有9次举报支持(12) | 反对(0) | 举报 | 回复
144#
游客 2012-12-31 21:04
该评论年代久远,荒废失修,暂不可见。
已有9次举报支持(13) | 反对(0) | 举报 | 回复
143#
游客 2012-12-29 23:57
该评论年代久远,荒废失修,暂不可见。
已有9次举报支持(10) | 反对(0) | 举报 | 回复
142#
游客 2012-12-29 13:35
该评论年代久远,荒废失修,暂不可见。
已有8次举报支持(10) | 反对(0) | 举报 | 回复
141#
游客 2012-12-28 22:42
该评论年代久远,荒废失修,暂不可见。
已有8次举报支持(11) | 反对(0) | 举报 | 回复
140#
游客 2012-12-27 11:11
该评论年代久远,荒废失修,暂不可见。
已有8次举报支持(10) | 反对(1) | 举报 | 回复
139#
超能网友学前班 2012-12-18 14:57 | 加入黑名单
该评论年代久远,荒废失修,暂不可见。
已有8次举报支持(10) | 反对(0) | 举报 | 回复
138#
游客 2012-12-14 13:43
该评论年代久远,荒废失修,暂不可见。
已有9次举报支持(10) | 反对(0) | 举报 | 回复
136#
游客 2012-12-09 23:26
该评论年代久远,荒废失修,暂不可见。
已有7次举报支持(9) | 反对(0) | 举报 | 回复
135#
游客 2012-12-03 14:45
该评论年代久远,荒废失修,暂不可见。
已有7次举报支持(8) | 反对(2) | 举报 | 回复
133#
游客 2012-12-02 00:21
该评论年代久远,荒废失修,暂不可见。
已有7次举报支持(8) | 反对(0) | 举报 | 回复
132#
游客 2012-11-27 18:32
该评论年代久远,荒废失修,暂不可见。
已有7次举报支持(8) | 反对(0) | 举报 | 回复
131#
游客 2012-11-24 23:52
该评论年代久远,荒废失修,暂不可见。
已有7次举报支持(7) | 反对(0) | 举报 | 回复
130#
提示:本页有 6 个评论因未通过审核而被隐藏
加载更多评论