Ждущие режимы Windows

Диспетчер электропитания управляет режимами электропитания устройств. Он может выключить отдельное устройство или перевести компьютер в спящий режим.

Старые операционные системы семейства Windows – например, XP и «семёрка» – отличаются довольно интересной работой с данными. Они изначально создавались для низкопроизводительных компьютеров, поэтому встроенные механизмы подразумевают работу с устаревшим «железом». И ярче всего это проявляется в наличии двух режимов приостановки – спящего и ждущего.

Разберёмся, чем спящий режим отличается от ждущего в Windows и куда они делись в «десятке».

Ждущий режим компьютера — особое состояние, в котором он потребляет меньше энергии, но вместе с этим не выключается. Многие юзеры путают его со спящим, плюсом ещё идёт гибернация. Спутаться действительно легко. Знание того, как включить режимы, как ими управлять и для чего они предназначаются, избавят пользователя от лишней суеты и дадут возможность выбрать наиболее оптимальные настройки. Для этого рассмотрим их все и порядок их появления в системе Windows, а заодно научимся их отключать.

Ждущие режимы Windows

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

Ждущие режимы Windows

«Засыпание» ПК – это отключение практически всех его компонентов, потребляющих энергию, при этом текущее состояние компьютера записывается в оперативную память. Она как раз остаётся бодрствовать, обеспечивая быстрое пробуждение. Не следует путать сон с гибернацией – в последнем случае состояние компьютера записывается на диск, что позволяет свести энергопотребление к минимуму, но и пробуждение будет длиться намного дольше. Многие пользователи предпочитают режим сна именно по этой причине – чтобы не тратить время на выход ПК в рабочее состояние. Сегодня вы узнаете, как активировать спящий режим в случае потребности и как обеспечить выход из него.

  • Ждущий режим – это когда компьютер включен, но при этом у него выключено разное всякое. Монитор, НДД, всё стоит на пониженном напряжении, необходимом лишь для сохранения содержимого в оперативной памити. Заводится при любом движении мыши или нажатия кнопки клавы. Варианты того, что должно отключаться и от чего он должен заводиться зависят от настроек ждущего режима.
  • Спящий режим, это когда компьютер фактически выключен. Но не просто выключен, а с сохранением своего состояния перед включением. При входе в спящий режим содержимое всей памяти и состоянию всех регистров всех устройств сохраняются в файле выгрузки. Для корректного просыпания рекомендуется иметь swap (файл подкачки) размером в два раза превышающем размер оперативной памяти. При выводе компьютера из спящего режима (обыкновенным включением) он входит в то же состояние, в котором был перед выключением с переходом в спящий режим. Возврат из спящего режима происходит гораздо быстрее обычной загрузки ОС.

Общее у спящего и ждущего режимов то, что как Вы компьютер и с какими открытыми и работающими программами ввели, в том же виде и выведите.

Отличие в том, что в спящем режиме компьютер выключается полностью.

Ждущие режимы Windows

Продолжаем разговор о безопасности UEFI.
На этот раз речь пойдет об опубликованной в конце 2014 года серьезной уязвимости в реализации ACPI S3 (Sleep Mode), ее эксплуатации и последствиях. Основная «фишка» этой уязвимости в том, что она вскрыла целый класс проблем безопасности UEFI, вообще не считавшихся до этого проблемами, и потому и заслуживает отдельной статьи.
Тем, кто не читал предыдущие статьи цикла — раз и два, предлагаю прочесть сначала их, остальных жду под катом.

Часть третья. ACPI S3

