Как выполнить trim в windows 7

В сети интернет есть уже достаточно много руководств и различных твикеров для продления срока службы SSD под управлением ОС Windows 7. Изучение этих статей показывает, что везде используется одна и та же информация.

1.      Windows 7. Мифы об уменьшении износа SSD-накопителей.

   После анализа нескольких руководств по оптимизации, были выбраны пять способов, которые, теоретически, реально могли бы увеличить срок службы SSD на наших POS – терминалах:

  1. Отключение службы SuperFetch и ее компонентов
  2. Отключение службы дефрагментации дисков
  3. Отключение файла подкачки
  4. Отключение защиты системы
  5. Отключение службы индексирования

   После того, как необходимые теоретические данные были собраны, мы приступили к следующему этапу – проведению практического эксперимента. Для проведения эксперимента были использованы два POS-компьютера одинаковой конфигурации с установленной ОС Windows Embedded POSReady 7:

   - платформа на процессоре Intel Atom D2550 (1M Cache, 1.86 GHz);

   - ОЗУ 2 Gb, DDR3;

   - SSD-накопитель BIWIN C6213 16 Gb (версия прошивки M0702A).

   На одном устройстве ОС имела все настройки по умолчанию, на другом в ОС были применены пять рекомендаций, описанных выше. В рамках теста мы оценивали влияние всех этих «твиков» на эффективность записи данных на SSD накопители и на скорость работы ПО Frontol v.5. В качестве нагрузки в данном тесте использовалась циклическая перезапись базы данных Frontol (50 000 товаров) в течение 336 часов. В ходе всего эксперимента, с интервалом в один час производилась запись в лог – файл информации SMART каждого SSD – накопителя. По результатам анализа данных из лог-файлов и произведенных с их использованием расчетов, были сделаны выводы о влиянии всех описанных выше методов на работу и износ SSD. Чтобы наглядно оценить это влияние, мы ввели такой параметр, как коэффициент эффективности записи данных (Kэ). Этот коэффициент определяется как отношение среднего количества циклов перезаписи к общему количеству записанных данных (в Гб). Для оценки скорости работы ПО Frontol мы подсчитывали общее количество записанных на SSD данных и количество совершенных за 336 часов обновлений базы данных (чем больше обновлений, тем, соответсвенно, выше скорость работы ПО Frontol). Все данные были сведены в таблицу «Результаты эксперимента»

Таблица «Результаты эксперимента»

Тест

336 часов

Настройки ОС по умолчанию

Оптимизированные настройки ОС

Записано данных, Гб

2027,42

1721,26

Циклов перезаписи

1089

919

Коэффициент эффективности записи данных

0,54

0,53

Обновлений Базы Данных Frontol

841

709

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

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

   2.      Дополнительные рекомендации по работе с SSD – накопителями.

   2.1. С чего начать?

   При разметке вашего SSD-накопителя, перед установкой ОС Windows, рекомендуется оставлять 10% – 20% неразмеченного пространства от всего доступного объема. Неразмеченная область на вашем SSD всегда будет оставаться свободной, что позволит поддерживать быстродействие накопителя на должном уровне даже по мере его заполнения.

   2.2. Работа функции TRIM в Windows 7.

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

   Рассмотрим наглядно преимущества, которые дает нам команда TRIM для SSD. Представим ситуацию, когда вы создали два файла и один файл сразу удалили:

  1. Если TRIM не работает, накопитель узнает об удалении файла только в тот момент, когда ОС прикажет ему перезаписать LBA, покрывающий ставший ненужным файл.
  2. Если TRIM работает, то операционная система сразу сообщит контроллеру об удалении файла командой TRIM.

   То есть, при сохранении данных в занятую ячейку, системе приходится выполнять процедуру в несколько этапов: Первый – копирование старых данных из ячейки в кэш, Второй – очистка ячейки, Третий – замена старых данных новыми, Четвертый – запись данных в ячейку SSD. Если же ячейка пустая – выполняется только один, последний этап (запись). Исходя их этого, можно легко понять, что скорость записи данных в пустые ячейки SSD намного выше, чем в занятые. Делаем вывод: При таких условиях, скорость работы SSD будет со временем снижаться (существенно) из-за необходимости предварительной очистки ячеек с устаревшими данными непосредственно перед записью новых. Чтобы этого не происходило, в Windows 7 и была включена функция TRIM.

   По умолчанию функция TRIM в ОС Windows 7, как правило, включена. Чтобы проверить активность TRIM, выполните следующее:

   А. В окне командной строки введите: fsutil behavior query DisableDeleteNotify

   Б. Если ответом будет цифра “0″ – значит TRIM включена, если “1″ – выключена

   Чтобы включить TRIM, в командной строке введите: fsutil behavior query|set DisableDeleteNotify = 0

   Команда DisableDeleteNotify только показывает создание запросов для TRIM, но не может гарантировать корректность их выполнения (например, система отвечает, что TRIM работает даже тогда, когда ее выполнение не поддерживается накопителем).

 Проверить действительную работу функции TRIM можно с помощью утилиты TRIMcheckhttp://files.thecybershadow.net/trimcheck/ :

  1. Запустите утилиту с диска, на котором хотите проверить работу TRIM, и нажмите Enter.
  2. Закройте окно, подождите пару минут и повторно запустите утилиту.

   На рисунке показано сообщение, подтверждающее работу TRIM:

Принцип работы утилиты при этих запусках таков:

   А. Утилита записывает данные на диск и отмечает адреса виртуальных блоков, в которых они размещены. Эти адреса она сохраняет в JSON-файл в своей папке, после чего удаляет данные, что порождает отправку команды TRIM.

   Б. Утилита смотрит, находятся ли записанные ранее данные по сохраненным адресам. Их отсутствие означает, что контроллер принял команды TRIM к сведению и удалил данные.

   Что будет при следующем запуске? Пока файл JSON лежит рядом с утилитой, она сверяется с ним. Удаление файла возвращает вас к шагу 1.

   Что делать, если утилита TRIMcheck сообщает о том, что TRIM на Вашей системе не работает? Для поддержки команд TRIM контроллер SATA должен работать в режиме AHCI и нужно проверить, что режим AHCI включен (и включить его, если установлен другой режим). Для этого необходимо зайти в BIOS и найти один из следующих параметров (в различных BIOS он именуется по-разному):

SATA/IDE Mode

SATA RAID/AHCI Mode

Onboard SATA Type

SATA Controller Mode

Configure SATA as

и выбрать режимAHCI.

   Пример для компьютера Posiflex TX-4200:

   Заходим в БИОС (клавиша F2) => Advanced => IDE Configuration => Configure SATA as => выбираем [AHCI] => Сохраняем настройки (клавиша F4)

   Включать AHCI желательно до установки системы, иначе Windows при следующей загрузке выпадет в синий экран. В Windows 7 можно переключиться на этот режим и при установленной системе, но для этого нужно предварительно произвести настройку реестра ОС:

  1. Открываем редактор реестра. Проходим по следующему пути: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci\START  -  раскрываем его и заменяем указанное в нём число на 0. Жмём ОК и закрываем окно:

\   2. Далее проходим по следующему пути:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\IastorV\START - раскрываем его и так же заменяем указанное в нём число на 0

 3. Перезагружаемся, заходим в BIOS и включаем режим AHCI.

   После следующей загрузки система может запросить драйвер для вашего SATA AHCI контроллера, в этом случае, укажите путь к соответствующему драйверу для вашей материнской платы.

   Если режим AHCI включен и все необходимые драйверы контроллеров установлены, но TRIM по прежнему не функционирует, то, скорее всего, Вы используете устаревшую модель SSD-накопителя, контроллер которой не поддерживает функцию TRIM. В этом случае рекомендуем Вам заменить твердотельный накопитель любой современной моделью, чтобы обеспечить высокую производительность Вашего POS-компьютера.

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

Поддержка TRIM для SSD включена по умолчанию в Windows 11 и Windows 10, 8.1 и 7 (как и многие другие функции оптимизации работы твердотельных накопителей, см. Настройка SSD для Windows 10), однако, в некоторых случаях это может оказаться не так. В этой инструкции подробно о том, как проверить, включена ли функция, а также о том, как включить TRIM в Windows, если поддержка команды отключена и дополнительная, касающаяся старых ОС и внешних SSD.

Примечание: некоторые материалы сообщают о том, что для работы TRIM SSD обязательно должен работать в режиме AHCI, а не IDE. В действительности, режим эмуляции IDE, включенный в BIOS/UEFI (а именно эмуляция IDE используется на современных материнских платах) не является помехой для работы TRIM, однако в некоторых случаях возможны ограничения (может не работать на отдельных драйверах IDE-контроллера), более того, в режиме AHCI ваш диск будет работать быстрее, так что на всякий случай убедитесь, что диск работает в режиме AHCI и, желательно, переключите его в этот режим, если это не так, см. Как включить режим AHCI в Windows 10.

Как проверить, включена ли команда TRIM

Для проверки состояния TRIM для вашего SSD накопителя можно использовать командную строку, запущенную от имени администратора (можно использовать и PowerShell).

  1. Запустите командную строку от имени администратора (для этого в Windows 11 и Windows 10 можно начать вводить «Командная строка» в поиске на панели задач, затем нажать правой кнопкой мыши по найденному результату и выбрать нужный пункт контекстного меню). Также можно нажать правой кнопкой мыши по кнопке Пуск и запустить Терминал Windows или Windows PowerShell от имени администратора.Запуск командной строки от администратора
  2. Введите команду fsutil behavior query disabledeletenotify и нажмите Enter.
  3. В Windows 11 вы увидите результат как на следующем скриншоте, в случае если TRIM включен: Команда TRIM включена в Windows 11
  4. В Windows 10 и более ранних версиях результат может выглядеть иначе, как на изображении ниже или, как вариант: NTFS DisableDeleteNotify = 0 (отключено), однако, это как раз говорит о том, что TRIM включен.Проверка TRIM

В результате отображается отчет о том включена ли поддержка TRIM для разных файловых систем (NTFS и ReFS). При этом значение 0 (ноль) говорит о том, что команда TRIM включена и используется, значение 1 — отключена. Если в скобках вы видите дополнение вида «отключено», оно относится не к команде TRIM, а к DisableDeleteNotify (отключение уведомление об удалении): когда DisableDeleteNotify отключено, TRIM включен и наоборот.

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

Как включить TRIM в Windows 11, Windows 10, 8.1 и 7

Как было отмечено в начале инструкции, по умолчанию поддержка TRIM должна включаться для SSD автоматически в современных ОС. Если у вас она отключена, то прежде, чем включать TRIM вручную, рекомендую проделать следующие действия (возможно, ваша система «не знает», что подключен SSD):

  1. В проводнике откройте свойства твердотельного накопителя (правый клик — свойства), и на вкладке «Сервис» нажмите кнопку «Оптимизировать». Оптимизировать диск в Windows
  2. В следующем окне обратите внимание на столбец «Тип носителя». Если там не указан «твердотельный накопитель» (вместо этого — «Жесткий диск»), видимо, Windows пока не знает о том, что у вас SSD и именно по этой причине отключена поддержка TRIM. SSD обнаружен Windows
  3. Чтобы система правильно определила тип диска и включила соответствующие функции оптимизации, запустите командную строку от имени администратора и введите команду winsat diskformal Анализ производительности диска в Windows
  4. По окончании выполнения проверки скорости накопителя, можно снова заглянуть в окно оптимизации дисков и проверить поддержку TRIM — с большой вероятность, она будет включена.

Если же тип диска определен правильно, то задать опции TRIM можно вручную, с помощью командной строки, запущенной от имени администратора следующими командами

  • fsutil behavior set disabledeletenotify NTFS 0 — включить TRIM для SSD с файловой системой NTFS. Включить TRIM в командной строке
  • fsutil behavior set disabledeletenotify ReFS 0 — включить TRIM для ReFS.

