Про TRIM животворящий или способ повысить скорость записи у SSD

Дифирамбов флэш-памяти поют много, в том числе и я. Для меня вопрос "зачем тебе внешний винт, если можно купить флэшку на 32 гига за 70 баксов?" уже почти вошел в список стандартных ответов на "хочу купить себе внешний винт, чего можно выбрать?" Через два-три года он станет подкреплен не только аргументами "флэшка меньше и надежнее", но и "размер и цена почти точно такие же!" Но это все лирика, а точнее будущее.

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

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

Так вот, данные эти могут быть записаны только в свободный блок памяти. Когда приходится иметь дело с чистой флэшкой все чики-пуки и запись происходит также быстро как и чтение. Но, когда мы удаляем какой-нибудь файл, страницы памяти (про страницы и блоки отсылаю читать по вышеприведенному линку) вовсе не очищаются, а просто помечаются в файловой системе как удаленные. Хотя физически данные все еще там. Это нормальное явление, точно также происходящее и на жестких дисках.

Теперь мы, такие молодцы, решили записать на флэшку чего-нибудь новенького. И представим ситуацию (которая на самом деле очень вероятна), что свободных блоков больше нет, есть только "освобожденные". Что приходится делать? Правильно, расчистить место для новых данных. Блок считывается в кэш флэшки, там очищаются необходимые страницы, а потом все возвращается на родину — вуа-ля, все готово для записи. Теперь догадываетесь, почему у флэшек запись на столько медленнее чтения?

Если для USB-флэшки или карточек CF/SD это еще терпимо, то вот для SSD этот недостаток не помешало бы устранить. К сожалению, пока не придуман способ переделать часть архитектуры флэш-памяти, но кое-какой выход нашли. Называется он "команда TRIM". Нет, это не команда типа "Движение за быстрый флэш", это такая машинная команда. Чтобы она работала требуется поддержка со стороны операционной системы и самого SSD. Если есть и то и другое, то происходит следующее.

При отправке запроса на удаление файла система отправляет запрос на число оборотов у накопителя. Если возвращается значение 0, то значит мы имеем дело с флэш-памятью, а поэтому можно попробовать послать команду TRIM. По началу страница памяти помечается как удаленная, но зато потом весь блок помещается в кэш, там очищается необходимая страница, а потом возвращается на место. Таким образом незначительно увеличивается время удаления, но зато запись будет происходить сразу в пустые блоки, что куда предпочтительнее.

Ну вот примерно так. Конечно, TRIM – это не панацея от недостатков флэш-памяти, это скорее обходной путь. И ходить им смогут пока только SSD в операционной системе Windows 7 — там поддержка этой команды более-менее реализована. Дело осталось за малым — чтобы производители этих самых SSD стали ее поддерживать.

Теги: SSD, Windows 7, флэш-память

Комментарии
Добавить комментарий

Введите имя:
Войти от:
или
Ваш комментарий:


Введите код:

E-mail (не обязательно)
Адрес электронной почты не предназначен к показу и будет использован только для уведомлений об ответах


Н#10 0
Спасибо за описание, а то в той же википедии описание только на анг, а инфа полезная
Ответить 
Антон#20 0
тоесть получается, что если у меня винИКСПИ сп3 то смысла покупать ССД-накопитель мало?!
Ответить 
 
win7#30 0
Получется, что так...
Ответить 
Евгений#41 1
Для работы TRIM нужны следующие вещи:
1. Win 7.
2. TRIM в SSD.
3. режим работы контроллера HDD ACHI.
4. чипсет и драйвер, которые поддерживают TRIM.

Вот с четвёртым пунктом всё непросто :)

Ответить 
 
Дмитрий#50 0
Спасибо за инфу, очень полезная статья
Ответить 
Miranda#60 0
А на обычных флэшках она работает? А как?
Ответить 
 
Алексей#70 0
Нет, не работает. В комментарии повыше приведены, какие требования необходимо выполнить для работы TRIM. USB-флэшка работает через интерфейс USB, а AHCI - это режим протокола SerialATA. Да и не добавляют в саму флэшку поддержку TRIM - смысла в этом нет. Команда актуальна на накопителях, где идет постоянная работа с данными, вроде SSD.
Ответить 

Обзор Huawei Y5 (2017)
Интересный смартфон за свои деньги
19 августа 2017 /
Планшет в металлическом корпусе - Samsung Galaxy Tab S3
Планшет с хорошей камерой и отличной автономностью
5 августа 2017 /
5G-сеть: что это такое и когда запустят
Характеристики и возможности сотовых сетей пятого поколения
1 августа 2017 / 1
Смартфон с диагональю экрана 5,5" - Samsung Galaxy J7 (2017)
Отличный металлический смартфон от Samsung за разумные деньги
22 июля 2017 /
Самый дешевый смартфон Huawei - Huawei Y3 (2017)
Бюджетный смартфон с хорошей камерой
16 июля 2017 /
 
 
Они должны ликвидировать разницу между стоимостью услуг связи дома и в поездках
Поисковый алгоритм стал умнее и точнее благодаря нейросети
Он вышел вперед в тестах немецкого института AV-TEST
Американские дети и подростки переходят в Instagram и Snapchat
Смартфон можно будет улучшить с помощью подключаемых модулей
Project Brainwave оптимизирована для задач машинного обучения
 
 

Опрос

Вы уже перешли на 64-битную ОС?
или оставить собственный вариант в комментариях





Статистика