В отличие от SMM, о котором обычный пользователь чаще всего даже не подозревает, про ACPI S3, т.е. режим сна, знает любой обладатель ноутбука или ПК, выпущенного в последние 10 лет.
Стандарт ACPI, об изменениях в последней версии которого я недавно писал, определяет набор т.н. состояний сна, в одном из которых может находиться система, следующим образом:

  • S0 — Working, т.е. обычная работа, все устройства включены. Внутри этого состояния производители систем имеют право определять кучу других состояний: P-states, C-states, T-states и т.п., расскажу о них как-нибудь в другой раз.
  • S1 — Sleeping with Processor Context Maintained, оно же Power on Suspend, т.е. все ядра процессора выполнили команду HLT и стоят, но все кэши и RAM валидны и обновляются, питание со всех все линий S0-only снято. Возврат из этого состояния занимает приблизительно 10 мс, из которых ~90% — ожидание установившихся режимов после подачи питания на линии S0-only. Никакие регистры ни у CPU, ни у чипсета, ни у устройств в этом состоянии не сбрасываются, так что нас в этой статье оно интересовать не будет.
  • S2/S3 — Suspend to RAM, т.е. содержимое памяти остается валидным и обновляется, а процессор и часть чипсета отключаются полностью с потерей контекста и содержимого практически всех регистров. Разница между S2 и S3 минимальная, и чаще всего S2 вообще не выделяют в отдельное состояние. После пробуждения из S3 процессор начинает выполнять код с ResetVector’а, т.е. чтобы правильно «проснуться», ему нужно восстановить весь контекст для себя и чипсета. Вот на этом этапе разработчиков прошивки и подстерегает несколько подводных граблей, о которых мы и поговорим в этой статье.
  • S4 — Suspend to Disk, т.е. содержимое памяти сбрасывается на диск и система отключает все устройства и подачу питания. После включения система стартует как обычно, и с точки зрения UEFI между S4 и S5 разницы практически нет (а если отключить FastBoot, то совсем нет).
  • S5 — Soft-Off, т.е. система отключена, но дежурное питание присутствует. Из S4/S5 система может быть выведена по сигналу RTC, либо по Wake-сигналу от устройства, либо по нажатию кнопки питания.
Как реализован S3 в UEFI

Чтобы восстановить контекст при «просыпании», сначала его нужно где-то сохранить. При этом желательно не слишком привязываться к конкретным особенностям архитектуры процессора и чипсета, а таже сделать хранение и восстановление контекста максимально прозрачным, чтобы не умереть потом в отладке. Т.к. работоспособность S3 — очень важная характеристика практически любого современного ПК, за исключением серверов с годами аптайма, то технология сохранения и восстановления контекста была разработана инженерами Intel очень рано, в 2004 году, и получила название EFI S3 BootScript. С тех пор спецификация многократно дорабатывалась, последняя версия теперь находится в томе 6 спецификации UEFI PI.
Суть ее такова: после исполнения фазы PEI, в которой происходит инициализация базовых устройств, т.е. процессора, кэшей и оперативной памяти, система определяет текущий режим загрузки.
1. Если этот режим отличается от S3 Resume, загрузка продолжается как обычно, PEI заканчивается запуском диспетчера DXE, который создает новый пустой S3 BootScript и запускает все доступные DXE-драйверы. Каждый такой драйвер выполняет финальную инициализацию того устройства, за которое он отвечает, и затем добавляет в S3 BootScript команды, которые необходимо выполнить, чтобы повторить инициализацию устройства при возврате из S3. Команды могут быть примерно такими (список взят из спецификации PI 1.4, но в конкретных реализациях могут встречаются и нестандартные):

  • IO_WRITE — записать указанное значение в указанный CPU IO-порт
  • IO_READ_WRITE — изменить значение в указанном CPU IO-порту согласно указанной маске
  • IO_POLL — выполнять чтение из указанного IO-порта, пока не будет выполнено указанное условие, но не дольше указанного времени ожидания
  • MEM_WRITE — записать указанное значение по указанному физическому адресу
  • MEM_READ_WRITE — изменить значение по указанному физическому адресу согласно указанной маске
  • MEM_POLL — выполнять чтение по указанному адресу, пока не будет выполнено указанное условие, но не дольше указанного времени ожидания
  • PCI_CONFIG_WRITE — записать указанное значение по указанному адресу в конфигурационном пространстве указанного PCI-устройства
  • PCI_CONFIG_READ_WRITE — изменить значение по указанному адресу в конфигурационном пространстве указанного PCI-устройства согласно указанной маске
  • PCI_CONFIG_POLL — выполнять чтение по указанному адресу в конфигурационном пространстве указанного PCI-устройства, пока не будет выполнено указанное условие, но не дольше указанного времени ожидания
  • SMBUS_EXECUTE — передать указанную команду указанному устройству на шине SMBus
  • STALL — подождать указанное число микросекунд
  • DISPATCH — выполнить код по указанному адресу