Аналогичной командой, установив значение 1 вместо 0 можно отключить поддержку TRIM.

Дополнительная информация

В завершение, некоторые дополнительные сведения, которые могут оказаться полезными.

  • Проверить, включена ли функция TRIM вы можете с использованием программ для SSD.
  • На сегодняшний день появились внешние твердотельные накопители и вопрос о включении TRIM, бывает, касается и их. В большинстве случаев для внешних SSD подключаемых по USB включить TRIM нельзя, т.к. это команда SATA, которая не передаётся по USB (но в сети есть информация об отдельных контроллерах USB для внешних накопителей с поддержкой TRIM). Для SSD, подключаемых по Thunderbolt поддержка TRIM возможна (зависит от конкретного накопителя).
  • В Windows XP и Windows Vista нет встроенной поддержки TRIM, но её можно включить с помощью Intel SSD Toolbox (старых версий, специально для указанных ОС), старых версий Samsung Magician (нужно вручную включить оптимизацию производительности в программе) с поддержкой XP/Vista, также существует способ включения TRIM с помощью программы 0&0 Defrag (поищите в Интернете именно в контексте вашей версии ОС).

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

И один из недостатков — ограниченное число циклов записи для SSD на базе флэш-памяти — обычная флэш-память выдерживает 300.000 — 500.000 операций стирания/записи в одну и ту же ячейку, у некоторых специальных типов флэш-памяти этот параметр декларируется на уровне полутора миллиона операций. Специальные файловые системы или алгоритмы работы контроллера устройства могут смягчить эту проблему путём динамического распределения часто перезаписываемых кластеров равномерно по диску (так называемое «выравнивание износа»).

В этой статье предлагается несколько советов, как ограничить количество циклов записи на SSD- диск, тем самым сохраним высокую производительность.

Отключаем индексацию

Для отключения индексации кликните левой кнопкой мыши по пункту «Компьютер» в меню «Пуск«. В списке выберите SSD-диск, кликните правой кнопкой и выберите «Свойства«. В открывшемся окне снимите флажок «Разрешить индексирование содержимое файлов на этом диске в дополнение к свойствам файла«.В окне предупреждения — отменять индексацию только для выбранного диска либо для всех вложенных папок и каталогов. Выбираем второй вариант, нажимаем ОК.

Отключаем режим гибернации

Запускаем Командную строку от имени Администратора. Вводим команду

powercfg -h off

Если все правильно, то командная строка вернётся к первоначальному состоянию

Отключаем или переносим файл подкачки.

Как перенести файл подкачки подробно описано здесь — Настройка файла подкачки (pagefile.sys) и перенос на другой жесткий диск Отключить файл подкачки можно там же выбрав «Без файла подкачки» и нажать кнопку «Задать«.

Отключаем службы SuperFetch и Windows Search

Для отключения служб делаем следующее Пуск — Панель управления — Администрирование — Службы. Находим службы в списке и два раза кликаем на имени службы. В открывшемся окне сначала нажимаем кнопку «Остановить«, а потом выбираем «Тип запуска» — «Отключена«

Отключаем Prefetch и SuperFetch

Для отключения этих функций запускаем редактор реестра Пуск — Выполнить и вводим команду regedit. Находим раздел

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\PrefetchParameters

Меняем значение параметров EnablePrefetcher и EnableSuperfetch с 1 на 0

Отключаем ClearPageFileAtShutdown и LargeSystemCache

Для отключения этих функций запускаем редактор реестра Пуск — Выполнить и вводим команду regedit. Находим раздел

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management

Меняем значение параметров ClearPageFileAtShutdown и LargeSystemCache с 1 на 0. Если стоит уже 0, то менять ничего не надо.

Проверка команды TRIM

Проверить команду TRIM можно так: Запускаем Командную строку от имени Администратора. Вводим команду

fsutil behavior query DisableDeleteNotify

Если в командной строке появится DisableDeleteNotify = 0, то поддержка TRIM включена. Если команда TRIM выключена, то чтобы включить команду TRIM надо ввести команду

fsutil behavior set disabledeletenotify 0

Отключаем Восстановление системы

  • Кликаем правой кнопкой мыши по значку «Компьютер» в меню «Пуск» и выбираем «Свойства».
  • Выбираем вкладку «Защита системы».
  • Кликаем по кнопке «Настроить».
  • Устанавливаем флажок напротив пункта «Отключить защиту системы».

Что даст отключение Восстановление системы.

  • снизится число операций записи на SSD — повышает его долговечность.
  • уменьшается нагрузка на ячейки памяти.
  • контрольные точки недоступны для команды TRIM и регулярное использование данной функции Windows потенциально способно привести со временем к снижению производительности накопителя.
  • Больше свободного места на системном диске. Контрольные точки хранятся на системном диске и могут занимать до 15% от общего объема

Дополнительная информация

Обычно в характеристиках SSD можно увидеть, что они поддерживают TRIM. Это функция очистки от «мусора» для твердотельных накопителей. Давайте разберемся, для чего она нужна, как именно работает и какими инструментами можно проверить, активирована ли она на вашем компьютере.

Что это такое

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

SSD работает немного иначе — информация записывается в страницы памяти объемом 4 Кб. Они объединены в блоки по 512 Кб. Как только вы записали новые данные, их нельзя перезаписать, не очистив весь блок. Поэтому контроллеру SSD приходится полностью удалять их, прежде чем вносить новую информацию. А «актуальные» ячейки нужно переносить между блоками.

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

Как проверить опцию TRIM

В актуальных операционных системах (Windows 7 и выше) функция активирована по умолчанию. Чтобы проверить это, запустите «Командную строку» от имени администратора.

Затем впишите команду fsutil behavior query disabledeletenotify и жмите Enter.

Когда TRIM включен, то система выдаст значение 0, как на скриншоте. Для отключенной опции, соответственно, будет цифра 1.

Если уверены, что у вас подключен именно SSD-диск, но TRIM почему-то не активирован, то ОС скорее всего не понимает, что имеет дело именно с твердотельником. В таком случае зайдите в свойства нужного диска, в разделе «Сервис» выберите «Оптимизировать».

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

Если тип определяется верно, но TRIM все равно не активен, то введите:

fsutil behavior set disabledeletenotify NTFS 0

fsutil behavior set disabledeletenotify ReFS 0

Особенности

Все что описано выше, справедливо для обычного твердотельного накопителя, подключенного через разъемы SATA или M.2. TRIM должен работать по умолчанию на Windows 7 и выше с файловой системой NTFS, Linux с версией ядра не ниже 2.6.33 (c системой Ext4) и Mac OS 10.6.6 и выше.

Опция не будет доступна, если используется устаревшая файловая система (FAT32, Ext2). Исключение — exFat. Она вполне современная, но тоже не поддерживает TRIM. Также функция не работает большинстве на внешних дисков, подключаемых к USB (на некоторых контроллерах она все же есть). При этом для разъема Thunderbolt функция активна.

В неактуальных системах, вроде Windows XP или Vista поддержка TRIM включается утилитами производителей SSD или сторонними дефрагментаторами. К примеру, можно воспользоваться O&O Defrag Professional версии 19.

Выбор промежутка оптимизации TRIM на Windows XP с помощью O&O Defrag

Выводы

Нет никакого смысла отключать функцию TRIM. Она продлевает накопителю жизнь: флеш-память имеет ограничения по количеству циклов перезаписи, а при постоянной очистке многократная эксплуатация одних и тех же блоков исключается. Помимо этого, SSD будет работать максимально быстро.

На самом деле, речь сегодня пойдёт не только о бывших в использовании какое-либо время накопителях, ведь проблема низкого быстродействия может затронуть даже только что принесённый из магазина SSD. Конечно, физику не обманешь – со временем все твердотельные накопители будут терять производительность. Но причиной этому может стать не только проблема именно самого SSD. Обеспечить грамотное взаимодействие комплектующих и программного обеспечения в системе – не совсем простая задача для простых пользователей, кто не хочет (или кому попросту не надо) хоть мало-мальски разобраться в теме и послушать советы грамотных в этом плане людей. Кому-то проще переустановить операционную систему или добавить в список используемых приложений какие-то сомнительные «твикеры». Но ведь вдумайтесь — к примеру, простое с нашей точки зрения удаление файла состоит из достаточно большого количества этапов, в которых завязаны сразу несколько участников. И, если хоть один из них отработал задачу некорректно, то это сказывается на производительности диска. Что это за этапы? Кем или чем они выполняются? Как обеспечить стабильную работу? Во всём этом мы сегодня и разберёмся. Просто и наглядно, чтобы понятно было всем. И тогда станет ясно, что лечение симптомов низкой производительности SSD не поможет.

Семь бед – один Deallocate

Многие слышали про команду TRIM. Те самые заветные четыре буквы, которые вызывают множество вопросов у рядового пользователя. TRIM – одна из команд ATA, отправляемая операционной системой с целью уведомления твердотельного накопителя о том, что данные с диска были удалены пользователем и занятые физические ячейки можно освободить. Стоит отдельно сказать про SSD с интерфейсом NVMe — эти диски обладают другим набором команд для работы, но аналог ATA команды TRIM там тоже существует — называется она Deallocate и, соответственно, является идентичной. Поэтому, далее при упоминании TRIM мы будем подразумевать и Deallocate тоже. К чему речь обо всём этом? Как раз именно проблемы с выполнением данных команд в подавляющем большинстве случаев и являются причиной низкой производительности накопителей. Конечно, другие проблемы мы тоже не оставим в стороне, но всему своё время.

В тот момент, когда вы удаляете данные с вашего накопителя, по факту удаляется запись в главной таблице файловой системы. То есть, сами данные остаются на месте, но область помечена на удаление. Сама «зачистка ячеек» происходит в определенное время, например, в момент простоя накопителя, пока вы отошли за чаем. Таким образом производители добиваются снижения износа памяти и увеличивают производительность своих накопителей в определённых сценариях. Именно очисткой этих ячеек и занимается контроллер, выполняя команду TRIM. К слову, после её выполнения, восстановление данных практически невозможно.

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

Объясним на пальцах, как раз их 20…

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

Перед нами часть памяти, в которой находятся файлы А и В разных размеров, занимающих, соответственно, разное количество блоков. Сначала мы удаляем файл В, а затем записываем файл С на наш диск. Для наглядного представления ситуации, когда TRIM не работает, добавим простую иллюстрацию, в которой обозначены следующие состояния:

  1. Наличие файлов А и В.
  2. Удаление нашими руками файла В.
  3. Определённое время бездействия. Заметим, что помеченные на очистку блоки данных так и остались с данными в них.
  4. Запись файла С, но сначала – удаление файла В из ячеек.

К примеру, если представить (просто представить, да), что блок данных в виде квадратика составляет 1 МБ, то на этапе 4 контроллер сначала зачищает помеченные на удаление два блока данных с файлом В и только потом записывает файл С. Если пара мегабайт места – ещё мелочи, но при активной работе с накопителем таких блоков в сумме может быть гигабайты, что уже заметно повлияет на время выполнения операций записи.

А теперь что происходит, если TRIM работает. Снова по этапам:

  1. Наличие файлов А и В.
  2. Удаление нашими руками файла В.
  3. Определённое время бездействия, в которое помеченные на удаление блоки с файлом В очищаются.
  4. Запись файла С без каких-либо задержек в область, где был файл В.

То есть, логика работы совсем другая. Повторим пройденное — в момент удаления нами файла B отправляется команда TRIM, и, поскольку в SSD достаточно часто простаивает, он с радостью удаляет ненужные блоки практически сразу. И в момент того, как мы хотим записать файл С, то он сразу же записывается на диск, а не ждёт пока для него очистят блоки с мусором.

