1. 程式人生 > >硬碟 SMART 檢測引數詳解

硬碟 SMART 檢測引數詳解

一、SMART概述

 

  硬碟的故障一般分為兩種:可預測的(predictable)和不可預測的(unpredictable)。後者偶而會發生,也沒有辦法去預防它,例如晶片突然失效,機械撞擊等。但像電機軸承磨損、碟片磁介質效能下降等都屬於可預測的情況,可以在在幾天甚至幾星期前就發現這種不正常的現象。如果發生這種問題,SMART功能會在開機時響起警報,至少讓使用者有足夠的時間把重要資料轉移到其它儲存裝置上。 
  最早期的硬碟監控技術起源於1992年,IBM在AS/400計算機的IBM 0662 SCSI 2代硬碟驅動器中使用了後來被命名為Predictive Failure Analysis(故障預警分析技術)的監控技術,它是通過在韌體中測量幾個重要的硬碟安全引數和評估他們的情況,然後由監控軟體得出兩種結果:“硬碟安全”或“不久後會發生故障”。

  不久,當時的微機制造商康柏和硬碟製造商希捷、昆騰以及康納共同提出了名為IntelliSafe的類似技術。通過該技術,硬碟可以測量自身的的健康指標並將參量值傳送給作業系統和使用者的監控軟體中,每個硬碟生產商有權決定哪些指標需要被監控以及設定它們的安全閾值。 
  1995年,康柏公司將該技術方案提交到Small Form Factor(SFF)委員會進行標準化,該方案得到IBM、希捷、昆騰、康納和西部資料的支援,1996年6月進行了1.3版的修正,正式更名為S.M.A.R.T.(Self-Monitoring Analysis And Reporting Technology),全稱就是“自我檢測分析與報告技術”,成為一種自動監控硬碟驅動器完好狀況和報告潛在問題的技術標準。 
  作為行業規範,SMART規定了硬碟製造廠商應遵循的標準,滿足SMART標準的條件主要包括: 
  1)在裝置製造期間完成SMART需要的各項引數、屬性的設定; 
  2)在特定系統平臺下,能夠正常使用SMART;通過BIOS檢測,能夠識別裝置是否支援SMART並可顯示相關資訊,而且能辨別有效和失效的SMART資訊; 
  3)允許使用者自由開啟和關閉SMART功能; 
  4)在使用者使用過程中,能提供SMART的各項有效資訊,確定裝置的工作狀態,並能發出相應的修正指令或警告。在硬碟及作業系統都支援SMART技術並且開啟的情況下,若硬碟狀態不良,SMART技術能夠在螢幕上顯示英文警告資訊:“WARNING:IMMEDIATLY BACKUP YOUR DATA AND REPLACE YOUR HARD DISK DRIVE,A FAILURE MAY BE IMMINENT.”(警告:立刻備份你的資料並更換硬碟,硬碟可能失效。) 
  SMART功能不斷從硬碟上的各個感測器收集資訊,並把資訊儲存在硬碟的系統保留區(service area)內,這個區域一般位於硬碟0物理面的最前面幾十個物理磁軌,由廠商寫入相關的內部管理程式。這裡除了SMART資訊表外還包括低階格式化程式、加密解密程式、自監控程式、自動修復程式等。使用者使用的監測軟體通過名為“SMART Return Status”的命令(命令程式碼為:B0h)對SMART資訊進行讀取,且不允許終端使用者對資訊進行修改。

 

二、SMART的ID程式碼

 

  硬碟SMART檢測的ID程式碼以兩位十六進位制數表示(括號裡對應的是十進位制數)硬碟的各項檢測引數。目前,各硬碟製造商的絕大部分SMART ID程式碼所代表的引數含義是一致的,但廠商也可以根據需要使用不同的ID程式碼,或者根據檢測專案的多少增減ID程式碼。一般來說,以下這些檢測項是必需的: 
  01(001) 底層資料讀取錯誤率 Raw Read Error Rate 
  04(004) 啟動/停止計數 Start/Stop Count 
  05(005) 重對映扇區數 Relocated Sector Count 
  09(009) 通電時間累計 Power-On Time Count (POH) 
  0A(010) 主軸起旋重試次數(即硬碟主軸電機啟動重試次數) Spin up Retry Count 
  0B(011) 磁碟校準重試次數 Calibration Retry Count 
  0C(012) 磁碟通電次數 Power Cycle Count

  C2(194) 溫度 Temperature 
  C7(199) ULTRA DMA奇偶校驗錯誤率 ULTRA ATA CRC Error Rate 
  C8(200) 寫錯誤率 Write Error Rate

 

三、SMART的描述(Description)

 

  描述,即某一檢測專案的名稱,是ID程式碼的文字解釋。對使用者而言,不僅要了解描述的含義,重要的是要了解各引數的值如“臨界值”、“最差值”的定義,“當前值”與“資料值”的區別等,才能對自己的硬碟狀態有一個基本瞭解。

 

四、SMART的值

 

  1、臨界值(Threshold) 
  臨界值是硬碟廠商指定的表示某一專案可靠性的門限值,也稱閾值,它通過特定公式計算而得。如果某個引數的當前值接近了臨界值,就意味著硬碟將變得不可靠,可能導致資料丟失或者硬碟故障。由於臨界值是硬碟廠商根據自己產品特性而確定的,因此用廠商提供的專用檢測軟體往往會跟Windows下檢測軟體的檢測結果有較大出入。 
  以引數Raw Read Error Rate(底層資料讀取錯誤率)為例:某型硬碟對該引數的計算公式為“10×log10(主機和硬碟之間所傳輸資料的扇區數)×512×8/重讀的扇區數”。其中“512×8”是把扇區數轉化為所傳輸的資料位(bits),這個值只在所傳輸的資料位處於1010~1012範圍時才作計算,而當Windows系統啟動後,主機和硬碟之間所傳輸的資料扇區大於或等於1012時,此值將重新復位,所以有些值在不同的操作環境、不同檢測程式下時會有較大的波動。

 

  2、當前值(Normalized value) 
  當前值是各ID項在硬碟執行時根據實測資料通過公式計算的結果,計算公式由硬碟廠家自定。 
  硬碟出廠時各ID專案都有一個預設的最大正常值,也即出廠值,這個預設的依據及計算方法為硬碟廠家保密,不同型號的硬碟都不同,最大正常值通常為100或200或253,新硬碟剛開始使用時顯示的當前值可以認為是預設的最大正常值(有些ID項如溫度等除外)。隨著使用損耗或出現錯誤,當前值會根據實測資料而不斷重新整理並逐漸減小。因此,當前值接近臨界值就意味著硬碟壽命的減少,發生故障的可能性增大,所以當前值也是判定硬碟健康狀態或推測壽命的依據之一。

  

  3、最差值(Worst) 
  最差值是硬碟執行時各ID項曾出現過的最大的非正常值。 
  最差值是對硬碟執行中某項資料變劣的峰值統計,該數值也會不斷重新整理。通常,最差值與當前值是相等的,如果最差值出現較大的波動(小於當前值),表明硬碟曾出現錯誤或曾經歷過惡劣的工作環境(如溫度)。

  

  4、資料值(Data或Raw value) 
  資料值是硬碟執行時各項引數的實測值,大部分SMART工具以十進位制顯示資料。 
  資料值代表的意義隨引數而定,大致可以分為三類: 
  1)資料值並不直接反映硬碟狀態,必須經過硬碟內建的計算公式換算成當前值才能得出結果; 
  2)資料值是直接累計的,如Start/Stop Count(啟動/停止計數)的資料是50,即表示該硬碟從出廠到現在累計啟停了50次; 
  3)有些引數的資料是即時數,如Temperature(溫度)的資料值是44,表示硬碟的當前溫度是44℃。 
  因此,有些引數直接檢視資料也能大致瞭解硬碟目前的工作狀態。

 

五、狀態(Status)

  

  硬碟的每項SMART資訊中都有一個臨界值(閾值),不同硬碟的臨界值是不同的,SMART針對各項的當前值、最差值和臨界值的比較結果以及資料值進行分析後,提供硬碟當前的評估狀態,也是我們直觀判斷硬碟健康狀態的重要資訊。根據SMART的規定,狀態一般有正常、警告、故障或錯誤三種狀態。

  SMART判定這三個狀態與SMART的 Pre-failure/advisory BIT(預測錯誤/發現位)引數的賦值密切相關,當Pre-failure/advisory BIT=0,並且當前值、最差值遠大於臨界值的情況下,為正常標誌。當Pre-failure/advisory BIT=0,並且當前值、最差值大於但接近臨界值時,為警告標誌;當Pre-failure/advisory BIT=1,並且當前值、最差值小於臨界值時,為故障或錯誤標誌。

 

六、SMART引數詳解

  

  一般情況下,使用者只要觀察當前值、最差值和臨界值的關係,並注意狀態提示資訊即可大致瞭解硬碟的健康狀況。下面簡單介紹各引數的含義,以紅色標出的專案是壽命關鍵項,藍色為固態硬碟(SSD)特有的專案。 
  在基於快閃記憶體的固態硬碟中,儲存單元分為兩類:SLC(Single Layer Cell,單層單元)和MLC(Multi-Level Cell,多層單元)。SLC成本高、容量小、但讀寫速度快,可靠性高,擦寫次數可高達100000次,比MLC高10倍。而MLC雖容量大、成本低,但其效能大幅落後於SLC。為了保證MLC的壽命,控制晶片還要有智慧磨損平衡技術演算法,使每個儲存單元的寫入次數可以平均分攤,以達到100萬小時的平均無故障時間。因此固態硬碟有許多SMART引數是機械硬碟所沒有的,如儲存單元的擦寫次數、備用塊統計等等,這些新增項大都由廠家自定義,有些尚無詳細的解釋,有些解釋也未必準確,此處也只是僅供參考。下面凡未註明廠商的固態硬碟特有的項均為SandForce主控晶片特有的,其它廠商各自單獨註明。

  

  01(001)底層資料讀取錯誤率 Raw Read Error Rate
  資料為0或任意值,當前值應遠大於與臨界值。 
  底層資料讀取錯誤率是磁頭從磁碟表面讀取資料時出現的錯誤,對某些硬碟來說,大於0的資料表明磁碟表面或者讀寫磁頭髮生問題,如介質損傷、磁頭汙染、磁頭共振等等。不過對希捷硬碟來說,許多硬碟的這一項會有很大的資料量,這不代表有任何問題,主要是看當前值下降的程度。 
  在固態硬碟中,此項的資料值包含了可校正的錯誤與不可校正的RAISE錯誤(UECC+URAISE)。

  注:RAISE(Redundant Array of Independent Silicon Elements)意為獨立矽元素冗餘陣列,是固態硬碟特有的一種冗餘恢復技術,保證內部有類似RAID陣列的資料安全性。

  

  02(002)磁碟讀寫通量效能 Throughput Performance
  此引數表示硬碟的讀寫通量效能,資料值越大越好。當前值如果偏低或趨近臨界值,表示硬碟存在嚴重的問題,但現在的硬碟通常顯示資料值為0或根本不顯示此項,一般在進行了人工離線SMART測試後才會有資料量。

  

  03(003)主軸起旋時間 Spin Up Time
  主軸起旋時間就是主軸電機從啟動至達到額定轉速所用的時間,資料值直接顯示時間,單位為毫秒或者秒,因此資料值越小越好。不過對於正常硬碟來說,這一項僅僅是一個參考值,硬碟每次的啟動時間都不相同,某次啟動的稍慢些也不表示就有問題。
  硬碟的主軸電機從啟動至達到額定轉速大致需要4秒~15秒左右,過長的啟動時間說明電機驅動電路或者軸承機構有問題。旦這一引數的資料值在某些型號的硬碟上總是為0,這就要看當前值和最差值來判斷了。 
  對於固態硬碟來說,所有的資料都是儲存在半導體積體電路中,沒有主軸電機,所以這項沒有意義,資料固定為0,當前值固定為100。

  

  04(004)啟停計數 Start/Stop Count
  這一引數的資料是累計值,表示硬碟主軸電機啟動/停止的次數,新硬碟通常只有幾次,以後會逐漸增加。系統的某些功能如空閒時關閉硬碟等會使硬碟啟動/停止的次數大為增加,在排除定時功能的影響下,過高的啟動/停止次數(遠大於通電次數0C)暗示硬碟電機及其驅動電路可能有問題。 
  這個引數的當前值是依據某種公式計算的結果,例如對希捷某硬碟來說臨界值為20,當前值是通過公式“100-(啟停計數/1024)”計算得出的。若新硬碟的啟停計數為0,當前值為100-(0/1024)=100,隨著啟停次數的增加,該值不斷下降,當啟停次數達到81920次時,當前值為100-(81920/1024)=20,已達到臨界值,表示從啟停次數來看,該硬碟已達設計壽命,當然這只是個壽命參考值,並不具有確定的指標性。 
  這一項對於固態硬碟同樣沒有意義,資料固定為0,當前值固定為100。

  

  05(005)重對映扇區計數 Reallocated Sectors Count/ 退役塊計數 Retired Block Count
  資料應為0,當前值應遠大於臨界值。
  當硬碟的某扇區持續出現讀/寫/校驗錯誤時,硬碟韌體程式會將這個扇區的實體地址加入缺陷表(G-list),將該地址重新定向到預先保留的備用扇區並將其中的資料一併轉移,這就稱為重對映。執行重對映操作後的硬碟在Windows常規檢測中是無法發現不良扇區的,因其地址已被指向備用扇區,這等於遮蔽了不良扇區。 
  這項引數的資料值直接表示已經被重對映扇區的數量,當前值則隨著資料值的增加而持續下降。當發現此項的資料值不為零時,要密切注意其發展趨勢,若能長期保持穩定,則硬碟還可以正常執行;若資料值不斷上升,說明不良扇區不斷增加,硬碟已處於不穩定狀態,應當考慮更換了。如果當前值接近或已到達臨界值(此時的資料值並不一定很大,因為不同硬碟保留的備用扇區數並不相同),表示缺陷表已滿或備用扇區已用盡,已經失去了重對映功能,再出現不良扇區就會顯現出來並直接導致資料丟失。 
  這一項不僅是硬碟的壽命關鍵引數,而且重對映扇區的數量也直接影響硬碟的效能,例如某些硬碟會出現資料量很大,但當前值下降不明顯的情況,這種硬碟儘管還可正常執行,但也不宜繼續使用。因為備用扇區都是位於磁碟尾部(靠近碟片軸心處),大量的使用備用扇區會使尋道時間增加,硬碟效能明顯下降。 
  這個引數在機械硬碟上是非常敏感的,而對於固態硬碟來說同樣具有重要意義。快閃記憶體的壽命是正態分佈的,例如說MLC能寫入一萬次以上,實際上說的是寫入一萬次之前不會發生“批量損壞”,但某些單元可能寫入幾十次就損壞了。換言之,機械硬碟的碟片不會因讀寫而損壞,出現不良扇區大多與工藝質量相關,而快閃記憶體的讀寫次數則是有限的,因而損壞是正常的。所以固態硬碟在製造時也保留了一定的空間,當某個儲存單元出現問題後即把損壞的部分隔離,用好的部分來頂替。這一替換方法和機械硬碟的扇區重對映是一個道理,只不過機械硬碟正常時極少有重對映操作,而對於固態硬碟是經常性的。 
  在固態硬碟中這一項的資料會隨著使用而不斷增長,只要增長的速度保持穩定就可以。通常情況下,資料值=100-(100×被替換塊/必需塊總數),因此也可以估算出硬碟的剩餘壽命。 
  Intel固態硬碟型號的第十二個字母表示了兩種規格,該字母為1表示第一代的50納米技術的SSD,為2表示第二代的34納米技術的SSD,如SSDSA2M160G2GN就表示是34nm的SSD。所以引數的檢視也有兩種情況: 
  50nm的SSD(一代)要看當前值。這個值初始是100,當出現替換塊的時候這個值並不會立即變化,一直到已替換四個塊時這個值變為1,之後每增加四個塊當前值就+1。也就是100對應0~3個塊,1對應4~7個塊,2對應8~11個塊…… 
  34nm的SSD(二代)直接檢視資料值,資料值直接表示有多少個被替換的塊。

  

  06(006)讀取通道餘量 Read Channel Margin
  這一項功能不明,現在的硬碟也不顯示這一項。

 

  07(007)尋道錯誤率 Seek Error Rate
  資料應為0,當前值應遠大於與臨界值。 
  這一項表示磁頭尋道時的錯誤率,有眾多因素可導致尋道錯誤率上升,如磁頭元件的機械系統、伺服電路有區域性問題,碟片表面介質不良,硬碟溫度過高等等。 
  通常此項的資料應為0,但對希捷硬碟來說,即使是新硬碟,這一項也可能有很大的資料量,這不代表有任何問題,還是要看當前值是否下降。

 

  08(008)尋道效能 Seek Time Performance
  此項表示硬碟尋道操作的平均效能(尋道速度),通常與前一項(尋道錯誤率)相關聯。當前值持續下降標誌著磁頭元件、尋道電機或伺服電路出現問題,但現在許多硬碟並不顯示這一項。

 

  09(009)通電時間累計 Power-On Time Count (POH)
  這個引數的含義一目瞭然,表示硬碟通電的時間,資料值直接累計了裝置通電的時長,新硬碟當然應該接近0,但不同硬碟的計數單位有所不同,有以小時計數的,也有以分、秒甚至30秒為單位的,這由磁碟製造商來定義。 
  這一引數的臨界值通常為0,當前值隨著硬碟通電時間增加會逐漸下降,接近臨界值表明硬碟已接近預計的設計壽命,當然這並不表明硬碟將出現故障或立即報廢。參考磁碟製造商給出的該型號硬碟的MTBF(平均無故障時間)值,可以大致估計剩餘壽命或故障概率。 
  對於固態硬碟,要注意“裝置優先電源管理功能(device initiated power management,DIPM)”會影響這個統計:如果啟用了DIPM,持續通電計數裡就不包括睡眠時間;如果關閉了DIPM功能,那麼活動、空閒和睡眠三種狀態的時間都會被統計在內。

 

  0A(010)主軸起旋重試次數 Spin up Retry Count
  資料應為0,當前值應大於臨界值。 
  主軸起旋重試次數的資料值就是主軸電機嘗試重新啟動的計數,即主軸電機啟動後在規定的時間裡未能成功達到額定轉速而嘗試再次啟動的次數。資料量的增加表示電機驅動電路或是機械子系統出現問題,整機供電不足也會導致這一問題。

 

  0B(011)磁頭校準重試計數 Calibration Retry Count
  資料應為0,當前值應遠大於與臨界值。
  硬碟在溫度發生變化時,機械部件(特別是碟片)會因熱脹冷縮出現形變,因此需要執行磁頭校準操作消除誤差,有的硬碟還內建了磁頭定時校準功能。這一項記錄了需要再次校準(通常因上次校準失敗)的次數。 
  這一項的資料量增加,表示電機驅動電路或是機械子系統出現問題,但有些型號的新硬碟也有一定的資料量,並不表示有問題,還要看當前值和最差值。

 

  0C(012)通電週期計數 Power Cycle Count
  通電週期計數的資料值表示了硬碟通電/斷電的次數,即電源開關次數的累計,新硬碟通常只有幾次。 
  這一項與啟停計數(04)是有區別的,一般來說,硬碟通電/斷電意味著計算機的開機與關機,所以經歷一次開關機資料才會加1;而啟停計數(04)表示硬碟主軸電機的啟動/停止(硬碟在執行時可能多次啟停,如系統進入休眠或被設定為空閒多少時間而關閉)。所以大多情況下這個通電/斷電的次數會小於啟停計數(04)的次數。

  通常,硬碟設計的通電次數都很高,如至少5000次,因此這一計數只是壽命參考值,本身不具指標性。

 

  0D(013)軟體讀取錯誤率 Soft Read Error Rate
  軟體讀取錯誤率也稱為可校正的讀取誤位元速率,就是報告給作業系統的未經校正的讀取錯誤。資料值越低越好,過高則可能暗示碟片磁介質有問題。

 

  AA(170)壞塊增長計數 Grown Failing Block Count(Micron 鎂光)
  讀寫失敗的塊增長的總數。

 

  AB(171)程式設計失敗塊計數 Program Fail Block Count
  Flash程式設計失敗塊的數量。

 

  AC(172)擦寫失敗塊計數 Erase Fail Block Count
  擦寫失敗塊的數量。

 

  AD(173)磨損平衡操作次數(平均擦寫次數) / Wear Leveling Count(Micron 鎂光)
  所有好塊的平均擦寫次數。 
  Flash晶片有寫入次數限制,當使用FAT檔案系統時,需要頻繁地更新檔案分配表。如果快閃記憶體的某些區域讀寫過於頻繁,就會比其它區域磨損的更快,這將明顯縮短整個硬碟的壽命(即便其它區域的擦寫次數還遠小於最大限制)。所以,如果讓整個區域具有均勻的寫入量,就可明顯延長晶片壽命,這稱為磨損均衡措施。

 

  AE(174)意外失電計數 Unexpected Power Loss Count
  硬碟自啟用後發生意外斷電事件的次數。

 

  B1(177)磨損範圍對比值 Wear Range Delta
  磨損最重的塊與磨損最輕的塊的磨損百分比之差。

 

  B4(180)未用的備用塊計數 Unused Reserved Block Count Total(惠普)
  固態硬碟會保留一些容量來準備替換損壞的儲存單元,所以可用的預留空間數非常重要。這個引數的當前值表示的是尚未使用的預留的儲存單元數量。

 

  B5(181)程式設計失敗計數 Program Fail Count
  用4個位元組顯示已程式設計失敗的次數,與(AB)引數相似。

 
  B5(181)非4KB對齊訪問數 Non-4k Aligned Access(Micron 鎂光)

  B6(182)擦寫失敗計數 Erase Fail Count
  用4個位元組顯示硬碟自啟用後塊擦寫失敗的次數,與(AC)引數相似。

 

  B7(183)串列埠降速錯誤計數 SATA Downshift Error Count
  這一項表示了SATA介面速率錯誤下降的次數。通常硬碟與主機板之間的相容問題會導致SATA傳輸級別降級執行。

 

  B8(184)I/O錯誤檢測與校正 I/O Error Detection and Correction(IOEDC)
  “I/O錯誤檢測與校正”是惠普公司專有的SMART IV技術的一部分,與其他製造商的I/O錯誤檢測和校正架構一樣,它記錄了資料通過驅動器內部快取記憶體RAM傳輸到主機時的奇偶校驗錯誤數量。 
  B8(184)點到點錯誤檢測計數 End to End Error Detection Count
  Intel第二代的34nm固態硬碟有點到點錯誤檢測計數這一項。固態硬盤裡有一個LBA(logical block addressing,邏輯塊地址)記錄,這一項顯示了SSD內部邏輯塊地址與真實實體地址間對映的出錯次數。 
  B8(184)原始壞塊數 Init Bad Block Count(Indilinx晶片)
  硬碟出廠時已有的壞塊數量。

 

  B9(185)磁頭穩定性 Head Stability(西部資料)
  意義不明。

 

  BA(186)感應運算振動檢測 nduced Op-Vibration Detection(西部資料)
  意義不明。

 

  BB(187)無法校正的錯誤 Reported Uncorrectable Errors(希捷)
  報告給作業系統的無法通過硬體ECC校正的錯誤。如果資料值不為零,就應該備份硬碟上的資料了。 
  報告給作業系統的在所有存取命令中出現的無法校正的RAISE(URAISE)錯誤。

 

  BC(188)命令超時 Command Timeout
  由於硬碟超時導致操作終止的次數。通常資料值應為0,如果遠大於零,最有可能出現的是電源供電問題或者資料線氧化致使接觸不良,也可能是硬碟出現嚴重問題。

 

  BD(189)高飛寫入 High Fly Writes
  磁頭飛行高度監視裝置可以提高讀寫的可靠性,這一裝置時刻監測磁頭的飛行高度是否在正常範圍來保證可靠的寫入資料。如果磁頭的飛行高度出現偏差,寫入操作就會停止,然後嘗試重新寫入或者換一個位置寫入。這種持續的監測過程提高了寫入資料的可靠性,同時也降低了讀取錯誤率。這一項的資料值就統計了寫入時磁頭飛行高度出現偏差的次數。

   BD(189)出廠壞塊計數 Factory Bad Block Count(Micron 鎂光晶片)

 

  BE(190)氣流溫度 Airflow Temperature
  這一項表示的是硬碟內部碟片表面的氣流溫度。在希捷公司的某些硬碟中,當前值=(100-當前溫度),因此氣流溫度越高,當前值就越低,最差值則是當前值曾經到達過的最低點,臨界值由製造商定義的最高允許溫度來確定,而資料值不具實際意義。許多硬碟也沒有這一項引數。

 

  BF(191)衝擊錯誤率 G-sense error rate
  這一項的資料值記錄了硬碟受到機械衝擊導致出錯的頻度。

 

  C0(192)斷電返回計數 Power-Off Retract Count
  當計算機關機或意外斷電時,硬碟的磁頭都要返回停靠區,不能停留在碟片的資料區裡。正常關機時電源會給硬碟一個通知,即Standby Immediate,就是說主機要求將快取資料寫入硬碟,然後就準備關機斷電了(休眠、待機也是如此);意外斷電則表示硬碟在未收到關機通知時就失電,此時磁頭會自動復位,迅速離開碟片。 
  這個引數的資料值累計了磁頭返回的次數。但要注意這個引數對某些硬碟來說僅記錄意外斷電時磁頭的返回動作;而某些硬碟記錄了所有(包括休眠、待機,但不包括關機時)的磁頭返回動作;還有些硬碟這一項沒有記錄。因此這一引數的資料值在某些硬碟上持續為0或稍大於0,但在另外的硬碟上則會大於通電週期計數(0C)或啟停計數(04)的資料。在一些新型節能硬碟中,這一引數的資料量還與硬碟的節能設計相關,可能會遠大於通電週期計數(0C)或啟停計數(04)的資料,但又遠小於磁頭載入/解除安裝計數(C1)的資料量。 
  對於固態硬碟來說,雖然沒有磁頭的載入/解除安裝操作,但這一項的資料量仍然代表了不安全關機,即發生意外斷電的次數。

 

  C1(193)磁頭載入/解除安裝計數 Load/Unload Cycle Count
  對於過去的硬碟來說,碟片停止旋轉時磁頭臂停靠於碟片中心軸處的停泊區,磁頭與碟片接觸,只有當碟片旋轉到一定轉速時,磁頭才開始漂浮於碟片之上並開始向外側移動至資料區。這使得磁頭在硬碟啟停時都與碟片發生摩擦,雖然碟片的停泊區不儲存資料,但無疑啟停一個迴圈,就使磁頭經歷兩次磨損。所以對以前的硬碟來說,磁頭起降(載入/解除安裝)次數是一項重要的壽命關鍵引數。 
  而在現代硬碟中,平時磁頭臂是停靠於碟片之外的一個專門設計的停靠架上,遠離碟片。只有當碟片旋轉達到額定轉速後,磁頭臂才開始向內(碟片軸心)轉動使磁頭移至碟片區域(載入),磁頭臂向外轉動返回至停靠架即解除安裝。這樣就徹底杜絕了硬碟啟停時磁頭與碟片接觸的現象,西部資料公司將其稱為“斜坡載入技術”。由於磁頭在載入/解除安裝過程中始終不與碟片接觸,不存在磁頭的磨損,使得這一引數的重要性已經大大下降。 
  這個引數的資料值就是磁頭執行載入/解除安裝操作的累計次數。從原理上講,這個載入/解除安裝次數應當與硬碟的啟停次數相當,但對於筆記本內建硬碟以及桌上型電腦新型節能硬碟來說,這一項的資料量會很大。這是因為磁頭臂元件設計有一個固定的返回力矩,保證在意外斷電時磁頭能靠彈簧力自動離開碟片半徑範圍,迅速返回停靠架。所以要讓硬碟執行時磁頭保持在碟片的半徑之內,就要使磁頭臂驅動電機(尋道電機)持續通以電流。而讓磁頭臂在硬碟空閒幾分鐘後就立即執行解除安裝動作,返回到停靠架上,既有利於節能,又降低了硬碟受外力衝擊導致磁頭與碟片接觸的概率。雖然再次載入會增加一點尋道時間,但畢竟弊大於利,所以在這類硬碟中磁頭的載入/解除安裝次數會遠遠大於通電週期計數(0C)或啟停計數(04)的資料量。不過這種載入/解除安裝方式已經沒有了磁頭與碟片的接觸,所以設計值也已大大增加,通常筆記本內建硬碟的磁頭載入/解除安裝額定值在30~60萬次,而桌上型電腦新型節能硬碟的磁頭載入/解除安裝設計值可達一百萬次。

 

  C2(194)溫度 Temperature
  溫度的資料值直接表示了硬碟內部的當前溫度。硬碟執行時最好不要超過45℃,溫度過高雖不會導致資料丟失,但引起的機械變形會導致尋道與讀寫錯誤率上升,降低硬碟效能。硬碟的最高允許執行溫度可檢視硬碟廠商給出的資料,一般不會超過60℃。 
  不同廠家對溫度引數的當前值、最差值和臨界值有不同的表示方法:希捷公司某些硬碟的當前值就是實際溫度(攝氏)值,最差值則是曾經達到過的最高溫度,臨界值不具意義;而西部資料公司一些硬碟的最差值是溫度上升到某值後的時間函式,每次升溫後的持續時間都將導致最差值逐漸下降,當前值則與當前溫度成反比,即當前溫度越高,當前值越低,隨實際溫度波動。

 

  C3(195)硬體ECC校正 Hardware ECC Recovered
  ECC(Error Correcting Code)的意思是“錯誤檢查和糾正”,這個技術能夠容許錯誤,並可以將錯誤更正,使讀寫操作得以持續進行,不致因錯誤而中斷。這一項的資料值記錄了磁頭在碟片上讀寫時通過ECC技術校正錯誤的次數,不過許多硬碟有其製造商特定的資料結構,因此資料量的大小並不能直接說明問題。 
  C3(195)實時無法校正錯誤計數 On the fly ECC Uncorrectable Error Count
  這一引數記錄了無法校正(UECC)的錯誤數量。 
  C3(195)程式設計錯誤塊計數 Program Failure block Count(Indilinx晶片)

 

  C4(196)重對映事件計數 Reallocetion Events Count
  資料應為0,當前值應遠大於臨界值。 
  這個引數的資料值記錄了將重對映扇區的資料轉移到備用扇區的嘗試次數,是重對映操作的累計值,成功的轉移和不成功的轉移都會被計數。因此這一引數與重對映扇區計數(05)相似,都是反映硬碟已經存在不良扇區。 
  C4(196)擦除錯誤塊計數 Erase Failure block Count(Indilinx晶片)
  在固態硬碟中,這一引數記錄了被重對映的塊程式設計失敗的數量。

 

  C5(197)當前待對映扇區計數 Current Pending Sector Count
  資料應為0,當前值應遠大於臨界值。
  這個引數的資料表示了“不穩定的”扇區數,即等待被對映的扇區(也稱“被掛起的扇區”)數量。如果不穩定的扇區隨後被讀寫成功,該扇區就不再列入等待範圍,資料值就會下降。 
  僅僅讀取時出錯的扇區並不會導致重對映,只是被列入“等待”,也許以後讀取就沒有問題,所以只有在寫入失敗時才會發生重對映。下次對該扇區寫入時如果繼續出錯,就會產生一次重對映操作,此時重對映扇區計數(05)與重對映事件計數(C4)的資料值增加,此引數的資料值下降。
  C5(197)讀取錯誤塊計數(不可修復錯誤)Read Failure block Count(Indilinx晶片)

 

  C6(198)離線無法校正的扇區計數 Offline Uncorrectable Sector Count
  資料應為0,當前值應遠大於臨界值。
  這個引數的資料累計了讀寫扇區時發生的無法校正的錯誤總數。資料值上升表明碟片表面介質或機械子系統出現問題,有些扇區肯定已經不能讀取,如果有檔案正在使用這些扇區,作業系統會返回讀盤錯誤的資訊。下一次寫操作時會對該扇區執行重對映。 
  C6(198)總讀取頁數 Total Count of Read Sectors(Indilinx晶片)

 

  C7(199)Ultra ATA訪問校驗錯誤率 Ultra ATA CRC Error Rate
  這個引數的資料值累計了通過介面迴圈冗餘校驗(Interface Cyclic Redundancy Check,ICRC)發現的資料線傳輸錯誤的次數。如果資料值不為0且持續增長,表示硬碟控制器→資料線→硬碟接口出現錯誤,劣質的資料線、介面接觸不良都可能導致此現象。由於這一項的資料值不會復零,所以某些新硬碟也會出現一定的資料量,只要更換資料線後資料值不再繼續增長,即表示問題已得到解決。 
  C7(199)總寫入頁數 Total Count of Write Sectors(Indilinx晶片)

 

  C8(200)寫入錯誤率 Write Error Rate / 多區域錯誤率 Multi-Zone Error Rate(西部資料)
  資料應為0,當前值應遠大於臨界值。 
  這個引數的資料累計了向扇區寫入資料時出現錯誤的總數。有的新硬碟也會有一定的資料量,若資料值持續快速升高(當前值偏低),表示碟片、磁頭元件可能有問題。 
  C8(200)總讀取指令數 Total Count of Read Command(Indilinx晶片)

 

  C9(201)脫道錯誤率 Off Track Error Rate / 邏輯讀取錯誤率 Soft Read Error Rate
  資料值累積了讀取時脫軌的錯誤數量,如果資料值不為0,最好備份硬碟上的資料。 
  C9(201)TA Counter Detected(意義不明)
  C9(201)寫入指令總數 Total Count of Write Command(Indilinx晶片)

 

  CA(202)資料地址標記錯誤 Data Address Mark errors
  此項的資料值越低越好(或者由製造商定義)。 
  CA(202)TA Counter Increased(意義不明)
  CA(202)剩餘壽命 Percentage Of The Rated Lifetime Used(Micron 鎂光晶片)
  當前值從100開始下降至0,表示所有塊的擦寫餘量統計。計算方法是以MLC擦寫次數除以50,SLC擦寫次數除以1000,結果取整數,將其與100的差值作為當前值(MLC預計擦寫次數為5000,SLC預計擦寫次數為100000)。 
  CA(202)快閃記憶體總錯誤bit數 Total Count of error bits from flash(Indilinx晶片)

 

  CB(203)軟體ECC錯誤數 Run Out Cancel
  錯誤檢查和糾正(ECC)出錯的頻度。 
  CB(203)校正bit錯誤的總讀取頁數 Total Count of Read Sectors with correct bits error(Indilinx晶片)

 

  CC(204)軟體ECC校正 Soft ECC Correction
  通過軟體ECC糾正錯誤的計數。 
  CC(204)壞塊滿標誌 Bad Block Full Flag(Indilinx晶片)

 

  CD(205)熱騷動錯誤率 Thermal Asperity Rate (TAR)
  由超溫導致的錯誤。資料值應為0。 
  CD(205)最大可程式設計/擦除次數 Max P/E Count(Indilinx晶片)

 

  CE(206)磁頭飛行高度 Flying Height
  磁頭距離碟片表面的垂直距離。高度過低則增加了磁頭與碟片接觸導致損壞的可能性;高度偏高則增大了讀寫錯誤率。不過準確地說,硬碟中並沒有任何裝置可以直接測出磁頭的飛行高度,製造商也只是根據磁頭讀取的訊號強度來推算磁頭飛行高度。 
  CE(206)底層資料寫入出錯率 Write Error Rate
  CE(206)最小擦寫次數 Erase Count Min(Indilinx晶片)

 

  CF(207)主軸過電流 Spin High Current
  資料值記錄了主軸電機執行時出現浪湧電流的次數,資料量的增加意味著軸承或電機可能有問題。 
  CF(207)最大擦寫次數 Erase Count Max(Indilinx晶片)

 

  D0(208)主軸電機重啟次數 Spin Buzz
  資料值記錄了主軸電機反覆嘗試啟動的次數,這通常是由於電源供電不足引起的。 
  D0(208)平均擦寫次數Erase Count Average(Indilinx晶片)

 

  D1(209)離線尋道效能 Offline Seek Performance
  這一項表示驅動器在離線狀態下的尋道效能,通常用於工廠內部測試。 
  D1(209)剩餘壽命百分比 Remaining Life %(Indilinx晶片)

 

  D2(210)斜坡載入值 Ramp Load Value
  這一項僅見於幾年前邁拓製造的部分硬碟。通常資料值為0,意義不明。 
  D2(210)壞塊管理錯誤日誌 BBM Error Log(Indilinx晶片)

 

  D3(211)寫入時振動 Vibration During Write
  寫入資料時受到受到外部振動的記錄。 
  D3(211)SATA主機介面CRC寫入錯誤計數 SATA Error Count CRC (Write)(Indilinx晶片)

 

  D4(212)寫入時衝擊 Shock During Write
  寫入資料時受到受到外部機械衝擊的記錄。 
  D4(212)SATA主機介面讀取錯誤計數 SATA Error Count Count CRC (Read)(Indilinx晶片)

 

  DC(220)碟片偏移量 Disk Shift
  硬碟中的碟片相對主軸的偏移量(通常是受外力衝擊或溫度變化所致),單位未知,資料值越小越好。

 

  DD(221)衝擊錯誤率 G-sense error rate
  與(BF)相同,資料值記錄了硬碟受到外部機械衝擊或振動導致出錯的頻度。

 

  DE(222)磁頭尋道時間累計 Loaded Hours
  磁頭臂元件執行的小時數,即尋道電機執行時間累計。

 

  DF(223)磁頭載入/解除安裝重試計數 Load/Unload Retry Count
  這一項與(C1)項類似,資料值累積了磁頭嘗試重新載入/解除安裝的次數。

 

  E0(224)磁頭阻力 Load Friction
  磁頭工作時受到的機械部件的阻力。

 

  E1(225)主機寫入資料量 Host Writes
  由於快閃記憶體的擦寫次數是有限的,所以這項是固態硬碟特有的統計。Intel的SSD是每當向硬碟寫入了65536個扇區,這一項的資料就+1。如果用HDTune等軟體檢視SMART時可以自己計算,Intel SSD Toolbox已經為你算好了,直接就顯示了曾向SSD中寫入過的資料量。

 

  E2(226)磁頭載入時間累計 Load 'In'-time
  磁頭元件執行時間的累積數,即磁頭臂不在停靠區的時間,與(DE)項相似。

 

  E3(227)扭矩放大計數 Torque Amplification Count
  主軸電機試圖提高扭矩來補償碟片轉速變化的次數。當主軸軸承存在問題時,主軸電機會嘗試增加驅動力使碟片穩定旋轉。這個引數的當前值下降,說明硬碟的機械子系統出現了嚴重的問題。

 

  E4(228)斷電返回計數 Power-Off Retract Cycle
  資料值累計了磁頭因裝置意外斷電而自動返回的次數,與(C0)項相似。

 

  E6(230)GMR磁頭振幅 GMR Head Amplitude
  磁頭“抖動”,即正向/反向往復運動的距離。

 

  E7(231)溫度 Temperature
  溫度的資料值直接表示了硬碟內部的當前溫度,與(C2)項相同。 
  E7(231)剩餘壽命 SSD Life Left
  剩餘壽命是基於P/E週期與可用的備用塊作出的預測。新硬碟為100;10表示PE週期已到設計值,但尚有足夠的保留塊;0表示保留塊不足,硬碟將處於只讀方式以便備份資料。

 

  E8(232)壽命餘量 Endurance Remaining
  壽命餘量是指硬碟已擦寫次數與設計最大可擦寫次數的百分比,與(CA)項相似。 
  E8(232)預留空間剩餘量 Available Reserved Space(Intel晶片)
  對於Intel的SSD來說,前邊05項提到會保留一些容量來準備替換損壞的儲存單元,所以可用的預留空間數非常重要。當保留的空間用盡,再出現損壞的單元就將出現資料丟失,這個SSD的壽命就結束了。所以僅看05項意義並不大,這一項才最重要。這項引數可以看當前值,新的SSD裡所有的預留空間都在,所以是100。隨著預留空間的消耗,當前值將不斷下降,減小到接近臨界值(一般是10)時,就說明只剩下10%的預留空間了,SSD的壽命將要結束。這個與(B4)項相似。

 

  E9(233)通電時間累計 Power-On Hours
  對於普通硬碟來說,這一項與(09)相同。 
  E9(233)介質磨耗指數 Media Wareout Indicator(Intel晶片)
  由於固態硬碟的擦寫次數是有限的,當到達一定次數的時候,就會出現大量的單元同時損壞,這時候預留空間也頂不住了,所以這項引數實際上表示的是硬碟設計壽命。Intel的SSD要看當前值,隨著NAND的平均擦寫次數從0增長到最大的設計值,這一引數的當前值從開始的100逐漸下降至1為止。這表示SSD的設計壽命已經終結。當然到達設計壽命也不一定意味著SSD就立即報廢,這與快閃記憶體晶片的品質有著很大的關係。

  注:Total Erase Count全擦寫計數是指固態硬碟中所有塊的擦寫次數的總和,不同規格的NAND晶片以及不同容量的SSD,其最大全擦寫次數均有所不同。

 

  F0(240)磁頭飛行時間 Head Flying Hours / 傳輸錯誤率 Transfer Error Rate(富士通)
  磁頭位於工作位置的時間。 
  富士通硬碟表示在資料傳輸時連線被重置的次數。

 

  F1(241)LBA寫入總數 Total LBAs Written
  LBA寫入數的累計。 
  F1(241)寫入剩餘壽命 Lifetime Writes from Host
  自硬碟啟用後主機向硬碟寫入的資料總量,以4個位元組表示,每寫入64GB位元組作為一個單位。

 

  F2(242)LBA讀取總數 Total LBAs Read
  LBA讀取數的累計。某些SMART讀取工具會顯示負的資料值,是因為採用了48位LBA,而不是32位LBA。 
  F2(242)讀取剩餘壽命 Lifetime Reads from Host
  自硬碟啟用後主機從硬碟讀取的資料總量,以4個位元組表示,每讀取64GB位元組作為一個單位。

 

  FA(250)讀取錯誤重試率 Read Error Retry Rate
  從磁碟上讀取時出錯的次數。

 

  FE(254)自由墜落保護 Free Fall Protection
  現在有些筆記本硬碟具有自由墜落保護功能,當硬碟內建的加速度探測裝置檢測到硬碟位移時,會立即停止讀寫操作,將磁頭臂復位。這個措施防止了磁頭與碟片之間發生摩擦撞擊,提高了硬碟的抗震效能。這個引數的資料裡記錄了這一保護裝置動作的次數。