S.M.A.R.T的全称为“Self-Monitoring,Analysis and Reporting Technology”,即“自我监测、分析及报告技术”。支持S.M.A.R.T技术的硬盘可以通过硬盘上的监测指令和主机上的监测软件对磁头、盘片、马达、电路的运行情况、历史记录及预设的安全值进行分析、比较。当出现安全值范围以外的情况时,就会自动向用户发出警告。
1995年5月,Compaq公司向Small Form Factor(SFF)委员会提交了IntelliSafe的技术标准报告(SFF-8035i);1996年1月进行1.0版的修正(SFF-8035R2);1996年6月进行了1.3版的修正(SFF-8055),并联合IBM等公司向SFF正式申请将IntelliSafe技术加入到ATA-3的行业标准中,正式更名为S.M.A.R.T。
作为行业标准,S.M.A.R.T规定了硬盘制造厂商应遵循的标准。满足S.M.A.R.T标准的条件主要包括:在设备制造期间完成S.M.A.R.T需要的各项参数、属性的设定;在特定系统平台下,能够正常使用S.M.A.R.T;通过BIOS检测,能够识别设备是否支持S.M.A.R.T并可显示相关信息,而且能辨别有效和失效的S.M.A.R.T信息;允许用户自由开启和关闭S.M.A.R.T功能;在用户使用过程中,能提供S.M.A.R.T的各项有效信息,确定设备的工作状态,并能发出相应的修正指令或警告。在硬盘以及操作系统都支持S.M.A.R.T.技术并且该技术默认开启的的情况下,在不良状态出现时S.M.A.R.T.技术能够在屏幕上显示英文警告信息:“WARNING:IMMEDIATLY BACKUP YOUR DATA AND REPLACE YOUR HARD DISK DRIVE,A FAILURE MAY BE IMMINENT.” (警告:立刻备份你的数据同时更换硬盘驱动器,可能有错误出现。)
ID检测代码不是唯一的,厂商可以根据需要,使用不同的ID代码或根据检测参数的多少增减ID代码的数量。例如,西数公司的产品ID检测代码为“04”,检测的参数是Start/Stop Count(加电次数),而富士通公司同样代码的检测参数却为“Number of times the spindle motor is activated”(电机激活时间)。
在图2中,我们发现出现“OK”标志的正常状态下有“值正常”(Value is Normal)和“总是略过”(Always Passing)两个状态说明。它们的区别是:“值正常”表明此项S.M.A.R.T值是正常的,硬盘没有故障;“永远略过”则表明此项只是某参数的记录,没有合格与不合格的标准,如“Power on time count”,这个参数只是记录了硬盘已经加电工作的时间,这个参数应当永远合格,它不用来衡量硬盘的性能,因此显示为“OK:Value is Normal”。
下面我们以ID为“04”的Start/Stop Count(加电次数)检测参数为例,完整地来理解这7列参数的意义:从图2中我们看到此参数规定的属性正常值(Attribute value)为“100”,这个正常值是通过计算公式:“100-硬盘正常使用寿命期间的加电次数/1024”而给出的。而最大出错值是硬盘运行的累计计算值。例如如果是新硬盘,则加电次数为0,因此为100-0/1024=100,最大出错值=属性正常值。随着加电次数的增加,该最大出错值不断变化。厂商规定的阈值为20,即当硬盘的开关电次数达到81920次时(100-81920/1024=20),最大出错值=阈值,系统就会提示用户备份数据。因此,加电次数在81920次范围之内,并且最大出错值始终大于阈值20的状态下,均为正常。图中的加电次数(Date实际值)为107次,因此最大出错值近似为100,状态显示为“OK:Value is Normal(值正常)”。需要特别注意的是:每一个参数所给出的值都是经过一些特定的计算公式而给出的。作为用户,只要观察“Worst”和“Threshold”值的关系,并注意状态提示属性状态信息即可大致了解硬盘的健康状况。
据研究数据表明,利用S.M.A.R.T技术可预测的硬盘故障中,60%为机械性质的,40%左右则是对软性故障的有效预测。随着S.M.A.R.T技术及相关技术的渐渐成熟,可预测出的故障种类将越来越多,对故障的防范措施也会变得越来越有效。当然,对不想开启S.M.A.R.T技术的读者而言,也可以在BIOS设置的“Advanced BIOS Set Up”选项中将其关闭