Вышеуказанных команд вполне достаточно, чтобы повторно инициализировать любое устройство, особенно с учетом последней команды, просто передающей управление PEI-драйверу, который и выполняет всю инициализацию, но нужно это только для особо сложных случаев, когда остальными командами обойтись не получилось.
После окончания фазы DXE диспетчер сохраняет получившийся S3 BootScript в памяти типа AcpiNVS, в которой находятся ACPI-таблицы и другие данные, необходимые ОС для правильной работы ACPI в ней. 2. Если же при загрузке выяснилось, что система находится в S3 Resume, вместо диспетчера DXE запускается PEI-модуль с красивым именем BootScriptExecutor, который выполняет BootScript, бережно хранящийся в памяти со времен прошлой нормальной загрузки, а затем передает управление на ОС, которая успешно стартует и радует пользователя.
Словами, вроде бы, пояснил, теперь тоже самое — картинкой из спецификации:

Ждущие режимы Windows

Подводные грабли

Это все успешно работало около 10 лет, и практически никто не видел подвоха, пока в конце 2014 года широко известные в узких кругах товарищи Rafal Wojtczuk and Corey Kallenberg не представили атаку, которая оказалась одновременно очевидной и крайне опасной. Оказалось, что область памяти (типа AcpiNVS), которой хранится S3 BootScript, никак не защищена от модификации. Да, ОС воспринимает ее как служебную и не испортит содержимое самостоятельно, а вот атакующий с правами администратора — еще как.
Модификации могут быть весьма различными, но т.к. большая часть защитных механизмов, обеспечивающих защиту как от прошивки произвольно кода в микросхему SPI, так и от несанкционированного доступа в SMM, настраиваются через регистры процессора и чипсета, то для успешного обхода этих механизмов достаточно найти BootScript в памяти (это нетрудно), найти в нем нужный нам регистр (тоже никаких сложностей) и изменить его так, чтобы при следующем S3 Resume защита не смогла включиться. Меняем, засыпаем, просыпаемся — оп, а король-то голый! Чем грозит снятие защиты с микросхемы SPI и с SMM — я уже писал в прошлых частях, повторяться не буду, но ничем хорошим это определенно не закончится.
Интересно, что инженеры Intel предвидели эту атаку и заранее реализовали защиту от нее — т.н. SmmLockBox. Защита очень простая — после того, как составление скрипта закончится, он копируется целиком в SMRAM, при этом оригинальный BootScript не удаляется. При восстановлении из S3 вызывается обработчик SMI, который проверяет, что оригинальный BootScript совпадает с копией в SMRAM, а если нет — либо переписывает измененный BootScript копией, либо перезагружает машину (это безопаснее, но пользователь теряет все данные из RAM). Проблема оказалась в том, что SmmLockBox просто не успели вовремя внедрить, и когда Rafal и Corey тестировали найденную уязвимость, оказалось, что единственная неуязвимая к атаке плата — Intel’овский UEFI Development Kit.
После обнародования атаки IBV начали в спешке внедрять либо оригинальный SmmLockBox, либо свои аналоги, основанные на той же идее, но это внедрение часто буксовало по разным причинам. К примеру, на системах с процессором AMD инициализация SMM проводилась в фазе DXE, и потому вызов обработчика SMI из PEI при S3 Resume заканчивался неудачей и S3 переставал работать вообще.
Тем не менее, на данный момент все вендоры, слышавшие о безопасности хотя бы краем уха, уже решили эту проблему каким-либо способом, и если ваша прошивка новее июня 2015 года, а производитель вашей системы не мудак — скорее всего ваша система прямой атаке на изменение S3 BootScript’а уже не подвержена.

:/>  Сервисы в Windows XP. Отключаем неиспользуемые и ненужные
Свинья от производителей платформ

После того, как паника немного улеглась, и BootScript успешно затолкали в SMRAM (понятно, что теперь надо хранить его как зеницу ока, но я об этом уже в прошлой части писал), неожиданно выяснилось, что инженеры Intel и AMD, сами того не зная, подложили обладателям своих платформ порядочную свинью в лице нескольких PEI-модулей, которые а) копировались в память прямо рядом с BootScript’ом, б) вызывались из него командой DISPATCH десятки раз и в) были достаточно большими, чтобы в SMRAM на их копии места не хватало.
Таким образом, выполнение произвольного кода можно было организовать без модификации самого BootScript’а вообще, вместо этого модифицировав точку входа одного из таких модулей. Удалить такие модули без нарушения работы S3 не получалось, но решение нашлось — вместо копирования в память их перенесли на неупакованную часть DXE-тома, и исправили команды DISPATCH так, чтобы код вызывался прямо с микросхемы SPI. Это оказалось немного медленнее, чем из RAM, зато свинью удалось таки выгнать. Я не знаю, сколько сейчас систем, которые можно атаковать этим способом, но подозреваю, что очень много.

Господа забывчивые

Человек не застрахован от ошибок, и разработчики DXE-драйверов — тоже человеки, и иногда могут банально забыть написать добавление какого-нибудь важного регистра в BootScript, и после S3 в этом регистре окажется его оригинальное значение. Чаще всего такая забывчивость приводит только к мелким глюкам после S3, но законы Мерфи говорят нам, что если какой-либо важный регистр может быть забыт — он обязательно будет забыт, что и происходит. Последний громкий пример забывчивости — опубликованная в конце мая этого года уязвимость в прошивках ноутбуков Apple, где инженеры забыли добавить в S3 BootScript запись в PR-регистры, и после S3 защита микросхемы SPI от прошивки снималась самостоятельно. Очень удобно ведь, закрыл-открыл крышку — и можно доставать flashrom и писать свой код в BIOS, Apple вновь радует простой и юзабилити. Если вы думаете, что случай единичный — советую запустить на своем ПК утилиту Chipsec и сравнить отчеты, сделанные до и после S3. Заодно и сюрприз может получиться.

Отключу S3 и трава не расти

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

Кризис доверия

Вся эта история с S3 BootScript вскрыла одну интересную проблему, которую после 10 беззаботных лет разработки в UEFI серьезно начали решать только сейчас. Проблема состоит в том, что «безопасная» прошивка не может доверять ничему, к чему имеет или имела доступ ОС. Устройства нужно сбросить и инициализировать самостоятельно, память очистить и ничего из нее не использовать (не дай рандом вызывать оттуда код!), свои же Runtime-сервисы после события ReadyToBoot компонентам прошивки использовать нельзя (их уже хукнул атакующий, иногда по нескольку раз), в общем, сплошное минное поле, чуть оступился — и вот у тебя уже полный BIOS чужого кода, бэкдор на бэкдоре, честным драйверам в SMRAM места нет. Поэтому производители платформ ищут спасения в аппаратных решениях, кто-то внедряет validated boot, кто-то хранит S3 BootScript в Security Coprocessor’е, кто-то разрабатывает свой собственный крипточип, кто-то просто забил и ждет, пока ему решение UEFI Forum сверху спустит.
Вот и Intel добавила в Skylake интересную технологию SGX, которую можно использовать для изоляции отдельных кусков кода и данных от всего остального в системе, такой себе аналог SMM, только всем и даром, чтобы никто не ушел обиженным. Технология выглядит достаточно вкусно, но, во-первых, сложна в программировании, а во-вторых — есть только у Intel и только на Skylake.
Со стороны «безопасной» ОС — такой же точно уровень недоверия к прошивке, и тут может пригодиться технология STM, о которой разговоры велись с 2009 года, но представили ее официально только недавно, и «в бою» она еще не опробована. Когда дойдут руки попробовать обе — постараюсь про это написать.

Заключение

Ну вот, проблемы с S3 BootScript позади, в следующей части поговорим об атаках на NVRAM и SecureBoot, а также о том, почему пароль на BIOS — от честных людей.
По доброй традиции, посоветую знатокам английского языка вот эту статью тов. d_olex на ту же тему. Там серьезность, глубина, код, и картинки, не то что мое словоблудие тут.
Спасибо тебе за внимание, читатель, безопасных тебе прошивок.

Windows XP

Здесь контрольное место занимает оригинальный ждущий режим. Для его запуска:

  • нажимаем в меню «Пуск» кнопку «Выключить»,
  • выбираем в появившемся окне соответствующий пункт.Ждущий режим в Windows XP

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

«Ждать» ПК на Windows XP начинает, как правило, самостоятельно, если на нём долго не производить никаких действий. Сделано это опять же в целях экономии. Как убрать его? К сожалению, нет возможности сделать это полностью —ожидание в любом случае будет присутствовать и активироваться, даже если вы этого не хотите. Однако можно заменить его «сном».

Спящий режим в Windows XP также доступен. В чём его отличие?

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

Как активировать «Сон»?

  • Заходим в настройки рабочего стола.
  • Открываем вкладку «Заставка».Вкладка «Заставка» в Windows XP
  • Жмём на «Питание».
  • В окне свойств выбираем раздел «Спящий режим».
  • Ставим галочку «Разрешить использование спящего режима». Тут же будет указано, сколько места на диске требуется для создания файла.«Разрешить использование спящего режима» в Windows XP
  • Нажимаем «Применить».

Теперь в окне «Выключить компьютер» появится значок «Спящий режим» вместо ждущего. Если этого не произошло, удерживаем клавишу Shift и эти два значка сменяются.

Отключение режима сна с использованием Панели управления

Альтернативный способ отключения автоматического перехода компьютера в спящее состояние – использование Панели управления. Этот метод без изменений перекочевал в Windows 11 из «десятки». Приводим пошаговый алгоритм:

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

:/>  Ключи активации Windows 7 Максимальная 2023-2022

Особенности работы Windows 7 и новее

Ждущие режимы Windows

Новый спящий режим, который упоминался парой абзацев выше, появился ещё в Windows Vista. Тем не менее, эту операционную систему забыли, как страшный сон, спустя два года после релиза – настолько она была нестабильной. И «глюки» затрагивали и тот самый новый спящий режим.

Доработанная и улучшенная его вариация была представлена в операционной системе Windows 7. Она подразумевала перенос дампа оперативной памяти на жёсткий диск без удаления данных в самой «оперативке».

То есть, пока компьютер спал, данные хранились сразу в двух местах. Оперативка подпитывалась электричеством, а всё остальное – нет, что позволило снизить энергопотребление. Затем, при пробуждении, компьютер опрашивал оперативку – и, если там находились нужные данные, загружался с них. А если нет – то с жёсткого диска.

Этот механизм работы получил название «гибридный спящий режим». Он сохранял достоинства предшественников и исправлял их недостатки. И именно поэтому он применяется во всех новых операционных системах компании Microsoft, придя на замену традиционным ждущему и спящему.

Разумеется, это требует много места на HDD. Именно там же и хранится дамп памяти из RAM. И на современных компьютерах, которые могут оснащаться 16-32 ГБ оперативки и 128 ГБ SSD-накопителем в качестве системного такая потеря места вполне ощущается. Однако данный механизм позволяет значительно ускорить загрузку независимо от того, было отключено питание или нет. Поэтому отключать его не рекомендуется, а удалять системные файлы – тем более.

Схемы эл. питания

В «Панели управления» можно выбрать схему эл. питания:

Ждущие режимы Windows

Тут же можно подстроить выбранную схему эл. питания:

Ждущие режимы Windows

А если нажать ссылку “Изменить дополнительные параметры питания“, то можно довольно тонко настроить схему эл. питания:

Ждущие режимы Windows

Ждущие режимы Windows

Как работает спящий режим

Ждущие режимы Windows

Спящий режим в ОС Windows (в некоторых случаях также называемый «гибернацией») подразумевает полный перенос данных из оперативной памяти на HDD при временном выключении.

То есть это работает следующим образом:

  • Пользователь нажимает кнопку перехода в спящий режим или закрывает крышку ноутбука;
  • Операционная система делает дамп всей оперативной памяти и переносит на жёсткий диск в виде отдельного файла;
  • Через некоторое время пользователь включает ПК или открывает ноутбук;
  • ОС загружает необходимый минимум данных;
  • Windows находит дамп оперативной памяти и отправляет его «на место»;
  • Пользователь видит привычное окружение.

При переходе в «сон» сохраняется всё. Редактируемые документы, расположение окон на экране, другие элементы пользовательской среды. Но при этом компьютер практически не потребляет энергии, что особенно полезно для ноутбуков – или для настольных ПК, если их требуется оставить на длительное время.

