Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 11. Внешняя память на твердотельных накопителях.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
90 Кб
Скачать
☆

Механизм Wear Leveling

Кроме рассмотренных ранее специфических особенностей, твердотельные накопители имеют и другие отличия от НЖМД. В частности, для того чтобы обеспечить равномерное использование всех ячеек памяти и тем самым повысить долговечность твердотельного накопителя, применяется механизм Wear Leveling. Он заключается в том, что контроллер твердотельного накопителя отслеживает частоту использования различных блоков памяти, и если какие-­то блоки памяти применяются реже остальных, то контроллер принудительно повышает частоту их использования. Рассмотрим, к примеру, ситуацию, когда записывается большой архив фотографий, занимающий половину пространства твердотельного накопителя. Понятно, что архивные фотографии не будут перезаписываться, и получается, что, будучи один раз записанными, блоки памяти, соответствующие этому архиву, больше не используются, в то время как остальные блоки памяти эффективно применяются, а, следовательно, быстрее изнашиваются. Для того чтобы уравнять частоту использования всех блоков памяти и тем самым увеличить время жизни твердотельного накопителя, механизм Wear Leveling принудительно перезаписывает неиспользуемые блоки данных в другие блоки, высвобождая их для применения.

11.4. Способы повышения производительности

Слабость твердотельного накопителя заключается в том, что его производительность (скорость записи) со временем снижается. Происходит это из-за того, что по мере заполнения твердотельного накопителя уменьшается количество свободных блоков, которые можно использовать для перемещения данных.

Скорость записи можно повысить путем периодического выполнения процедуры очистки памяти от «мусора», то есть время от времени очищать блоки памяти от страниц, помеченных к удалению, увеличивая тем самым количество пустых блоков.

Для этого в компьютерах предусмотрена специальная команда TRIM. Если операционная система и твердотельный накопитель поддерживают команду TRIM, то при удалении некоторого файла с твердотельного накопителя операционная система посылает команду TRIM контроллеру твердотельного накопителя. Этим самым операционная система дает контроллеру знать, что данные из определенного набора страниц могут быть перезаписаны, то есть, соответствующие страницы памяти помечаются к удалению и могут применяться в процедуре Garbage Collection.

Важно отметить, что сама по себе команда TRIM не приводит к физическому удалению данных. Преимущество использования команды TRIM заключается в том, что с ее помощью можно увеличить количество блоков, содержащих страницы, отмеченные к удалению, и тем самым повысить эффективность процедуры Garbage Collection при выборе блока с наибольшим количеством страниц, отмеченных к удалению. Тем самым, команда TRIM способствует увеличению производительности твердотельного накопителя, минимизируя избыточную запись при перемещении данных. Кроме того, использование команды TRIM позволяет снизить количество перемещений данных в процедуре Wear Leveling.

11.5. Безопасность твердотельных накопителей

В твердотельном накопителе, так же как и в НЖМД, данные не удаляются сразу после того, как поступила команда на удаление файла и он был исключен из структур файловой системы. Даже если переписать файл поверху нулями – физически данные еще остаются, и если микросхемы флеш-памяти извлечь и прочитать на программаторе – можно найти 4К-байтные фрагменты файлов. Полное стирание данных стоит ждать лишь тогда, когда на диск будет записано количество данных, равное количеству свободного места + объем резерва (примерно 4Г байт для 60Г-байтного твердотельного накопителя). Если файл попадёт на «изношенную» ячейку, контроллер ещё не скоро перезапишет её новыми данными.