PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

浴室谈SSD系列十五,打开美光SSD的隐藏SMART信息方法和解析

  [复制链接]
跳转到指定楼层
1#
neeyuese 发表于 2012-7-28 22:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
点击数:38186|回复数:51
首先来说说什么是SMART信息。S.M.A.R.T,全称叫Self-Monitoring, Analysis, and Reporting Technology "自我监测,分析和报告技术"。可以用来预测分析硬盘的潜在问题。

说起硬盘故障,分为突发性和渐进性2种:

前面种很难防止,没有任何迹象,比如芯片烧了,硬盘摔了或者人品不好之类的。要防止只有多做备份了。
渐进性的故障是随着时间慢慢发生的,比如声音出现异常,可能是主轴马达磨损,硬盘逐渐老化出现读取困难等,在SSD上主要指颗粒磨损度,不可修复错误数明显增加等。

对于渐进性的故障,我们可以依靠SMART数据发现点有用的信息。

这里要注意:

机械硬盘的SMART表定义已经有自己的标准,由于硬盘厂很多,很多厂家属性的名字也不尽相同,或者某些厂牌缺少某些属性,但是同个ID的定义是相同的。

固态硬盘的SMART表定义则目前还没有统一标准,不同厂家甚至不同主控都有可能出现相同ID不同定义,所以用一般的SMART软件查看是没任何意义的,虽然你可以看到值,但是这个值对应的ID解释可能完全不是那么回事。


下面拿美光的m4来举例:



ID: 对SSD来说,ID显得不是那么重要,为什么之前也说了,厂牌之间定义不同,不过下面为了解释方便,我还是以ID为准。

Attributes: 相对应ID的属性,和ID一样,由SSD厂商定义。

THRESHOLD(阈值/临界值)、CURRENT(当前值)和WORST(最坏值):当前值低于最坏值时候,硬盘处于警告状态,SMART向系统报告,这时候应该记得备份数据。

RAW VALUE (数据) : 更详细的数据,由各家厂自定义


这里我先把前段时间做好的美光m4的标准SMART信息定义给贴上来,方便大家。







之前我一直有提看美光m4写入量,可以用ID为AD的属性数值来X当前SSD的容量,就是写入的总数量。(虽然不是最精确)




拿我自己折腾的SSD来看,我对这块SSD进行过稳定态,拉闸的测试,并进行了多次Secure Erase操作,因此造成了某些表示错误的数值偏高。

(05)重新分配扇区数为983040
(C4)重新分配扇区事件计数为240

我们用983040 / 240 = 4096扇区 = 2MB = 正好为同步L74A(m4 256/512GB采用的颗粒)的一个Block容量。

-----------------------------

上面都是之前的数据了,今天我要告诉大家一个更精确的方法。不知道是不是偶然,这几天在折腾SSD固件的时候,不当心找到了打开美光SSD隐藏SMART信息的方法。



打开后的SMART信息会多出来几个属性,这几个属性CDI软件是无法识别的(因为是隐藏的,软件没定义)。

从ID可以看到,隐藏的ID为F2~F8,换算成10进制也就是从:242~248 。 下面我来解析下这几个属性实际的定义:

ID F2 (242) : Write Protect Progress  ( 不知道这个如何定义,猜想和写入保护有关,那么很可能又和非正常掉电时候的写保护处理有关)
ID F3 (243) : ECC Bits Corrected  (遇到多少被纠正的bit, 不过因为显示0,所以感觉只记录当前一次开机的情况)
ID F4 (244) : ECC Cumulative Threshold Events (超过ECC能力外的情况次数, 这种是比较危险的,一般直接会移走并标记坏块)
ID F5 (245) : Cumulative Program NAND Pages (SSD总共写入的NAND Page数)
ID F6 (246) : Cumulative Host-Write Sectors Count (主机总共写入的扇区数)
ID F7 (247) : Host Program Page Count  (主机写入Page 数)
ID F8 (248) : FTL Program Page Count (FTL写入 Page数)


我这块SSD是256GB的美光m4,采用的颗粒属于美光L74A,也就是8KB每个Page,那么计算写放大的话,只需要用:

属性245的值(总写入page数) X 8 (换算成1KB的单位)X 2 (换算成扇区512B单位) / 属性246(主机总写入扇区数) = 写入放大

如果您使用的美光SSD是4KB page的(C300,C400或者m4系列的64GB和128GB型号),则上面的公式里就是属性245 X 4 X 2 / 属性246了。

而属性247 (主机写入Page数) + 属性248 (FTL写入Page数) 应该基本 = 属性245 (SSD总共写入的扇区数)  


----------------------

如何打开这部分隐藏项目呢?

1. 首先你需要去Crucial官网下载一个C300 0007固件的升级程序,并刻录光盘或者做成U盘引导。
2. 刷新的时候肯定会报错不让你刷。(因为你的固件要么最新了,或者型号不对之类。)
3. 不要退出,输入指令: dosmcli -R (X) -- bus ALL    ( 那个x指的是你要查看的SSD接的主板端口号,一般是0~6)
4. 然后就会出现像下图那样的SMART信息。



C300 64GB的SMART信息,包含隐藏属性定义和信息。



m4 256GB的SMART信息,包含隐藏属性定义和信息。

显示完后只要不关机(冷关机,拔电源),进入系统后用CDI软件也能看到这几个隐藏属性的数值,但是CDI不会识别属性的定义。至此你的美光SSD写入量多少,写放大多少也就一目了然了。

SSD的SMART信息,只是一个外部接口显示,里面的值完全取决于厂商固件里的算法,由于当前SSD的算法架构各不相同,所以SMART的定义没有标准,即使主控或者颗粒一样也没用,属性的定义是什么,数值代表什么,除了固件开发者外,真的看不懂,另外很多关键属性都会因为保密的原因而被厂商隐藏掉。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
2#
炸死企鹅 发表于 2012-7-28 23:56 | 只看该作者
学习了。本子在公司,先做好引导盘,明天去公司折腾去。
3#
187j3x1 发表于 2012-7-29 00:11 | 只看该作者
前排就座
为什么hdd没有写入量记录么
4#
778856 发表于 2012-7-29 00:41 | 只看该作者
没有镁光的SSD 暂时实无法践
5#
wsy2220 发表于 2012-7-29 00:58 发自PCEVA移动客户端 | 只看该作者
这个真给力!
6#
南风咖啡 发表于 2012-7-29 02:52 | 只看该作者
前排支持!!
7#
hardass 发表于 2012-7-29 04:13 | 只看该作者
学习了,但对于普通民众来说。。。
8#
yangmicro 发表于 2012-7-29 07:40 | 只看该作者
技术贴,老规矩,好好学习。不过没有镁光的盘,无法实践。相信其他品牌的盘可以参考,希望尽快出台ssd的smart的统一标准。
9#
yangmcom 发表于 2012-7-29 08:33 | 只看该作者
值得 学习
10#
mcgino 发表于 2012-7-29 08:44 | 只看该作者
先学习一下~~~~~~~~~~~~~~~
11#
aican 发表于 2012-7-29 09:14 | 只看该作者
浴室太牛了,这命令居然都能发现。。。
12#
nighttob 发表于 2012-7-29 09:20 | 只看该作者
技术上要支持!
但是可能又有纠结党们要开始纠结了……
13#
御天剑 发表于 2012-7-29 10:23 | 只看该作者
全部镁光的盘,全部拿回去折腾!
14#
sonic0722 发表于 2012-7-29 10:41 | 只看该作者
谢谢分享,学习了~~
15#
ljchb 发表于 2012-7-29 11:16 | 只看该作者
只有镁光啊,什么时候能介绍下浦科特的呢?
16#
cnne 发表于 2012-7-29 12:20 | 只看该作者
浴室大大每次发帖都是精华,必须细细研读
17#
seinside 发表于 2012-7-29 16:04 | 只看该作者
学习了
18#
q979745882 发表于 2012-7-29 19:01 | 只看该作者
学习了,顶下
19#
07多特 发表于 2012-7-29 19:35 | 只看该作者
去找块美光的来。。。。。。。
20#
alderson 发表于 2012-7-29 20:56 | 只看该作者
学习了 谢谢 最近想要买块镁光的实践下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部