Достоинства

  • Сохранение пользовательской среды;
  • Отсутствие потребления электроэнергии.

Недостатки

  • Сравнительно долгая загрузка после «пробуждения»;
  • На диске должно быть много свободного места.

В частности, загрузка после «пробуждения» может занимать от 8-9 секунд на Windows 10 до 1-2 минут на старых ОС. И зависит она напрямую от скорости работы жёсткого диска.

Кроме того, «сон» не будет работать, если на системном диске меньше свободного места, чем общий объём оперативной памяти. Всё-таки её дамп необходимо куда-то сгружать. Так, конфигурациям с 4 ГБ «оперативки» для работы спящего режима требуется более 4 ГБ свободного места на системном HDD.

Как работает ждущий режим

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

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

Как следствие, ждущий режим не подходит для ноутбуков. При переходе в него ПК только ненамного снижает энергопотребление.

Зато пробуждение из ждущего режима занимает считанные секунды даже на слабых ПК, которые оснащаются одно- или двухъядерными процессорами либо медленными HDD. И поэтому он подходит для быстрого возвращения к работе после простоя.

Поскольку данные в оперативной памяти сохраняются, пользовательская сессия не завершается. Открытые документы остаются открытыми, окна не «уезжают» со своих мест. Разве что программы перестают выполняться – так что торренты, например, не докачаются за время «ожидания».

  • Очень быстрая загрузка после пробуждения даже на слабых ПК;
  • Сохранение пользовательской сессии.
  • Лишь незначительное снижение энергопотребления;
  • Практически не встречается на современных конфигурациях.

Где-то в середине 00-х от ждущего режима начали отказываться. Компании Microsoft удалось изменить алгоритмы работы операционной системы, вследствие чего пробуждение после «сна» начало занимать минимум времени.

Таким образом ждущий режим начал исчезать уже в Windows 7. Некоторые сборки этой ОС всё ещё оснащались данной функцией, но более новые версии уже поставлялись без неё. А из Windows 8, 8.1 и 10 его и вовсе удалили, оставив только спящий.

Режимы эл. питания

Управлению питанием требуется аппаратная поддержка, отвечающая требованиям ACPI (Advansed Configuration and Power Interface). Этот стандарт определяет шесть уровней энергопотребления:

  • S0 — максимальное;
  • S1 — режим экономии;
  • S2 — режим сна при котором процессор работает;
  • S3 — режим сна при котором процессор отключается;
  • S4 — режим гибернации. Ток подается только на кнопку включения, система может запуститься с помощью файла гибернации. При запуске используется программа Winresume.exe;
  • S5 — система выключена.

Из состояний S1-S3, в случае необходимости, система может быстро перейти в состояние S0. Но для перехода из режима S4 на это требуется больше времени.

Система может перейти в состояния S1-S5 только из состояния S0. Тесть из S1 в S4 минуя S0 система не перейдет.

Давайте посмотрим на состояния в которых может находиться наша система. Для этого запустите командную строку от имени администратора и выполните:

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

Затем включим гибернацию снова:

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

Хотя система может находится в шести состояниях энергопотребления, устройства могут находиться только в четырёх:

  • D0 — максимальное;
  • D1 — меньше;
  • D2 — ещё меньше;
  • D3 — совсем выключено.

Посмотреть поддерживаемые режимы и таблицу соответствий конкретного устройства можно в «Диспетчере устройств». Для этого нужно открыть свойства устройства и на вкладке «Сведения» найти “Сведения о питании“:

Ждущие режимы Windows

Использование экрана входа Windows 11 (или экрана Ctrl+Alt+Delete)

Настроить перевод компьютера в спящий режим можно и с помощью известной комбинации Ctrl+Alt+Delete, используемой и при выключении, и при перезагрузке ПК. Или через экран входа Windows 11, для чего необходимо кликнуть по иконке питания, находящейся в правом нижнем углу и выбрать в небольшом контекстном меню пункт «Спящий режим».

Windows 10

