ACPI — что это такое и как им управлять

Технология ACPI (Advanced Configuration and Power Interface) — это попыт­ка создать стандарт, который описывает все условия, при соблюдении кото­рых персональный компьютер приобретает способность управлять собст­венным электропитанием почти в автоматическом режиме. Почему почти? Да потому что для корректной реализации любого действия электронике требуется специальная программа. В данном случае роль "специальной программы" играет встроенное программное обеспечение (BIOS) материн­ской платы, а также любых других устройств составляющих персональный компьютер. А любую программу пишет по-прежнему человек, пока.
Официально на сегодняшний день технологию ACPI поддерживают практи­чески все современные устройства, но реальная ситуация немного менее оптимистична, в чем мы сейчас и разберемся.
Итак, благодаря специальным функциям BIOS мы можем разрешить или запретить включение компьютера при определенных условиях. Таким усло­вием можно считать практически любой сигнал, который может означать активность пользователя — это, например, нажатие какой-нибудь клавиши на клавиатуре или компьютерной мыши или же сигнал, поступивший на вход модема или сетевой платы. Любой из вариантов в принципе должен вызвать включение питания компьютера. Благодаря чему такое становится возможным? Вот здесь мы и сталкиваемся с первым препятствием, из-за которого некоторые компьютеры не могут удовлетворять всем требованиям ACPI — это блок питания.
Во-первых, компьютер для полноценной поддержки технологии ACPI обя­зательно должен быть запитан от блока питания АТХ. Естественно, что и материнская плата на базе, которой собран компьютер, также должна соот­ветствовать упомянутому форм-фактору. Применявшийся ранее форм-фактор AT не может удовлетворить даже самым скромным требованиям тех­нологии ACPI, поэтому то мы и не будет заострять особого внимания на возможностях управления электропитанием ПК данного форм-фактора.
Как известно, форм-фактор АТХ даже когда компьютер выключен, предпо­лагает, что на материнскую плату постоянно подается так называемое "дежурное напряжение" со значением +5В. Фактически персональный ком­пьютер АТХ всегда находится во включенном состоянии, пока вы не отклю­чили его от электросети или не отключили блок бесперебойного питания. Из этого "режима ожидания" его можно вывести как нажатием кнопки POWER, так и каким-нибудь иным способом, предусмотренным производителем ма­теринской платы. Не секрет, что в момент старта практически все устройст­ва потребляют максимальное количество энергии, особенно относится это к жестким дискам, приводам CD-ROM и другим подобным устройствам. Недостаточно мощный блок питания, скорее всего, сведет к нулю все воз­можности компьютера в автоматическом управлении электропитанием.
Первое и, скорее всего, самое главное условие бессбойной работы любой из функций ACPI — это мощный блок питания, который способен предоставить достаточно энергии для питания всех компонентов компьютера, как в момент их старта, так и в процессе их дальнейшей работы. В противном случае как мини­мум некоторые функции ACPI будут для вас недоступны, к тому же недостаточ­но мощный блок питания может привести к потере важных данных, имейте это в виду.
Смотрим дальше. Технология ACPI предполагает помимо возможности включения компьютера, его временный перевод в режим пониженного энергопотребления. Для чего это нужно? Благодаря этой функции предос­тавляется возможность не только сэкономить электроэнергию, но и, во-первых, уменьшить уровень шума, издаваемый компьютером в периоды, когда он не используется, но должен быть всегда наготове. Во-вторых, появ­ляется уникальная возможность оставить компьютер включенным при по­стоянных сбоях электроэнергии. Представьте, что ваш компьютер питается в моменты отключения электроэнергии от источника бесперебойного пита­ния. В те моменты, когда компьютер находится в одном из режимов энерго­сбережения, его потребление снижается до минимума, что позволяет значи­тельно увеличить время работы аккумуляторов источника бесперебойного питания до их истощения, которые естественно должны выдерживать ток, потребляемый компьютером при его переходе в обычный режим работы.
Здесь мы сталкиваемся со второй серьезной проблемой. Перевод компьюте­ра в один из режимов энергопотребления производится операционной сис­темой при помощи, например, специального драйвера или выполняемой в данный момент программы пользователя. Следовательно, используемая операционная система просто обязана корректно поддерживать технологию ACPI и к тому же она должна быть совместима со встроенным программ­ным обеспечением, как материнской платы, так и остальных устройств. Естественно, что используемый режим энергосбережения в обязательном порядке должны поддерживать все используемые устройства, по крайней мере, те из них, которые подключены к компьютеру постоянно, а это все внутренние компоненты — платы расширения, накопители и прочее. Некорректная работа даже такого на первый взгляд второстепенного устрой­ства как привод CD-ROM может свести к нулю возможность использования функций энергосбережения.
Второе по важности условие бессбойной работы любой функции ACPI — совместимость используемого аппаратного и программного обеспечения. В противном случае как минимум некоторые функции ACPI будут для вас не­доступны, что вполне можно устранить обновлением программного обеспече­ния либо заменой некоторых устройств на новые с полноценной поддержкой необходимых функций.
Немаловажным моментом в подборе конфигурации компьютера является поддержка тех или иных режимов энергосбережения или как было бы пра­вильным их называть режимов энергопотребления. В спецификации ACPI описано множество состояний компьютера, но глобальный характер имеют только четыре из них:

  • GO — нормальная работа компьютера;
  • G1 — "легкий сон", основные компоненты ПК выключены, но все про­граммы которые были открыты пользователем до перехода в это состоя­ние по-прежнему активны, причем состояние операционной системы и всех активных программ полностью восстанавливается в том самом виде, в каком оно было до перехода компьютера в это состояние; G2 — "глубокий сон", при котором практически все компоненты ПК вы­ключены, программы, в том числе и операционная система деактивированы, включение компьютера осуществляется относительно быстро, но значительно медленнее, чем из предыдущего режима, причем операци­онная система загружается вновь со всеми вытекающими последствиями;
  • G3 — полное отключение системы.

