Вирівнювання зносу

Вирівнювання зносу — це використання різних методів оптимізації запису, що дозволяють продовжити час, протягом якого носій даних придатний для використання. Найчастіше вирівнювання зносу використовується у пристроях з флеш-пам'яттю, наприклад твердотільних накопичувачах (SSD).

Термін превентивне вирівнювання зносу (англ. preemptive wear leveling, PWL) був використаний компанією Western Digital для опису їхньої техніки збереження жорстких дисків (HDD), призначених для зберігання аудіо- та відеоданих[1]. Однак жорсткі диски, як правило, не є пристроями з вирівнюванням зносу.

ОбґрунтуванняРедагувати

Пам'ять типу EEPROM і флеш-пам'ять складається з окремо стираємих сегментів, кожен з яких може бути підданий такій процедурі обмежену кількість разів, після якої сегмент більше не буде надійно зберігати дані. Кількість циклів стирання становить, приблизно, від 1 до 100 тисяч разів. Термін служби оптичних дисків, таких як CD-RW і DVD-RW,, оцінюється максимум в 1 тисячу циклів, а дисків DVD-RAM у 100 тисяч циклів. У випадку флеш-пам'яті кількість стирань сегментів залежить, в основному, від технології, за якою вона була виготовлена. Якщо це технологія SLC, то ця цифра може перевищувати 100 тисяч, якщо технологія MLC — це 3–5 тисяч циклів, у випадку пам'яті TLC — це лише 500 циклів стирання одного сегмента[2] .

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

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

МетодиРедагувати

Існує декілька методів продовження життя носія:

  • для виявлення потенційних помилок або усунення помилок, можна зберігати контрольну суму або код корекції помилки для кожного сектора або блоку;
  • можна також зберігати в пул резервних блоків/секторів. У разі відмови сектора або блоку всі наступні операції читання і запису цього сектора чи блоку можуть бути перенаправлені до альтернативного розташування в резервному пулі;
  • блоки/сектори на носії можуть бути відстежені за допомогою певного типу черги (LFU або LRU). Структура даних, що представляє цю чергу, повинна зберігатися поза носієм, або може зберігатися на носії, але таким чином, щоб простір, який він використовує для цєї черги, був сам по собі збалансований з точки зору зносу.

У пристроях із флеш-пам'яттю, таких як CompactFlash або Secure Digital, ці методи були реалізовані на апаратному рівні, за допомогою вбудованого мікроконтролера. Вирівнювання зносу працює на них прозоро, і з цими пристроями можна використовувати більшість традиційних файлових систем.

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

ПриміткиРедагувати

  1. WD AV : SATA Hard Drives[недоступне посилання] : [арх. 02.01.2010] / Western Digital // wdc.com. — Дата звернення: 01.06.2010.
  2. Next-Generation Flash: Challenges and Solutions[недоступне посилання] : [арх. 12.08.2014] / Accelerating Innovation Summit ; LSI Corporation. — 2012. — November 14–15.

ПосиланняРедагувати