Як працює жорсткий диск і основи діагностики на прикладі HDDScan

Низька продуктивність комп’ютера не завжди обчислюється віком процесора або відеокарти. На потужність збірки можуть впливати й інші комплектуючі. Наприклад, чуйність комп’ютера сильно залежить від якості дисків. Нехай у ньому буде хоч дюжина ядер — якщо диск не може «прогодувати» стільки ротів, то комфортної роботи в таких умовах не добитися. Цю проблему повністю вирішили за допомогою твердотільних накопичувачів з високими швидкостями, але основний сегмент об’ємних накопичувачів все ще населяють старі добрі вінчестери. Їхня особливість така, що з часом вони починають «сипатися» і значно знижують продуктивність. Щоб відловити негідника і повернути свіжість робочій конячці, покладемося на спеціальний софт. У нашому прикладі це утиліта HDDScan. Заодно подивимося, що вона вміє робити з SSD.

Швидкість роботи диска прямо пропорційно впливає на продуктивність комп’ютера. Усе тому, що на диску зберігаються не тільки фотографії та музика, а й тисячі дрібних системних файлів, до яких нескінченно звертається процесор під час роботи. Відповідно, що швидше він отримує необхідні дані, то щасливіший користувач.

Взагалі, специфіку доставки файлів з диска можна порівняти з роботою кур’єра. Якщо дорога рівна, порожня і без заторів, то товар добереться до покупця миттєво. Коли кур’єр щоразу потрапляє на червоний сигнал світлофора або просто фізично не може їхати швидше через ями та купини, доставка піци або відеокарти затягується.

Так і зі швидкістю роботи диска: що менше перешкод знайдеться на шляху до оперативної пам’яті та процесора, то швидше працює комп’ютер. Тільки замість світлофорів і доріг тут свої нюанси, а таке примітивне порівняння допомагає легко розібратися в тому, як працюють накопичувачі, і для чого потрібно перевіряти диски на биті сектори. Почнемо з класики.

Як працює жорсткий диск

Обійдемо нетрі радіоелектроніки стороною і поверхнево розглянемо конструкцію жорсткого диска. Звичайний вінчестер складається з чотирьох основних деталей:

  • Плата з керуючою електронікою
  • Двигун
  • Магнітні диски (пластини)
  • Зчитувальні головки

На пластинах міститься інформація у вигляді намагнічених секторів. Кожен сектор може містити від 512 байт даних. Він перебуває у зв’язці з іншими на треку. Треків у пластини теж кілька, їхня кількість залежить від щільності. Для читання інформації використовуються магнітні «голівки», які блискавично рухаються по всій поверхні пластини і зчитують сектор за сектором.

В ідеальних умовах головка повинна послідовно зчитувати кожен сектор в одному треку і плавно переїжджати на наступний у міру зчитування інформації, як це відбувається під час програвання вінілових платівок. Але річ у тім, що інформація на диску розкидана по всій поверхні, що значно ускладнює швидкість доступу до певних секторів.

Уявімо, що потрібно зібрати 100 яблук. У саду росте 100 дерев і між ними відстань 100 метрів. Умова така: одна людина збирає яблука тільки з одного дерева, інша збирає тільки по одному з кожного. Звісно, перший набере потрібну кількість у кілька разів швидше, бо не витрачатиме час на біганину між деревами.

Те ж саме відбувається і в жорсткому диску — тільки замість людей там магнітні голівки, замість яблук — сектори, а за стометрівку прийнято трек. Втім, роботу диска краще подивитися наживо:

Так працює рухома частина пристрою, яка керується материнською платою. На ній розташовані основні елементи:

  • Процесор
  • Оперативна пам’ять
  • Чип із прошивкою
  • Контролер управління двигуном

Система управління диском працює подібно до справжнього комп’ютера: що потужніший процесор і більше оперативної пам’яті у диска, то швидше він обробляє дані з магнітних пластин. Відповідно, у таких пристроїв бувають збої і проблеми апаратного характеру.

Як ламається жорсткий диск

Бити не можна кидати

Звичайно, фізично зламати диск навпіл не так просто, а ось пошкодити деякі деталі під час роботи можна легко. Перше, чого боїться вінчестер, це удар або падіння під час роботи. Зчитувальна головка розташована прямо над магнітною пластиною і під час різкого удару обов’язково торкнеться її поверхні, тому що зазор між ними менший, ніж відбиток пальця людини:

А пластина в цей час обертається зі швидкістю 7200 об/хв. Після такого «торкання» диск можна викидати:

Щоб унеможливити випадки з «запилами» на пластинах, виробники навчили головки паркуватися. Тепер зчитувальний пристрій за відсутності завдання на читання і запис від’їжджає в безпечне місце і не «нависає» над обертовим диском. І тоді бий, пинай — диску все одно (жарт).

Кількість увімкнень і заклинювання шпинделя

На тривалість безвідмовної роботи диска також впливає кількість розкручувань шпинделя, який обертає магнітні пластини. Під час увімкнення двигун споживає підвищені струми порівняно з робочим станом, тому драйвер, що керує його швидкістю, може запросто вилетіти від перевантаження.

Це навряд чи загрожує новому диску, але легко може підкосити літній накопичувач. Тому для тих, хто «послужив», рекомендують відключати функції енергозбереження і сну, щоб не провокувати техніку підвищеним споживанням.

Зворотний бік такого підходу — нагрівання. Якщо не стежити за робочими температурами вінчестера, можна довести його до ручки і перегріти. Через це зменшується тепловий зазор у рухомих частинах двигуна і, як наслідок, видавлюється мастило. Робота без мастила та охолодження призводить до заклинювання шпинделя.

«Посипався»

Диск розсипається, звісно, не в прямому сенсі, просто виходять з ладу сектори з даними. Ті, які містять по 512 байт інформації і розташовуються в треках. Причиною пошкодження секторів може бути фізичний вплив на пластини — запили від голівок або потрапляння і розтягування бруду по дисках. Також на цілісність магнітної поверхні впливає температурний режим накопичувача і просто кількість годин напрацювання.

Під час зчитування інформації кожному сектору потрібен час, щоб намагнітитися або розмагнітитися. Свіжі та спритні сектори (блоки) роблять це дуже швидко, тому новий диск завжди працює помітно спритніше. Коли реакція блоків на зміни стану знижується, то час, який необхідний для повного зчитування інформації з сектора, збільшується. А за ним знижується і швидкість.

Модифікуємо наш приклад із яблуками. Фрукти, що висять на нижніх гілках, збирати легше і швидше, а ті, що достигли на верхівці, дістати важко. Відповідно, що швидше дістає до яблука збирач, то швидше набереться потрібна кількість. А той, хто полізе за фруктом на вершину, гальмуватиме весь процес.

Якщо блоки не відповідають на запити зчитувальних головок, їх вважають битими або бедами (скорочення від bad block — «поганий блок»). Такі блоки з’являються на всіх вінчестерах без винятку і навіть трапляються на нових дисках із заводу. Це витрати технології виробництва магнітних накопичувачів. Проте, це і єдина часта поломка, яку можна знайти самостійно в домашніх умовах. Для цього існують спеціальні утиліти, до однієї з яких ми і звернемося по допомогу.

Знаходимо й усуваємо BADи

Для пошуку «поганців» на поверхні магнітних пластин використовується різний софт. Деякі програми працюють тільки в системі DOS, інші можна запустити в Windows. Одна з таких утиліт HDDScan. Це дуже проста програма і вона заточена під швидкий прогін дисків і пошук битих секторів, чим ми і займемося. Для цього нам потрібні добровольці — це вінчестер 3.5 для настільних комп’ютерів і старий ноутбучний 2.5 диск. Подивимося, у кого з них завелися «поганці».

S.M.A.R.T

Під час першого запуску програми необхідно вибрати, над яким пристроєм будемо ставити експерименти.

Потім можна перейти у вкладку SMART, щоб дізнатися про стан диска, який моніториться за допомогою програми самотестування в прошивці диска. Для цього клацаємо першу кнопку в програмі і дивимося на висновок.

Зелені крапки — все класно. Жовті знаки оклику звертають увагу на недоліки в роботі. Саме в цьому диску система SMART говорить про перевищення перепризначених секторів і множинні помилки читання інформації. Коди помилок — 005, 197 і 198.

Що таке перепризначений сектор — це область, яка випала з магнітної пластини і була перепризначена на додаткове місце, де для таких випадків виробник залишає деяку кількість запасних секторів. Їхній запас обмежений, тому при вичерпанні ліміту диск лається на перевищення.

Так виглядає SMART справного вінчестера:

Тест поверхні диска

