Про 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.
Ответить 

Смартфоны со съемными аккумуляторами 2018-2019 годов
14 смартфонов со съемным аккумулятором и один телефон
15 июля 2019 / 3
Смартфон с каплевидным вырезом - Samsung Galaxy A30
Недорогой современный смартфон без моноброви
22 апреля 2019 / 3
Android 10. Первый взгляд
Что будет в «юбилейной» ОС Google, которая выйдет в 2019 года
29 июля 2018 / 1
Смартфон Huawei с хорошей камерой - Huawei P20
Эффектный флагман со своим лицом
22 июля 2018 / 4
Обзор Android 9
Все об изменениях в Android 9
15 июля 2018 / 5
 
 
Анонс Windows 11 состоится 24 июня
Продажи iPhone 12 mini не оправдали ожидания
Будущий iPad Pro получит стеклянный корпус
Sun Valley может выйти уже осенью 2021 года
Samsung приступила к лицензированию Ultra Thin Glass (UTG)
Компания фокусируется на бытовой технике и электромобилях
 
 

Опрос

Какими картами вы пользуетесь?
или оставить собственный вариант в комментариях (14)





Статистика