Advanced Power Management

редактировать

Advanced Power Management (APM ) - это API, разработанный Intel и Microsoft, выпущенные в 1992 году, что позволяет операционной системе, на которой работает IBM-совместимый персональный компьютер, работать с BIOS (часть прошивки компьютера) для достижения управления питанием.

Версия 1.2 была последней версией спецификации APM, выпущенной в 1996 году. ACPI - это преемник APM. Microsoft отказалась от поддержки APM в Windows Vista. Ядро Linux по-прежнему в основном поддерживает APM, хотя в версии 3.0 поддержка простоя процессора APM была прекращена.

Содержание
  • 1 Обзор
  • 2 События управления питанием
  • 3 Функции APM
  • 4 Состояния питания
    • 4.1 Состояния питания системы
    • 4.2 Состояния питания устройства
  • 5 ЦП
  • 6 В дисках ATA
  • 7 См. Также
  • 8 Ссылки
  • 9 Внешние ссылки
Обзор
Уровни в APM

APM использует многоуровневый подход для управления устройствами. Приложения с поддержкой APM (включая драйверы устройств) взаимодействуют с драйвером APM для конкретной ОС. Этот драйвер взаимодействует с BIOS, поддерживающим APM, который управляет оборудованием. Существует возможность отказаться от управления APM для отдельных устройств, что можно использовать, если драйвер хочет напрямую взаимодействовать с аппаратным устройством.

Связь происходит в обоих направлениях; События управления питанием отправляются из BIOS в драйвер APM, а драйвер APM отправляет информацию и запросы в BIOS через вызовы функций. Таким образом, драйвер APM является посредником между BIOS и операционной системой.

Управление питанием происходит двумя способами; через вышеупомянутые вызовы функций из драйвера APM в BIOS, запрашивающие изменения состояния питания, и автоматически в зависимости от активности устройства.

События управления питанием

Существует 12 событий, связанных с питанием (например, ожидания, запросы приостановки и возобновления, а также уведомления о низком заряде батареи), а также событий, определенных OEM, которые могут быть отправленным из APM BIOS в операционную систему. Драйвер APM регулярно опрашивает на предмет уведомлений об изменении событий.

События управления питанием:

ИмяКодКомментарий
Уведомление о запросе режима ожидания системы0x0001
Уведомление о запросе приостановки системы0x0002
Обычное системное уведомление о возобновлении0x0003
Критическое возобновление системного уведомления0x0004
Уведомление о низком уровне заряда батареи0x0005
Уведомление об изменении состояния питания0x0006
Уведомление о времени обновления0x0007
Уведомление о критическом отключении системы0x0008
Уведомление о запросе режима ожидания системы пользователя0x0009
Пользовательское уведомление о запросе приостановки системы0x000A
Уведомление о возобновлении режима ожидания системы0x000B
Уведомление об изменении возможностей0x000CИз-за установки или вставки / удаления устройства

Функции управления питанием:

ИмяКодКомментарий
Проверка установки APM0x00
APM Real Mode Interface Connect0x01
APM Protected Mode 16-bit Interface Connect0x02Избегает реального или виртуального режима86.
APM Protected Mode 32-bit Interface Connect0x03Избегает реального или виртуального режима86.
Отключение интерфейса APM0x04
CPU Idle0x05Запрашивает приостановку системы.. 0) Тактовая частота остановлена ​​до прерывания тика таймера.. 1) Низкая частота
CPU Busy0x06Драйвер сообщает системе APM о необходимости восстановить тактовую частоту CPU.
Установить состояние питания0x07Установить систему или устройство в состояние ожидания / ожидания / выключения.
Включение / отключение управления питанием0x08
Восстановить настройки APM BIOS при включении питания0x09
Получить состояние питания0x0AПоддерживает состояние переменного тока «При резервном питании». И состояние батареи.
Получить событие PM0x0BПроверяет наличие событий APM. Вызывается раз в секунду.
Получить состояние питания0x0C
Включение / отключение управления питанием устройства0x0D
Версия драйвера APM0x0E
Включение / отключение управления питанием0x0FУправление APM для определенного устройства.
Получить возможности0x10
Получить / установить / отключить таймер возобновления0x11
Включить / отключить возобновление при индикаторе звонка0x12
Включить / Отключить запросы на основе таймера0x13
Проверка установки OEM APM0x80Сообщает, поддерживает ли APM BIOS функции, зависящие от оборудования OEM.
Функция OEM APM0x80Доступ к специальным функциям OEM.
Функции APM

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

Состояния питания

Спецификация APM определяет состояния питания системы и устройства.

Состояния питания системы

APM определяет пять состояний питания компьютерной системы:

  • Full On: компьютер включен, и никакие устройства не находятся в режиме энергосбережения.
  • APM включен: компьютер включен, и APM при необходимости контролирует управление питанием устройства.
  • APM Standby: большинство устройств находятся в состоянии низкого энергопотребления, ЦП замедлен или остановлен, а состояние системы сохраняется. Компьютер можно быстро вернуть в прежнее состояние (в ответ на действия, например, нажатие пользователем клавиши на клавиатуре).
  • Приостановка APM: большинство устройств выключены, но состояние системы сохраняется. Компьютер можно вернуть в прежнее состояние, но это займет относительно много времени. (Гибернация - это особая форма состояния приостановки APM).
  • Выключен: компьютер выключен.

Состояние питания устройства

APM также определяет состояния питания, которые может осуществлять. Не требуется, чтобы устройство с поддержкой APM реализовывало все состояния.

Четыре состояния:

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

Ядро ЦП (определяется в APM как частота ЦП, кэш, системная шина и системные таймеры) обрабатываются в APM особым образом, так как это последнее устройство, которое будет отключено, и первое устройство, которое будет включено обратно. Ядро ЦП всегда управляется через APM BIOS (нет возможности управлять им через драйвер). Драйверы могут использовать вызовы функций APM для уведомления BIOS об использовании ЦП, но BIOS должен действовать в соответствии с этой информацией; драйвер не может напрямую указать ЦП перейти в состояние энергосбережения.

В дисках ATA

Спецификация ATA определяет условия APM для жестких дисков с помощью подкоманды 0x05, которая определяет компромисс между частотой замедления и постоянным включением спектакль. В отличие от APM на стороне BIOS, ATA APM никогда не считался устаревшим.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-10 02:08:58
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте