Але про це трохи пізніше. Для початку зробимо невеликий екскурс в будову самого вінчестера. Що ж там напхано, в цій маленькій і досить-таки важкою коробочці? Точніше, розбиратися ми будемо не з усіма залозками, а розглянемо в загальних рисах сам диск, на якому і зберігається інформація.
Тепер про те, чому ж диск псується, а, отже, і життєво важлива (або не дуже :)) інформація втрачається. Про те, що вінчестер упускати з великої висоти не слід, сподіваюся, вже все знають. Взагалі-то його і з невеликої висоти кидати не варто: Навіть якщо ваш HDD гідно витримає удар, відбудеться розбалансування дисків вінчестера, тобто їх зміщення. І це значно наблизить кончину жорсткого диска. Хоча ще деякий час він прослужить вам вірою і правдою.
У сучасних вінчестерах, що мають швидкість 7200 об / хв (про 10.000 об / хв я поки промовчу з огляду на їхню малу поширеність), часом актуальна проблема високої температури. Ви глибоко помиляєтеся, якщо вважаєте температуру в 60ЬC нормальної для роботи HDD. Якщо проблема високої температури у вас існує, поставте на вінчестер вентилятор. І ні в якому разі не ставте HDD поруч з CD-RW - це загрожує додатковим нагріванням.
По суті справи, S.M.A.R.T. - це така мікропрограма, яка знаходиться в контролері диска. Вона контролює багато параметрів роботи і стану вінчестера. Тепер введемо таке поняття, як атрибути. Атрибути - це спеціальні, зазвичай чисельні, характеристики для опису параметрів. А параметрів, за якими S.M.A.R.T. тестує вінчестер, дуже багато. Причому набір може бути різним для різних виробників HDD. Кожна фірма сама визначає, які параметри є найбільш критичними для її продукції. Але основний набір ідентичний для всіх. Я приведу параметри, знайдені мною в різної документації.
Raw Read Error Rate - частота появи помилок при читанні даних з поверхні диска з вини апаратної частини накопичувача.
Throughput Performance - середня продуктивність (пропускна здатність) диска. Зменшення значення цього атрибута з великою ймовірністю вказує на проблеми в накопичувачі.
Spin Up Time - час розкрутки пакета дисків. Середній час розкрутки шпинделя диска від 0 RPM до робочої швидкості. Може бути зазначено в мілісекундах або секундах (залежить від виробника вінчестера і програми, за допомогою якої ви переглядаєте атрибути).
Start / Stop Count - кількість циклів запуск / зупинка шпинделя.
Reallocated Sectors Count - кількість перепризначених секторів (про перепризначення ми вже говорили, але при великій кількості перепризначених секторів швидкість роботи вінчестера може досить відчутно знизитися, тому що зчитує голівках постійно доводиться переходити з доріжки на доріжку).
Seek Error Rate - частота появи помилок позиціонування головок. У разі збою в механічній системі позиціонування, пошкодження сервометок, сильного термічного розширення дисків і т.п. виникають помилки позиціонування. Чим їх більше, тим гірше стан механіки і / або поверхні жорсткого диска.
Seek Time Performance - середня продуктивність операцій позиціонування головок. Цей параметр показує середню швидкість позиціонування приводу головок на вказаний сектор. Зниження значення цього атрибута говорить про неполадки в механіці приводу.
Power On Hours - кількість відпрацьованих годин у включеному стані. Зниження значення атрибута до критичного рівня вказує на вироблення диском ресурсу (MTBF - Mean Time Between Failures). На практиці навіть падіння цього атрибута до нульового значення не завжди вказує на реальне вичерпання ресурсу, і накопичувач може продовжувати нормально функціонувати.
Spin Retry Count - кількість повторів спроб старту шпинделя диска. Даний атрибут фіксує загальна кількість спроб розкрутки шпинделя і його виходу на робочу швидкість за умови, що перша спроба була невдалою.
Recalibration Retries - кількість повторів спроб рекалібровкі накопичувача. Даний атрибут фіксує загальна кількість спроб скидання стану накопичувача і установки головок на нульову доріжку за умови, що перша спроба була невдалою.
Device Power Cycle Count (Drive Power Cycle Count) - кількість повних циклів запуску / зупинки жорсткого диска.
Soft Read Error Rate - частота появи програмних помилок при читанні даних з диска. Показує частоту появи помилок при операціях читання з поверхні диска з вини програмного забезпечення, а не апаратної частини накопичувача.
Load / Unload Cycle Count - кількість циклів виведення головок в спеціальну паркувальну зону / в робоче положення.
Drive Temperature - температура (а ви що думали? :)). Теоретично повинна відображатися в градусах Цельсія, але у мене видало таку цифру, що навіть засумнівався, а не Реамюри це.
Reallocation Event Count - кількість операцій перепризначення (ремаппінга). Поле raw value цього атрибута показує загальну кількість спроб перепризначення збійних секторів в резервну область, зроблених накопичувачем. При цьому враховуються як успішні, так і невдалі операції.
Uncorrectable Sector Count - кількість нескоректована помилок. Показує загальна кількість помилок, що виникли при читанні / запису сектора, які не вдалося скорегувати. Зростання значення в поле raw value цього атрибута вказує на явні дефекти поверхні і / або проблеми в роботі механіки накопичувача.
UltraDMA CRC Error Count - загальна кількість помилок при передачі даних в режимі UltraDMA. Поле raw value містить кількість помилок, що виникли в режимі передачі даних UltraDMA в контрольній сумі.
Write Error Rate (Multi Zone Error Rate) - частота появи помилок при записі даних.
Disk Shift - зсув пакета дисків щодо осі шпинделя (часто виникає при падінні вінчестера).
G-Sense Error Rate - частота появи помилок в результаті ударних навантажень. Даний атрибут зберігає свідчення ударочувствітельного сенсора - загальна кількість помилок, що виникли в результаті отриманих накопичувачем зовнішніх ударних навантажень (при падінні, неправильного встановлення і т.п.).
Loaded Hours - навантаження на привід головок, викликана загальною напрацюванням годин накопичувачем. Враховується тільки період, протягом якого головки знаходилися в робочому положенні.
Load / Unload Retry Count - навантаження на привід головок, викликана численними повтореннями операцій читання, записи, позиціонування головок і т.п. Враховується тільки період, протягом якого головки знаходилися в робочому положенні.
Load Friction - навантаження на привід головок, викликана тертям в механічних частинах накопичувача.
Load / Unload Cycle Count - загальна кількість циклів навантаження на привід головок.
Load-in Time - загальний час навантаження на привід головок. Імовірно даний атрибут показує загальний час роботи накопичувача під навантаженням за умови, що головки знаходяться в робочому стані (поза паркувальної зони).
Torque Amplification Count - кількість зусиль крутного моменту приводу.
Power Off Retract Count - кількість зафіксованих повторів включення / виключення живлення накопичувача.
GMR Head Amplitude - амплітуда тремтіння головок (GMR-head) в робочому стані.
Всі ці параметри (ну, або хоча б частину) S.M.A.R.T. періодично тестує і записує. Але до записів потрібно ще добратися. Для цього існує безліч програм, які вміють це робити. Вони в досить зручній формі виводять поточні значення параметрів (Value) і їх граничні допустимі значення ( "обзивають" англійським словом Threshold). Величину Threshold кожна фірма визначає самостійно виходячи з особливостей будови і роботи своїх вінчестерів. Кожному параметру спочатку присвоюється значення Value зазвичай від 100 і вище. Потім у міру погіршення параметра його значення зменшується. При падінні величини Value до значення Threshold вінчестер теоретично повинен вийти з ладу. Але навіть в такій сумній ситуації ваш охоронець інформації може успішно продовжувати працювати. Однак при цьому величезний ризик в будь-яку секунду втратити все накопичене. Деякі параметри відзначені значком "*". Це означає, що вони є найбільш критичними для нормальної роботи HDD. І в разі падіння значення цього параметра нижче критичного значення найбільш вірогідний вихід вінчестера з ладу. Кожен з параметрів, в свою чергу, має свій тип:
- On-line collection (OC) - означає, що значення даного атрибута вважається під час on-line (або on-line і off-line) тестів, а не тільки при off-line-тесті.
- Pre-failure (PF) - поле threshold містить мінімально допустиме значення, нижче якого ймовірність поломки вінчестера стає дуже високою.
- Performance related (PR) - означає, що значення атрибута залежить від продуктивності накопичувача за окремими показниками.
- Events count (EC) - атрибут є лічильником подій.
- Error rate (ER) - атрибут є відносною частотою помилок за цим параметром.
- Self-preserve (SP) - значення атрибута оновлюється і зберігається автоматично.
Тести можуть виконуватися в двох режимах: автономному (off-line) і монопольному (on-line). Під час автономного тестування вінчестер повідомляє про успішне закінчення тесту ще до його завершення. Потім відбувається сам процес тестування, причому під час тестування можливе виконання інших команд. Тобто тестування відбувається в фоновому режимі. Під час монопольного режиму тестування виконання інших команд неможливо. Спроба виконати іншу команду приведе до переривання тесту.
В кінці статті хочу ще згадати пару програмок для отримання даних S.M.A.R.T. Є така хороша програма Smartudm. У неї є одночасно і плюс, і недолік - вона не йде під Windows NT / XP, а вимагає старий добрий DOS. З одного боку, це заподіює деякі незручності, але зате ніяка "розумна" Винда не заважає їй працювати (так надійніше). Я просто записав її на завантажувальний дискетку і періодично при завантаженні тестую з її допомогою стан свого вінчестера. Smartudm виводить наступні дані: ім'я атрибута (Attribute), його номер (ID), значення (Value), критичне значення (Threshold), найнижче значення за весь час тестування (Worst), поточне значення в шістнадцятковій формі (Raw), тип атрибута (Type). А ще вона виводить таку важливу величину, як T.E.C. (Threshold Exceed Condition) - можливе час зниження будь-якого параметра до критичного рівня, тобто приблизний час виходу вінчестера з ладу. Це не обов'язково повна відмова працювати - може бути і просто зниження продуктивності. До того ж, зазвичай вінчестери продовжують непогано справлятися зі своїм завданням, навіть виробивши встановлений виробником ресурс. Але все ж наближення T.E.C. - хороший привід задуматися про резервне копіювання цінної інформації.
Заздалегідь хочу попередити: після першого тестування програма T.E.C. вам не видасть, а ось після другого може повідомити дуже близьку дату (найближчий місяць, тиждень, день). Не лякайтесь. Через кілька днів програма накопичить достатньо даних, і, швидше за все, дата буде істотно перенесена в майбутнє. З кожним тестом T.E.C. буде перераховуватися і уточнюватися.
На деяких материнських платах в BIOS є пункт, в якому згадується S.M.A.R.T. Раджу навпроти нього поставити enable.