查看: 24392|回复: 32
收起左侧

[讨论] 关于各种SSD寿命的详解,以及我们为什么不用担心会用坏

  [复制链接]
qazxsw2
发表于 2018-5-28 11:49:16 | 显示全部楼层 |阅读模式
本帖最后由 qazxsw2 于 2018-6-10 19:05 编辑

转载内容犬夜叉大人(威锋网


不知是哪来的误导,导致很多人都认为ssd不能多写入东西,不然很容易损坏。导致有些人甚至担心到要去留op空间来减少损耗。本期我们来聊聊SSD寿命的那些事。。。

首先,在一切开始之前,你必须了解有个东西叫写入放大,通俗的说就是你写入的是1g大小文件,可是nand实际损耗却大于或者小雨1g。关于这个名词的专业解释,我引用pceva浴室大神的一段话,诸位且看:由于闪存的运作特性,数据不能像在普通机械硬盘里那样被直接覆盖。当数据第一次写入SSD的时候,由于SSD内所有的颗粒都为已擦除状态,所以数据能够以页为最小单位直接写入进去(一般是4K,参考颗粒资料),SSD上的主控制器,使用了逻辑和物理的映射系统来管理着闪存。对于单次*作,最简单的例子,比如我要写入一个4KB的数据,最坏的情况就是,一个块里已经没有干净空间了,但是有无效数据可以擦除,所以主控就把所有的数据读出来,擦除块,再加上这个4KB新数据写回去,这个*作带来的写入放大就是: 我实际写4K的数据,造成了整个块(512KB)的写入*作,那就是128倍放大。同时带来了原本只需要简单的写4KB的*作变成读取(512KB),擦(512KB),改写(512KB),造成了延迟大大增加,速度慢是自然了。

说完了写入放大,我们再分主控来聊聊各类ssd的寿命


1 SandForce,sf主控是压缩主控,会压缩磁盘上可压缩可数据,作为op空间。比如,举个简单的例子,假如你要存了一部10mb大小的小说
,当你存进去的时候,主控制器会压缩数据,假设压缩了5mb,那么硬盘里将有5mb空间空出来了,当然,显示在你电脑上的还是10mb。那么剩下5mb就会作为op空间,以减少写入放大。写入放大少了,实际写入闪存的量就会降低,闪存寿命较长。然而,也有坏处,假如你写入的数据是类似高清电影之类的不可压缩数据,那么写入放大将会大于1,而且整体速度明显小于非压缩主控。

2 Marvell
m牌主控多为主流ssd所采用,像是浦科特m5pro之类,该主控无压缩特性,写入多少就是多少,不能压缩数据来作为op空间。故此类主控写入放大会比sandforce大,一般会大于1。该方案的好处就是写入无需经过压缩处理,速度会比较快。坏处就是相对于sandforce的ssd,nand写入量会更多。

3 Intel,Samsung,Jmicro
此类主控因无压缩特性,在写入放大方面会和marvell的主控类似,这里不多讲


讲完了各类主控的特点,我们再来说说闪存芯片的寿命

首先必须澄清一点,闪存制程越小寿命越低,所以50nm制程(已停产)寿命是远大于目前的19nm制程的。

众所周知,目前用作闪存芯片从好到坏分为slc,emlc,mlc,tlc。

SLC
写入寿命最长,速度最快,据估测大概有100000次擦写寿命,接近于无限。但是由于成本过高,现逐渐远离ssd市场。

EMLC
写入寿命仅次于slc,擦写次数几乎是用不完的,但由于成本高,一般作为服务器级ssd使用。

MLC
写入寿命中等,视制程不同大约有,3000---10000次擦写寿命,为主流ssd所采用。
TLC
寿命最差,只有不到1000次,目前仅有三星840,840EVO采用。


计算
按19nm mlc芯片的约2000次擦写寿命计算,假如你每天需要写入100GB数据(事实上很少有人这么高),假设ssd容量为128G(容量越高寿命越长),你至少需要7年才能用完寿命,除去写入放大等因素,大约是5年左右(这是日均写入100G的情况计算的),就算是三星的TLC芯片,由于目前主控制器方案的成熟,寿命也是无需担心的。


问:需要留出N个G不分区来延长寿命吗?
答:不需要,出厂就预留好了,用户手动预留影响甚微,但是会大量浪费空间。所以,有多大的空间就要全部用起来。

SSD损坏案例及分析:
本次我们分析的是Macbook Air Mid 2012的SSD大规模损坏事件,这是一起典型的固件设计缺陷问题,在最初版本的固件中,固件对闪存仅是测试版的支持,导致第一批挂盘用户的产生。然后,Apple Upadte 了固件到较新的一版,总算对颗粒的支持变为正式支持。但是,另一个重大安全隐患却被忽略了,这个版本固件设计上有缺陷。由于mac os的特殊电源管理,导致某个储存日志的区域被写入过多数据,最后导致了溢出,然后就全盘崩溃了。实际上此时闪存颗粒是完好的。


我顺便解释一下为什么FD的用户SSD不安全关机次数那么多:因为Mac的激进电源管理策略导致的,尤其是睡眠的时候,往往主机还没对SSD发出断电指令就先断电了,这样SMART里的不安全关机数就加一。实际上,你完全可以忽略这个数据,几乎没有带来副作用,因此可放心使用。


关于休眠造成的SSD大量写入问题:
由于部分睡眠模式会把内存镜像写入硬盘中,尤其是对大内存的朋友来说,单次写入的量也是可观的,那么如何解决呢?
其实只要更改睡眠模式即可,关于更改睡眠模式,详见该帖http://bbs.feng.com/read-htm-tid-6806509.html,虽然文中写的是Macbook Air,但其他Mac机也可以通用。(内存睡眠模式一旦电池没电会丢失当前资料)
总结:

依据目前SSD损坏的案例,基本都是主控制器固件损坏,抑或是固件设计不合理,而因为闪存芯片寿命问题损坏的非常少,根本无需担心寿命问题。
So,爱怎么用怎么用,尽情迅雷吧。
随便注册
发表于 2018-5-28 12:06:36 | 显示全部楼层
刚开始还说固态不仅不热,摸上去还有点凉呢
不用担心电子产品寿命的唯一原因是你不用它也坏。
minimini
发表于 2018-5-28 22:04:44 | 显示全部楼层
固态各种下载在复制进仓库
柯林
发表于 2018-5-29 10:24:38 | 显示全部楼层
用过个金士顿的粗渣,三年不到,各种卡、怪,也不能说它坏了,但是,用它就是各种卡、憋,扔了它,单纯用机械盘,一点问题没有……牢靠度真心不如机械
qazxsw2
 楼主| 发表于 2018-5-31 16:47:07 | 显示全部楼层
柯林 发表于 2018-5-29 10:24
用过个金士顿的粗渣,三年不到,各种卡、怪,也不能说它坏了,但是,用它就是各种卡、憋,扔了它,单纯用机 ...

确实,机械耐操,ssd只能买原厂颗粒和美满主控的,其他的稳定度一般
caliban
发表于 2018-6-3 02:55:20 | 显示全部楼层
这个计算方式……是这样计算的吗?
擦写寿命指的是存储模块同一区块的擦写次数,而不是指把非要把整个硬盘写完再擦干净吧?
eyesconfused
发表于 2018-6-3 06:32:28 | 显示全部楼层
现在MLC都是稀罕东西了,都是TLC了。
追影子的十三
发表于 2018-6-3 08:21:47 来自手机 | 显示全部楼层
840,840evo?哎,老文章了吧
kxmp
发表于 2018-6-3 13:16:22 | 显示全部楼层
我看有些人从来不说什么写入放大是什么映射问题.
他们说那个是什么2bit nand 和3bitnand的区别
有人写了400gb结果发现写入总量是1300G差不多
然后楼下告诉他 你这是3bit的nand
然后最差情况就是那么大

christina7358
发表于 2018-6-9 15:55:36 | 显示全部楼层
tlc才不到1000次的擦写?我记得浦科特M8V 也是tlc,说可以达到2000次的擦写啊
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-12-23 06:34 , Processed in 0.119520 second(s), 16 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表