Помимо этого на практике применяется еще ряд терминов, которые, кстати, все чаще используются при описании функций операционной системы. Это в первую очередь режимы энергосбережения от S1 до S5.
Первый режим SI позволяет сохранить наименьший процент электроэнер­гии, зато дает возможность осуществить наиболее быстрый переход в рабочее состояние. В состоянии S1 отключается генератор тактовой частоты цен­трального процессора, поэтому для бессбойной работы компьютера содер­жимое всех регистров и кэш-памяти следует предварительно сохранить в опе­ративной памяти или в файле на жестком диске.
Следующий режим — .S2 — с точки зрения операционной системы иденти­чен первому за небольшим исключением — от центрального процессора отключается напряжение питания, также останавливаются все тактовые ге­нераторы, кроме тех, которые будут нужны для бессбойной работы опера­тивной памяти. Информация из центрального процессора может быть со­хранена только в оперативной памяти, что предъявляет повышенные требования к стабильности ее работы.
Несколько большую степень экономии электроэнергии дает использование режима S3 или как его чаще всего называют Suspend-to-RAM. При переходе в этот режим питание отключается абсолютно от всех компонентов ПК, кроме подсистемы оперативной памяти, которая необходима для хранения текущего состояния системы. Данный режим предъявляет довольно серьез­ные требования к аппаратному обеспечению, что объясняется следующими его особенностями — при восстановлении питания нужно вновь инициали­зировать абсолютно все устройства, причем процесс этот происходит в ре­жиме "горячего подключения". Если в системе имеется хотя бы одно уст­ройство, не поддерживающее подобную функцию, ваш компьютер, скорее всего, не сможет успешно выйти из режима S3.
Более "глубокий сон" предполагает уже и отключение подсистемы опера­тивной памяти, причем текущее состояние системы по-прежнему записыва­ется, но на диск, точнее жесткий диск, на котором операционная система обычно хранит временные файлы. Называется этот режим, как и предыду­щий двояко — S4 или Suspend-to-Disk. Иногда этот режим еще называют Suspend-to-Hard Drive или S4-Hibernation.
Следующий режим, имя которому S5, сложно назвать состоянием, потому что при переходе в него ПК полностью отключается. Текущее состояние не отслеживается, поэтому переход компьютера в рабочий режим сопровождается инициализацией всего оборудования "с нуля", загрузкой операционной системы и т. п. Последний режим известен как "программное выключение" или Soft-Off.
Теперь об основных проблемах выхода из режимов энергосбережения (обра­тите свое внимание — именно режимов). В спецификации ACPI отсутству­ют какие-либо конкретные рекомендации по дизайну аппаратного и про­граммного обеспечения, там предоставлены всего лишь общие сведения, причем каждый производитель вправе решать самостоятельно, какие из функций внедрять в свой продукт. Это приводит к регулярному появлению на компьютерном рынке несовместимых устройств, которые не только ограничивают общее развитие системы ACPI, но и вносят немало проблем в практику модернизации компьютеров. Ведь после подключения нового устройства, с одной стороны расширяющего возможности ПК, возможно, придется отказаться от некоторых удобных и ранее используемых функций!
Немного ранее мы упоминали, что при переходе компьютера в рабочий ре­жим все устройства фактически заново подключаются к материнской плате, только в режиме так называемого "горячего подключения", когда не проис­ходит его инициализации, а используются ранее заданные значения наибо­лее критичных параметров. Для того чтобы такая система работала без сбо­ев, каждый из компонентов ПК просто обязан соответствовать стандарту Plug and Play, позволяющему задать правила, соблюдение которых упрощает идентификацию устройства.
Стоит сказать и о предшественнике технологии ACPI, который как ни странно поддерживается до сих пор, по крайней мере, так заявляют произ­водители. Это технология АРМ (Advanced Power Management), главным недостатком которой было отсутствие достаточно тесного взаимодействия с операционной системой, что является на сегодняшний день основным преимуществом ACPI.