Ждущий режим в Windows 10 почти не претерпел никаких изменений по сравнению с «Семёркой». Здесь также остались сон и гибернация. Вот только последняя практически утратила своё значение, так как из «сна» и стационарные ПК, и ноутбуки, как правило, выходят очень быстро. Поэтому гораздо удобнее пользоваться им. Настроить параметры электропитания можно примерно таким же образом.

  • Находим через поиск в «Пуске» «Питание и спящий режим».
  • Жмём «Дополнительные параметры».
  • Здесь можно настроить схему электропитания. Дополнительные параметры там — это всё то, что было описано выше.

Что же представляет собой ждущий режим в Windows 8? Здесь всё аналогично, те же настройки, что и на «Десятке». Писать о ней отдельно не имеет смысла.

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

Использование командной строки

Этот способ можно посоветовать опытным пользователям, особенно в тех случаях, когда сон используется так же часто, как и гибернация, а об отличии этих режимов мы уже рассказывали.

Итак, алгоритм действий будет следующим:

  • в поисковой консоли меню пуск начинаем набирать слово «командная»;
  • как только в результатах поиска появится иконка командной строки, кликаем по ней правой кнопкой мыши и в появившемся контекстном меню выбираем пункт запуска с правами администратора;
  • в консоли командной строки набираем командуpowercfg -h offЭто ещё не перевод в спящий режим, это выключение режима гибернации, установленного по умолчанию;
  • собственно команда для перевода компьютера в режим сна выглядит так:rundll32.exe powrprof.dll, SetSuspendState Sleep
  • если перед её выполнением не выполнить первую команду, ПК будет переведён в режим гибернации, но это касается только первого запуска командной строки. После этого в любой момент времени можно будет вызывать режим сна запуском второй команды.

Отключить спящий режим можно стандартным способом – нажатием любой клавиши, а если вы хотите, чтобы следующим режимом была гибернация, выполняем команду powercfg -h on.

Как работает сама операционная система Windows

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

:/>  Кнопка быстрой блокировки компьютера

Сама оперативная память – энергозависимый носитель. То есть она способна хранить данные только в том случае, если на неё подаётся ток. Нет питания – вся информация стирается. А вот жёсткий диск (HDD) – энергонезависимый, даже если он пару лет пролежит без подключения к электричеству, ничего с хранящейся на нём информацией не случится.

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

Итак, принцип работы ОС Windows понятен. Теперь можно и к разбору спящего и ждущего режима приступить.

Использование специальной кнопки на клавиатуре

Многие встроенные клавиатуры ноутбуков, а также модели внешних клавиатур оснащаются специальной кнопкой для быстрого перехода в спящий режим. Что касается обозначения таких клавиш, то единого стандарта здесь не существует – некоторые производители используют значок с изображением полумесяца, встречаются кнопки с надписью Sleep, иногда клавишу для сна обозначают двумя небольшими буквами «Z». В таких случаях перевод компьютера в спящий режим будет самым быстрым.

Ждущие режимы Windows

Отключение с использованием утилиты PowerToys

Данный инструмент – разработка Microsoft, которая не вошла в состав операционной системы. Но утилиту можно установить, скачав этот бесплатный пакет служебных приложений с магазина Microsoft Store.

Ждущие режимы Windows

Использование PowerToys хорошо тем, что оно добавляет на панель задач отдельную иконку, существенно упрощающую перевод компьютера в режим сна.

Для этого запускаем приложение, активируем модуль «Awake», после чего на панели задач появится иконка с изображением чашки с кофе. Кликаем по ней, для опции «Mode» выбираем режим «Keep Awake Indefinitely», проставив возле него галочку.

Ждущие режимы Windows

Настройки PowerToys являются более приоритетными, чем остальные. Это означает, что, если выставить для опции «Mode» режим «Off (Passive)», поведение компьютера изменится в соответствии с настройками по умолчанию – если там выставлен автоматический переход в спящий режим, компьютер будет засыпать через заданный промежуток времени.

Стоит ли отключать гибернацию

Гибернация, обычный или гибридный спящий режим – это сложный механизм, который глубоко интегрирован в систему управления питанием материнской платы. Поэтому «игры» с ним могут привести к очень серьёзным последствиям.

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

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

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

Переход ко сну через меню опытного пользователя

