Сбор мусора

Что такое сбор мусора в твердотельных накопителях?

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

Несмотря на свое название, сбор мусора SSD не имеет ничего общего с отбрасыванием файлов, которые больше не нужны. Скорее, сбор мусора https://versia.ru/subbotnik-po-uborke-musora-v-buxte-dzhigit-reshili-povtorit направлен на оптимизацию пространства и повышение эффективности.

Почему сбор мусора важен

Сбор мусора необходим, потому что SSD, которые изначально чрезвычайно быстры, со временем замедляются. Хорошее обслуживание помогает сохранить скорость SSD и сделать их более надежными.

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

Флэш-накопители делят хранилище на блоки, которые далее делятся на страницы. Данные считываются и записываются на уровне страницы, но должны быть удалены на уровне блока. Для стирания данных требуется значительное напряжение, и трудно настроить это напряжение на более детальном уровне, не оказывая негативного влияния на соседние ячейки.

Цель сбора мусора — повысить эффективность, сохранив как можно больше пустых блоков, чтобы, когда SSD должен записывать данные, ему не приходилось ждать, пока блок будет удален.

Как работает сбор мусора SSD

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

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

Чтобы восстановить страницы с устаревшими данными, страницы с хорошими данными сначала должны быть перемещены в другой блок, чтобы исходный блок можно было стереть. Это постоянное смещение данных приводит к гораздо большему количеству циклов программы / стирания (P / E), чем требуется хост-системой, ситуация, называемая усилением записи.

Все эти дополнительные циклы P / E могут сократить срок службы SSD и негативно повлиять на производительность накопителя. Чтобы решить эти проблемы, производители SSD обычно встраивают возможности сбора мусора в свои контроллеры хранения, особенно для корпоративных дисков.

Как реализуется сбор мусора SSD

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

Несмотря на различия между методами сбора мусора, цели, как правило, одни и те же:

  • для лучшего управления циклами P / E; и
  • чтобы уменьшить влияние на производительность и общую выносливость.

Работая в фоновом режиме, сбор мусора систематически выполняет следующее:

  • определяет, какие страницы содержат устаревшие данные;
  • перемещает страницы с хорошими данными в другой блок; и
  • стирает все данные из исходного блока.

Многие контроллеры SSD запускают свои алгоритмы сбора мусора в непиковое время, чтобы поддерживать оптимальную скорость записи во время нормальной работы, хотя не все диски используют этот подход. Большинство контроллеров также включают выравнивание износа в свои операции по сбору мусора, чтобы более равномерно распределить циклы P / E по блокам хранения, чтобы предотвратить чрезмерный износ блоков.

Выравнивание износа помогает продлить срок службы твердотельных накопителей, а также сбор мусора и обрезка. SSD TRIM — это последовательная команда вложения передовых технологий, которая позволяет ОС информировать NAND flash SSD, какие блоки данных он может стереть, потому что они больше не используются. TRIM, который не является аббревиатурой, дополняет сбор мусора.