Гибернация — это специальный режим энергосбережения, предназначенный преимущественно для ноутбуков. В отличии от классического режима “сна”, когда состояние системы и запущенные программы остаются в оперативной памяти и потребляют энергию, в режиме гибернации состояние памяти сохраняется на диск в скрытый файл hiberfil.sys, после чего устройство полностью отключается. В этой статье мы рассмотрим, как включить или отключить режим гибернации в Windows 11, и как управлять файлом hiberfil.sys.
По умолчанию на ноутбуках с Windows 11 используется гибридный спящий режим (hybrid sleep), при котором при бездействии компьютера сначала переходит в сон, а после длительного простоя, устройство отправляется в гибернацию.
Проверить текущие настройки режима сна и гибернации можно через панель управления электропитанием.
- Откройте в панели управления апплет Power Options, выполнив команду
powercfg.cpl
. - Нажмите кнопку Change plan settings для используемого режима электропитания
- Затем нажмите Change advanced power settings
- Разверните секцию Sleep. В ней можно настроить несколько параметров:Allow hybrid sleep – разрешен ли гибридный спящий режим
Sleep after и Hibernate after – через сколько минут перевести компьютер в спящий режим и через сколько в режим гибернации.
Проверьте, какие режим энергосбережения (сна) доступны на устройстве, выполнив команду:
powercfg /availablesleepstates
или (аналогичная команда):
powercfg /a
Если устройство не поддерживать какой-то режим, будет указана причина:
Standby (S2) The system firmware does not support this standby state.
В нашем случае ноутбук поддерживает:
- Standby S1 — Power on Suspend, когда отключается питание жесткого диска, монитора и некоторых карт расширения
- Standby S3 – классический спящий режим (Suspend to RAM), определяемый в стандарте ACPI
- Hibernate — режим гибернации
- Hybrid Sleep — гибридный спящий режим
- Fast Startup — быстрый запуск
Чтобы полностью отключить режим гибернации, выполните команду:
powercfg /hibernate off
Эта команда удалит hiberfil.sys с жесткого диска, а также отключит опцию быстрого запуска.
Чтобы включить гибернацию:
powercfg /hibernate on
По умолчанию в стартовом меню Windows 11 отсутствует пункт гибернации. Можно добавить его туда через панель управления электропитанием:
- Запустите
powercfg.cpl
- Нажмите кнопку Choose what the power button does в левой панели
- Нажмите кнопку со значком UAC Change settings that are currently unavailable
- Включите опцию Hibernate (Show in Power menu)
- После этого кнопка режима гибернации появится в меню Пуск.
Можно отправить компьютер в режим гибернации принудительно, выполнив команду:
shutdown /h
или
rundll32.exe powrprof.dll,SetSuspendState Hibernate
Как мы уже упоминали, в режиме гибернации состояние памяти (включая запущенны программы) сохраняется в файл hiberfil.sys на системном диске. При включении компьютера данные из файла считываются, и пользователь может продолжить работу с компьютером с того места, на котором он остановился.
Размер такого файла может быть весьма значительным и зависит от количества оперативной памяти на компьютере. По умолчанию размер файла hiberfil.sys составляет 40% от RAM компьютера. Размер этого файла может быть довольно большим, что будет критичным для устройств с небольшим размером системного диска.
Перенести файл hiberfil.sys на другой раздел диска нельзя, однако есть возможность управлять его размером.
Следующая команда установит уменьшенный тип для файла гибернации. Файл при этом уменьшается до 20% от RAM компьютера. Но при этом полноценная гибернация становится невозможной (будет работать только режим быстрого запуска Fast Startup):
powercfg /h /type reduced
Чтобы вернуть полноценный режим гибернации:
powercfg /h /type full
С помощью следующей команды можно задать размер файла гибернации (в процентах от оперативной памяти, минимальное значение – 40%):
powercfg /h /size 50
Также можно включить отключить гибернацию можно через реестр. В ветке реестра
HKLM\SYSTEM\CurrentControlSet\Control\Power
можно использовать три параметра REG_DWORD для настройки гибернации:
- HibernateEnabledDefault – разрешить использование гибернации в некоторых сценариях (например, при закрытии крышки ноутбука)
- HibernateEnabled – если нужно включить гибернацию, здесь нужно задать значение 1. Чтоб отключить – 0.
- HiberFileSizePercent – размер файла гибернации (в процентах от RAM компьютера)
Можно задать значение этих параметров реестра вручную или из командной строки. Например, чтобы отключить гибернацию:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v "HibernateEnabled" /t REG_DWORD /d "0" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v "HibernateEnabledDefault" /t REG_DWORD /d "0" /f