TRIM, а есть ли ты вообще? И, если есть, то работаешь ли?

Узнать, поддерживает ли SSD команду TRIM можно при помощи достаточно большого количества свободно распространяемого программного обеспечения. Возьмём, к примеру, CrystalDiskInfo:

Но демонстрация поддержки – не есть работа. Для начала пройдёмся по ситуациям, когда TRIM надо запускать хитрым способом или данная команда не работает вовсе. Конечно, со временем ситуация может поменяться, но пока дела обстоят следующим образом:

  1. Стандартные драйверы Windows не могут выполнять TRIM на RAID массивах. В зависимости от системы и типа RAID массива, проблему может решить драйвер от Intel под названием Rapid Storage. Поддерживаются массивы 0 и 1 с драйвером версии Enterprise.
  2. Поддержка TRIM в Windows начинается с версии операционной системы с цифрой 7. Vista и, тем более, XP не поддерживают TRIM на уровне ОС. Конечно, эта проблема решается сторонним программным обеспечением, но тут всё на ваш страх и риск – рекомендовать это мы не можем и не будем.
  3. Команда Deallocate (TRIM для NVMe SSD) поддерживается только с Windows 8 и новее.
  4. TRIM не работает на виртуальных дисках.
  5. TRIM работает только в режиме AHCI.
  6. TRIM не работает при подключении накопителя через USB переходники.
  7. TRIM не работает в с файловой системой FAT32 (и более «лохматых»).

Теперь проверим – а работает ли TRIM в системе?

Для начала – попробуем это узнать прямо у операционной системы. В запущенной от имени Администратора командной строке или PowerShell вводим команду «fsutil behavior query disabledeletenotify» без кавычек и смотрим на результат. Если в выводе значатся «0», то это хорошо – TRIM работает. Если «1», то функционал TRIM недоступен. Всё верно: ноль – включённая команда, 1 – выключенная команда.

К примеру, можно использовать простую в использовании программу trimcheck от Владимира Пантелеева. Программа работает в два этапа, между которыми может пройти как несколько секунд, так и десятки минут – всё зависит от специфики работы конкретной модели SSD. Утилита записывает данные на диск и отмечает адреса виртуальных блоков, в которых они размещены. Эти адреса она сохраняет в JSON-файл в своей папке, после чего удаляет данные, что порождает отправку команды TRIM. Утилита смотрит, находятся ли записанные ранее данные по сохраненным адресам. Их отсутствие означает, что контроллер принял команды TRIM к сведению и удалил данные. Если TRIM работает, то сообщение будет соответствующим:

В противном случае надпись будет гласить TRIM appears to be NOT WORKING. Собственно, если вы получили сообщение о неработоспособности, то выполните в запущенной от имени Администратора командной строке или PowerShell команду «fsutil behavior set disabledeletenotify 0» без кавычек. Функция TRIM, если соблюдены все условия (поддерживаемая ОС, реализация в SSD и т.д.), должна включиться и работать. Если этого не произошло, а все требования выполнены, то придётся подумать о замене накопителя.

Проблемы, проблемы вместо обеда

Самая распространённая проблема – наследование. Само собой, речь идёт про Windows до версии 8. Например, когда пользователь ставит в старые системы SSD или переходят с HDD на SSD без изменения настроек BIOS (если это необходимо) или вообще путём клонирования разделов или диска целиком. Напоминаем, что TRIM доступен только в режиме AHCI. К примеру, у многих материнские платы могут работать в двух режимах AHCI и IDE. Соответственно, если SSD подключён к такой плате именно в режиме IDE, то TRIM работать не будет. Просто наличие режима AHCI не решает проблему – Windows установит драйверы согласно выбранному IDE. Казалось бы, ситуация может встречаться редко, но на самом деле – нет. Если с настройками BIOS вы не дружите, то хотя бы проверить режим работы надо. Сделать это можно в диспетчере устройств в разделе «Контроллеры IDE ATA/ATAPI»:

Помните, что просто так после установки Windows переключить режим работы с IDE на AHCI (и обратно) без дополнительных манипуляций не выйдет – операционная система попросту не загрузится. Решения этой проблемы существуют (даже от самой Microsoft), но рекомендовать их не стоит. Требуется изменение параметров реестра, добавление нужного драйвера и готовность к переустановке ОС в случае неудачи.

Что касается Linux-систем, то обязательным условием, помимо аппаратной составляющей, является файловая система ext4. Включение TRIM указывается опцией discard в файле fstab. Дополнительными полезными опциями для раздела станут noatime (realtime или nodiratime), которые снизят запись путём отключения обновления времени последнего доступа к файлам и директориям. Сама же команда TRIM запускается при помощи программы fstrim – «fstrim / -v» без кавычек и с правами рута.

Вспомним ещё про Secure Erase. Восстановить производительность этой функцией можно. Только вот вряд ли надолго. Особенно, если вы быстро забиваете свой накопитель новыми данными. Так что как временное решение – пойдёт, но оно всегда будет оставаться временным.

Ещё добавим про SLC-кеширование, которое достаточно часто используется у многих SSD-накопителей без привязки к интерфейсу. Невысокая скорость записи большого количества файлов (или больших файлов) после определённого порога не проблема, а особенность работы. Суть кеширования состоит в том, что сначала записываемые данные попадают в специальную область памяти, а уже затем записываются в основную память в фоновом режиме. Когда выделенная высокоскоростная память заканчивается, то данные начинают записываться непосредственно в память на заметно сниженной скорости – от 50 до 150 МБ/с. Это совершенно нормальный режим работы накопителей с SLC-кешем, поэтому здесь ничего сделать невозможно от слова совсем.

Что хорошо, а что плохо?

Если функция TRIM работала с самого начала, то сама по себе никуда она деться не может. Но совсем другое дело, если вы увлекаетесь разного рода твикерами, сторонними драйверами или прошивками, а также сборками операционных систем, якобы улучшенных. Все эти программы и сборки могут только навредить, если речь идёт о Windows 8 и, тем более Windows 10 – в этих ОС всё продумано как надо. В «семёрке» они могут чем-то помочь, но это скорее исключение из множества проблем, которые они могут принести.

Отдельно надо сказать несколько слов про NVMe накопители и драйверы для них. Приобретая высокоскоростной SSD, в ваших глазах должны отражаться полученные в бенчмарках заявленные скоростные показатели. Часто это так и есть, например – с накопителями Kingston. Установил и забыл, как говорится, наслаждаясь его высокими скоростями. Но с SSD других производителей это может быть не всегда так, что, очевидно, расстроит любого. Тут уже не отсутствие Deallocate является причиной недостаточного быстродействия, а стандартный NVMe драйвер. Да-да, при покупке NVMe SSD некоторых производителей обязательно приходится отправляться на сайт его сайт и скачивать соответствующий драйвер – разница со стандартным может превышать двукратную!

Вот теперь, вроде, всё.

Как оказалось – не всё так страшно, как выглядело не первый взгляд. От пользователя требуется выполнение всего нескольких рекомендаций, чтобы система работала корректно и радовала производительностью твердотельного накопителя долгое время. Повторим их напоследок – чистый дистрибутив операционной системы, актуальные драйверы и прошивки от производителя, а также отсутствие сторонних «настройщиков» системы, которые, по заверению их разработчиков, увеличивают производительность на 146%. Если проблема не аппаратная, то никаких нареканий к диску у вас не будет в течение всего срока жизни вашей системы. Так что никакого длинного заключения-словоблудства не будет – всё, что надо было сказать, уже сказано. Ёмких вам SSD, их высоких скоростей и стабильной работы!

Для получения дополнительной информации о продуктах HyperX и Kingston обращайтесь на сайты компаний.

  • Как вынести приложения на рабочий стол windows 10
  • Как выполнить python скрипт windows
  • Как вынести ярлык игры на рабочий стол windows 10
  • Как выполнить msconfig в windows 10
  • Как вынести программу на рабочий стол windows