Инженер уличил Windows 11 в ускоренном износе SSD
Инженер-конструктор Чандравир Матур опубликовал результаты небольшого «расследования», посвящённого работе режима гибернации в Windows 11. Он в подробностях рассказал о механизме работы этой функции, а заодно посоветовал пользователям отключить её, чтобы продлить срок службы своего накопителя.
По словам исследователя, «покопаться» в ОС его сподвигло замедление работы ПК после нескольких циклов пробуждения из режима гибернации. Чтобы разобраться в проблеме, он детально изучил системные логи и пришёл к выводу, что использование этой функции заметно сокращает ресурс SSD.
Изучение диагностических данных моего накопителя показало ужасающую картину того, как Windows управляет системной памятью и почему использование режима гибернации — это санкционированный операционной системой способ сократить срок службы вашего дорогостоящего флеш-накопителя. - Чандравир Матур, инженер-конструктор.
Перед входом в режим гибернации Windows 11 извлекает содержимое оперативной памяти и записывает его на SSD в файл hiberfil.sys. При этом ресурс накопителя тратится на объём записанной информации: это отличается от режима сна, когда система просто подаёт немного питания на ОЗУ, чтобы данные не потерялись.
По словам исследователя, на компьютерах с 32 ГБ ОЗУ Windows выделяет примерно столько же памяти на SSD под режим гибернации, и перезаписывает этот объём каждый раз.
В своём сценарии использования энтузиаст оценил сокращение ресурса SSD на 23,36 TBW в год только из-за этой особенности Windows. Технически это небольшая цифра, но с учётом актуальных цен даже небольшое увеличение ресурса накопителя может потенциально обернуться заметной экономией. Ресурс Transcend TS120 составляет всего 60 TBW.
Заодно Матур выяснил вероятную причину долгого включения ПК после нескольких циклов использования гибернации. Он предположил, что данные переполняют быстрый SLC-кэш, и поэтому записываются в TLC-память, нагружая контроллер.
Решением может стать удаление файла hiberfil.sys с помощью командной строки (powercfg.exe /hibernate off).
Источник: xda-developers