Пользователи, не имеющие большого опыта работы в Windows, могут не догадываться о существовании такого меню. Оно появилось в семёрке, а затем с некоторыми переработками перекочевало в старшие версии. Суть меню опытного пользователя – предоставление меню с наиболее часто использующимися приложениями. Чтобы его включить, нажмите правой кнопкой мыши по иконке «Пуск» или используйте комбинацию Win+X, а для включения или отключения спящего режима повторите действия, описанные в предыдущем разделе.

Ждущие режимы Windows

Использование меню кнопки «Пуск»

Если вы хотите перевести компьютер в режим сна немедленно, самый быстрый и простой способ заключается в использовании меню кнопки «Пуск». Нажав на неё, кликните по иконке питания, размещённой в правом нижнем углу, а появившемся меню выберите пункт «Спящий режим». Сразу после этого ПК «заснёт», ожидая пробуждения нажатием любой клавиши на клавиатуре или шевелением мыши.

Ждущие режимы Windows

Немного истории

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

Ждущий режим на компьютере на Windows 7 практически отсутствует. Здесь он полностью заменён гибернацией и сном.

Гибернация — состояние ПК, разработанное специально для ноутбуков. В нём лэптоп также создаёт специальный файл, но не выключается. Он просто потребляет наименьшее количество энергии. Поэтому, во-первых, гибернация — своего рода замена ждущему состоянию Виндовс XP, во-вторых, выход из неё осуществляется быстрее. Она рекомендована для тех случаев, когда подзарядить батарею возможно будет только позднее, а ноутбук должен находиться в активном состоянии. Например, вы с небольшими перерывами работаете на нём в течение дня — самый лучший вариант — поставить лэптоп на гибернацию.

Отключить или активировать параметры можно через настройки электропитания.

  • Через «Панель управления» открываем настройки электропитания. На ноутбуке это удобно делать, нажав на значок батареи на панели задач и выбрав соответствующий пункт.
  • Выбираем используемый план и нажимаем на «Настройка плана электропитания».
  • Здесь есть две важные графы: отключение дисплея и сон. Отключение дисплея можно рассматривать как альтернативу ждущему режиму на Windows 7 — с чёрным экраном компьютер будет потреблять мало энергии и, отчасти, отдыхать. Для обоих состояний можно выставить время «Никогда», чтобы ПК не отключался и не гас самостоятельно.Настройка плана электропитания в Windows 7
  • Открываем дополнительные параметры. Здесь можно выбрать действие для кнопки от спящего режима: сон или гибернация. Также можно установить, при каких случаях компьютер должен «засыпать» или входить в гибернацию.

Диспетчер электропитания

За управление питанием отвечает диспетчер электропитания и отдельные драйверы устройств.

Этот диспетчер принимает решение о переходе в другие состояния основываясь на:

  • уровне активности системы;
  • уровне заряда аккумулятора;
  • наличие запросов приложений на переходы в другие состояния;
  • действия пользователя, например нажатие кнопки выключения;
  • настройках схемы эл. питания в “Панели управления“.

Драйвер устройства сообщает этому диспетчеру какие он поддерживает состояния (D0 — D3). А драйверы шины возвращают таблицу соответствий между системными состояниями (S0 – S6) и состояниями устройства.

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

Этот диспетчер также следит за тем, чтобы устройства, которым нужно много энергии на включение не включались одновременно.

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

Процессы приложений также могут получать от диспетчера команды. Но при этом, процессы ни чем управлять не могут, у них просто есть 2 секунды на выгрузку памяти, для перехода в спящий режим.

Переход в режим сна с использованием таймера

Если вам необходимо включать спящий режим в Windows 11 в определённое время или по расписанию, можно воспользоваться следующим алгоритмом:

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

Если возникнет ситуация, когда автоматический переход ко сну станет не нужен, его можно отключить здесь же, указав для обоих параметров значение «Никогда».

Отметим также, что точно таким же образом можно поступить с отключением/включением монитора: он будет переходить в экономный режим через заданный интервал времени и «просыпаться», как только владелец компьютера проявит активность.

Строго говоря, большинство современных мониторов умеет самостоятельно отключаться, если от ПК не будут приходить управляющие сигналы, так что два первых параметра касаются преимущественно ноутбуков.

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