Відловлювати погані блоки цікаво, але дуже довго. Причому тривалість перевірки поверхні залежатиме від обсягу жорсткого диска. Добре, що для тестів до нас у руки потрапили моделі з невеликим об’ємом, а один диск — ще й битий до чортиків. Іншими словами, те, що потрібно для наочного тестування. Отже, обираємо потрібний накопичувач у програмі і клацаємо по кнопці «Tests».

Програма запропонує чотири варіанти тестування:

  • Verify — диск зчитуватиме блоки і записуватиме інформацію до себе в буфер (та сама ОЗП на платі диска);
  • Read — те саме, тільки інформація про блоки передаватиметься через SATA в комп’ютер;
  • Butterfly — аналогічно тесту Read, але блоки зчитуються попарно: перший блок ділянки і останній, і так поки не будуть перевірені всі сектори на треку;
  • Erase — назва говорить сама за себе: під час тестування блоки будуть перезаписані нулями (це потрібно для повного форматування диска без можливості відновлення даних).

Для наших експериментів достатньо Verify . Клацаємо і запасаємося терпінням: спимо, гуляємо, працюємо, граємося.

Під час тесту програма буде малювати квадрати. Це блоки. Кожен заповнюється певним кольором виходячи зі швидкості відгуку: що швидший блок, то менше часу йому потрібно на відгук. Час відгуку вимірюється в мілісекундах і вказується праворуч у вікні програми. Там же вказано загальну кількість блоків. Цей диск справний і блоки в ньому досить чуйні, основна частина з них працює швидше 10 мілісекунд. Три — найшвидші і ще три відгукуються за 20 мс. Такий диск посипатися не повинен.

Тепер перевіримо інший накопичувач, який було знято з ноутбука через низьку продуктивність. Вмикаємо той самий тест:

Ось вони, «поганці». Буквально з самого запуску посипалися беди. А ще купка різнокольорових блоків. Це найледачіші точки на поверхні диска, які дуже довго реагують на команди і скоро перетворяться на Bads — блоки, які вийшли з ладу повністю і є фактично пробоїнами на поверхні пластин.

Для порівняння, ось що показує п’ятирічний SSD у цьому ж тесті:

Майже всі блоки відповідають за 5 мс і менше. Це не дивно, адже SSD-диски твердотільні та не мають намагнічених пластин. Вони менш схильні до деградації від фізичних впливів і не реагують на потрапляння бруду. Зате у них є мікросхеми пам’яті, які неодмінно почнуть втрачати «банки» після подолання заводського ліміту на перезапис. Для якихось дисків це 100 терабайт, для якихось — більше. Цей SSD сиплеться через великий пробіг:

Інші можливості

Програма вміє показувати температуру накопичувачів. Під час тестування вінчестери працюють на знос і відчутно нагріваються, тому необхідно обов’язково стежити за температурою і створювати хороші умови для охолодження дисків:

В разделе Tools -> Features є кілька функцій для тонкого налаштування:

  • Automatic Acoustic Management — дає змогу встановити швидкість пересування головок, щоб зменшити шум ціною зниження продуктивності.
  • Advanced Power Management — те ж саме, тільки регулює швидкість шпинделя.
  • Power Management — час, через який диск піде в сон.
  • Spindle Control — примусове керування шпинделем (двигуном).

Підтримка цих функцій залежить від накопичувача, тому деякі з них можуть бути недоступні для регулювання.

Коли потрібно підшукувати заміну

Програма дає змогу швидко перевірити стан накопичувачів, причому не тільки HDD, а й сучасних SSD. Це поки що доступно не всім утилітам, а HDDScan у цьому плані зручна та інтуїтивна. Тим більше, що утиліта запускається з під працюючої системи і не вимагає створення завантажувального диска.

Очевидне запитання читача — як зрозуміти, що диск скоро почне сипатися і коли починати пошук заміни. Для цього орієнтуємося на кількість різнокольорових блоків:

Видно, що диск ще не втрачає сектори, але кілька кольорових блоків псують картину і вказують на те, що поверхня пластин уже зношується. За інтенсивного використання цього накопичувача червоні та зелені блоки перетворяться на беди. Ці блоки, між іншим, дуже помітні в іграх і проявляють себе як фризи або навіть вильоти. Так диск починає сипатися. Вкрай не рекомендується зберігати на ньому важливу інформацію.

Тому варто подумати про заміну старого доброго вінчестера на новий або переїхати на сучасний твердотільний диск із високою швидкістю. До речі, останні все частіше стають доступними навіть для складання бюджетних систем.