S.M.A.R.T.,全稱為“Self-Monitoring Analysis and Reporting Technology”,即“自我監(jiān)測、分析及報告技術”。是一種自動的硬盤狀態(tài)檢測與預警系統(tǒng)和規(guī)范。通過在硬盤硬件內(nèi)的檢測指令對硬盤的硬件如磁頭、盤片、馬達、電路的運行情況進行監(jiān)控、記錄并與廠商所設定的預設安全值進行比較,若監(jiān)控情況將或已超出預設安全值的安全范圍,就可以通過主機的監(jiān)控硬件或軟件自動向用戶作出警告并進行輕微的自動修復,以提前保障硬盤數(shù)據(jù)的安全。除一些出廠時間極早的硬盤外,現(xiàn)在大部分硬盤均配備該項技術。
rgb(255,255,255); white-space: normal; position: relative; text-transform: none; word-spacing: 0px; zoom: 1; color: rgb(51,51,51); padding-bottom: 0px; padding-top: 0px; font: 500 24px/22px 'Microsoft YaHei', SimHei, Verdana; padding-left: 0px; clear: both; margin: 35px 0px 15px -30px; border-left: rgb(79,156,238) 12px solid; widows: 1; display: block; letter-spacing: normal; padding-right: 0px; text-indent: 0px; -webkit-text-stroke-width: 0px">基本信息
abel-module="para" style="word-wrap: break-word; margin-bottom: 15px; white-space: normal; text-transform: none; word-spacing: 0px; zoom: 1; color: rgb(51,51,51); font: 14px/24px arial, 宋體, sans-serif; widows: 1; letter-spacing: normal; background-color: rgb(255,255,255); text-indent: 2em; -webkit-text-stroke-width: 0px">S.M.A.R.T.(自監(jiān)測、分析、報告技術):這是現(xiàn)在硬盤普遍采用的數(shù)據(jù)安全技術,在硬盤工作的時候監(jiān)測系統(tǒng)對電機、電路、磁盤、磁頭的狀態(tài)進行分析,當有異常發(fā)生的時候就會發(fā)出警告,有的還會自動降速并備份數(shù)據(jù)。
早在上個世紀九十年代,人們就意識到數(shù)據(jù)的寶貴性勝于硬盤自身價值,渴望有種技術能對硬盤故障進行預測并實現(xiàn)相對安全的數(shù)據(jù)保護,因此S.M.A.R.T技術應運而生。目前,大多數(shù)硬盤的平均無故障時間(MTBF)一般在30000小時以上,有些高端產(chǎn)品可達120萬小時。但是對于不少用戶,特別是商業(yè)用戶而言,一次普通的硬盤故障便足以造成災難性后果,所以時至今日,S.M.A.R.T技術仍為我們所用。
ist" style="white-space: normal; position: relative; text-transform: none; word-spacing: 0px; color: rgb(51,51,51); font: 12px/18px arial, 宋體, sans-serif; widows: 1; letter-spacing: normal; background-color: rgb(255,255,255); text-indent: 0px; -webkit-text-stroke-width: 0px">
簡介
并融合了Compaq公司的IntelliSafe診斷技術和IBM的PFA檢測技術特點。
1995年5月,Compaq公司向Small Form Factor(SFF)委員會提交了IntelliSafe的技術標準報告(SFF-8035i);1996年1月進行1.0版的修正(SFF-8035R2);1996年6月進行了1.3版的修正(SFF-8055),并聯(lián)合IBM等公司向SFF正式申請將IntelliSafe技術加入到ATA-3的行業(yè)標準中,正式更名為S.M.A.R.T
作為行業(yè)標準,S.M.A.R.T規(guī)定了硬盤制造廠商應遵循的標準。滿足S.M.A.R.T標準的條件主要包括:在設備制造期間完成S.M.A.R.T需要的各項參數(shù)、屬性的設定;在特定系統(tǒng)平臺下,能夠正常使用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的各項有效信息,確定設備的工作狀態(tài),并能發(fā)出相應的修正指令或警告。在硬盤以及操作系統(tǒng)都支持S.M.A.R.T.技術并且該技術默認開啟的的情況下,在不良狀態(tài)出現(xiàn)時S.M.A.R.T.技術能夠在屏幕上顯示英文警告信息:“WARNING:IMMEDIATLY BACKUP YOUR DATA AND REPLACE YOUR HARD DISK DRIVE,A FAILURE MAY BE IMMINENT.” (警告:立刻備份你的數(shù)據(jù)同時更換硬盤驅(qū)動器,可能有錯誤出現(xiàn)。)
如何工作
S.M.A.R.T信息保留在硬盤的系統(tǒng)保留區(qū)(service area)內(nèi),這個區(qū)域一般位于硬盤0物理面的最前面幾十個物理磁道,由廠商寫入相關內(nèi)部管理程序。除了S.M.A.R.T信息表外還包括低級格式化程序、加密解密程序、自監(jiān)控程序、自動修復程序等。監(jiān)測軟件通過一個名為“SMART RETURN STATUS”的命令(命令代碼為:B0h)對S.M.A.R.T信息進行讀取,且不允許最終用戶對信息進行修改。
由何組成
S.M.A.R.T標準中采用二進制代碼作為S.M.A.R.T的基本指令,并規(guī)定寫入標準的寄存器中,形成特定的S.M.A.R.T信息表,以供正常檢測和運行。S.M.A.R.T指令分主指令(Command)和次指令(Subcommands)。主指令主要提供設備是否支持S.M.A.R.T或忽略某一次指令特征的信息。而次指令則提供支持S.M.A.R.T設備的檢測信息。這些指令主要由設備廠商寫入,一些專業(yè)硬盤維修軟件可以通過這些代碼進行設備的檢測。
檢測屬性
S.M.A.R.T技術的原理是通過偵測硬盤各屬性,如數(shù)據(jù)吞吐性能、馬達起動時間、
尋道錯誤率等屬性值和標準值進行比較分析,推斷硬盤的故障情況并給出提示信息,幫助用戶避免數(shù)據(jù)損失。S.M.A.R.T因此規(guī)定了專門的檢測參數(shù),由于硬盤結(jié)構(gòu)、性能和定位上的不同,除了ATA-3標準規(guī)定的參數(shù)外,廠商可以根據(jù)自己產(chǎn)品的特性提供不同的S.M.A.R.T檢測參數(shù)。普通用戶則可以通過常用的系統(tǒng)工具(如AIDA32)來查看,并通過這些參數(shù)了解硬盤的“健康”狀況。
ID檢測代碼
ID檢測代碼不是唯一的,廠商可以根據(jù)需要,使用不同的ID代碼或根據(jù)檢測參數(shù)的多少增減ID代碼的數(shù)量。例如,西數(shù)公司的產(chǎn)品ID檢測代碼為“04”,檢測的參數(shù)是Start/Stop Count(加電次數(shù)),而富士通公司同樣代碼的檢測參數(shù)卻為“Number of times the spindle motor is activated”(電機激活時間)。
屬性描述
(Attribute Description)
屬性描述(Attribute Description)即檢測項目名稱??捎蓮S商自定義增減,由于ATA標準不斷更新,有時候同一品牌的不同型號產(chǎn)品也會有所不同。但必須確保S.M.A.R.T規(guī)定的幾個主要檢測項目(雖然不同廠商對檢測項目都有特定的命名規(guī)則,但這些監(jiān)測項目的實質(zhì)其實是一樣的)。
Read Error Rate 錯誤讀取率
Start/Stop Count 啟動/停止次數(shù)(又稱加電次數(shù))
Relocated Sector Count 重新分配扇區(qū)數(shù)
Spin up Retry Count 旋轉(zhuǎn)重試次數(shù)(即硬盤啟動重試次數(shù))
Drive Calibration Retry Count 磁盤校準重試次數(shù)
ULTRA DMA CRC Error Rate (ULTRA DMA奇偶校驗錯誤率)
Multi-zone Error Rate 多區(qū)域錯誤率
Vendor-specific 廠商特性
需要注意的是,不同廠商、不同類型產(chǎn)品的屬性描述不盡相同。對用戶而言,無須深入了解它們的具體含義,只需了解屬性監(jiān)測值的含義即可。
閾值
(Threshold)
又稱門限值。是由硬盤廠商指定的可靠的屬性值,通過特定公式計算而得。如果有一個屬性值低于相應的閾值,就意味著硬盤將變得不可靠,保存在硬盤里的數(shù)據(jù)也很容易丟失??煽繉傩灾档慕M成和大小對不同硬盤來說是有差異的。這里需要注意的是,ATA標準中只規(guī)定了一些S.M.A.R.T參數(shù),它沒有規(guī)定具體的數(shù)值,“Threshold”的數(shù)值是廠商根據(jù)自己產(chǎn)品特性而確定的。因此,用廠商自己提供的檢測軟件往往會跟Windows下的檢測軟件(例如AIDA32)的檢測結(jié)果有較大出入。這里,我們推薦以廠商軟件的檢測結(jié)果為標準,因為Windows環(huán)境下,系統(tǒng)要求硬盤的啟動程序比DOS下多得多,這可能導致硬盤S.M.A.R.T值比DOS環(huán)境下檢測的波動更大。以參數(shù)Raw ErrorRate(錯誤讀取率)為例:該參數(shù)的計算公式為10×log10(主機和硬盤之間所傳輸數(shù)據(jù)的扇區(qū)數(shù))×512×8/重讀的扇區(qū)數(shù)。其中 “512×8”是把扇區(qū)數(shù)轉(zhuǎn)化為所傳輸?shù)臄?shù)據(jù)位(bits),這個值只在所傳輸?shù)臄?shù)據(jù)位處于10^10~10^12范圍時才作計算,而當Windows系統(tǒng)啟動后,主機和硬盤之間所傳輸?shù)臄?shù)據(jù)扇區(qū)大于或等于10^12時,此值將重新復位。這就是為什么有些值在不同的操作環(huán)境、不同檢測程序下時波動較大的原因。
屬性值
(Attribute value)
屬性值是指硬盤出廠時預設的最大正常值,一般范圍為1~253。通常,最大的屬性值等于100(適用于IBM、昆騰、富士通)或253(適用于三星)。當然,也有例外的時候,比如由西部數(shù)據(jù)公司生產(chǎn)的部分型號硬盤,就用了兩個不同的屬性值,最初生產(chǎn)時屬性值設為200,但后來生產(chǎn)的硬盤屬性值又改為100。
最大出錯值
(Worst)
最大出錯值是硬盤運行中曾出現(xiàn)過的最大的非正常值。它是對硬盤累計運行的計算值,根據(jù)運行周期,該數(shù)值會不斷地刷新,并且會非常接近閾值。S.M.A.R.T分析和判定硬盤的狀態(tài)是否正常,就是根據(jù)這個數(shù)值和閾值的比較結(jié)果而定。新硬盤開始時有最大的屬性值,但隨著日常使用或出現(xiàn)錯誤,該值會不斷減小。因此,較大的屬性值意味著硬盤質(zhì)量較好而且可靠性較高,而較小的屬性值則意味著故障發(fā)生的可能性增大。
實際值
(Date)
是硬盤各檢測項目運行中的實際數(shù)值,很多項目是累計值。例如:圖3中的Start/Stop Count(啟停次數(shù)),累計的實際值是436,即該硬盤從開始到現(xiàn)在累計加電啟停436次。
屬性狀態(tài)
(Status)
這是S.M.A.R.T針對前面的各項屬性值進行比較分析后,提供的硬盤各屬性目前的狀態(tài),也是我們直觀判斷硬盤“健康”狀態(tài)的重要信息。根據(jù)S.M.A.R.T的規(guī)定,這種狀態(tài)一般有正常、警告和報告故障或錯誤等3種狀態(tài)。S.M.A.R.T判定出這3個狀態(tài)與S.M.A.R.T的 Pre-failure/advisory BIT(預知錯誤/發(fā)現(xiàn)位)參數(shù)的賦值密切相關。
當Pre-failure/advisory BIT=0,并且可靠屬性值遠大于閾值的情況下,為正常提示“OK”標志。當Pre-failure/advisory BITt=0,并且可靠屬性值大于閾值但接近閾值臨界值時,為警告提示“!”標志;當Pre-failure/advisory BITt=1,并且可靠屬性值小于閾值時,為報告故障或錯誤提示“!?。?rdquo;標志。
在圖2中,我們發(fā)現(xiàn)出現(xiàn)“OK”標志的正常狀態(tài)下有“值正常”(Value is Normal)和“總是略過”(Always Passing)兩個狀態(tài)說明。它們的區(qū)別是:“值正常”表明此項S.M.A.R.T值是正常的,硬盤沒有故障;“永遠略過”則表明此項只是某參數(shù)的記錄,沒有合格與不合格的標準,如“Power on time count”,這個參數(shù)只是記錄了硬盤已經(jīng)加電工作的時間,這個參數(shù)應當永遠合格,它不用來衡量硬盤的性能,因此顯示為“OK:Value is Normal”。
下面我們以ID為“04”的Start/Stop Count(加電次數(shù))檢測參數(shù)為例,完整地來理解這7列參數(shù)的意義:從圖2中我們看到此參數(shù)規(guī)定的屬性正常值(Attribute value)為“100”,這個正常值是通過計算公式:“100-硬盤正常使用壽命期間的加電次數(shù)/1024”而給出的。而最大出錯值是硬盤運行的累計計算值。例如如果是新硬盤,則加電次數(shù)為0,因此為100-0/1024=100,最大出錯值=屬性正常值。隨著加電次數(shù)的增加,該最大出錯值不斷變化。廠商規(guī)定的閾值為20,即當硬盤的開關電次數(shù)達到81920次時(100-81920/1024=20),最大出錯值=閾值,系統(tǒng)就會提示用戶備份數(shù)據(jù)。因此,加電次數(shù)在81920次范圍之內(nèi),并且最大出錯值始終大于閾值20的狀態(tài)下,均為正常。圖中的加電次數(shù)(Date實際值)為107次,因此最大出錯值近似為100,狀態(tài)顯示為“OK:Value is Normal(值正常)”。需要特別注意的是:每一個參數(shù)所給出的值都是經(jīng)過一些特定的計算公式而給出的。作為用戶,只要觀察“Worst”和“Threshold”值的關系,并注意狀態(tài)提示屬性狀態(tài)信息即可大致了解硬盤的健康狀況。
在非ATA平臺上的實現(xiàn)
SCSI
由于目前硬盤領域存在ATA和SCSI兩種標準,所以不可否認,S.M.A.R.T技術是同時支持這兩個系列的產(chǎn)品的,只是在一些參數(shù)設定上存在一些差異,在關鍵參數(shù)上SCSI比ATA硬盤更為復雜。但在實際運作中,由于用戶和使用環(huán)境不同,S.M.A.R.T對ATA/IDE系統(tǒng)的干預比SCSI系統(tǒng)要多一些,而對SCSI故障的判定更為專業(yè)和準確些。SCSI硬盤的S.M.A.R.T技術與ATA硬盤的S.M.A.R.T技術相比更為復雜,以下僅列舉SCSI硬盤所特有參數(shù)中的一部分。
PrimaryTemp:硬盤盤體的工作溫度
Secondary Temp:PCB板周圍的工作溫度
Min and Max Temp:在一段時間內(nèi)硬盤盤體的最高和最低工作溫度
Velocity Observer Count:在一段時間內(nèi)伺服尋道時偏離指定磁道的次數(shù)
12V:12V供電電壓值
5V:5V供電電壓值
MR Res:MR磁頭的電阻值
Sectors Read:在一段時間內(nèi)從硬盤中讀取的扇區(qū)數(shù)
Sectors Written:在一段時間內(nèi)數(shù)據(jù)寫入硬盤中的扇區(qū)數(shù)
在ATA/IDE環(huán)境下,由主機上的軟件對S.M.A.R.T“報告狀態(tài)”命令生成的、來自硬盤的報警信號進行解讀。主機對硬盤進行查詢,以檢查這一命令的狀態(tài),如果顯示馬上要發(fā)生故障,就將告警信號送至最終用戶或系統(tǒng)管理員。系統(tǒng)管理員就安排關機時間,以備份數(shù)據(jù)和更換硬盤。主系統(tǒng)除對來自硬盤的“報告狀態(tài)”命令進行評估外,還可對屬性和告警報告進行評估。在SCSI環(huán)境下,S.M.A.R.T則只報告“狀況完好”或“出現(xiàn)故障”。由硬盤進行故障判斷,再由主機通知用戶采取措施。在SCSI標準中有一個檢測位,當硬盤確定可靠性出現(xiàn)問題時,檢測位就打上標記并通知最終用戶或系統(tǒng)管理員,采取相應措施。
USB
在USB標準中,USB不能用于計算機內(nèi)部儲存設備的基本總線(如ATA,SCSI等),其本身沒有為S.M.A.R.T.提供傳輸數(shù)據(jù)的途徑。在使用ATA硬盤,以USB為傳輸端口的移動硬盤中,即使硬盤內(nèi)S.M.A.R.T.仍然運作,但沒辦法直接向系統(tǒng)提供S.M.A.R.T.的數(shù)據(jù)?,F(xiàn)在新的移動硬盤的內(nèi)部驅(qū)動轉(zhuǎn)換電路已經(jīng)能以一些方法將硬盤內(nèi)S.M.A.R.T.的數(shù)據(jù)通過USB傳輸?shù)较到y(tǒng)或監(jiān)控程序中讀取。
內(nèi)容來自百科網(wǎng)