Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

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


Режим управления системой SMM (System Management Mode).

Режим управления системой SMM (System Management Mode).

Главным образом, режим SMM предназначен для реализации системы управления энергопотреблением. Управление энергопотреблением - это автоматический перевод компьютера на пониженное потребление энергии в периоды неактивности. В настоящее время существует две системы ynpaвления электропитанием:

В режим SMM процессор Pentium входил только по сигналу на входе SMI# (System Management Interrupt), но более современные процессоры могут входить в SMM и по приему соответствующего сообщения по шине контроллера прерываний APIC. Сигнал SMI# для процессора является запросом прерывания с наивысшим приоритетом. Обнаружив активный сигнал SMI#, процессор по завершении текущей инструкции и выгрузки буферов записи переключается в режим SMM, и формирует выходной сигнал SMIACT#. Сразу при входе в SMM процессор сохраняет свой контекст (практически почти все регистры ) в специальной памяти SMIRAM. Эта память использует часть адресного пространства физической памяти, доступ к которой обеспечивается только при наличии сигнала SMIACT#. После сохранения контекста процессор переходит к выполнению программы-обработчика SMI, которая расположена в памяти SMIRAM. Программа-обработчик состоит из последовательности обычных инструкций, исполняемых процессором в режиме, аналогичном реальному режиму.

При входе в режим SMM автоматически запрещаются аппаратные прерывания (маскируемые и немаскируемые) и не генерируются исключения, поэтому действия процессора определяются программой-обработчика SMI. Программа-обработчик завершается инструкцией RSM (RSM выполняется только в режиме SMM ), по которой процессор восстанавливает свой контекст из SMIRAM, и возвращается в обычный режим работы.

Начиная еще со второго поколения Pentium имеется возможность рестарта инструкций и входа в SMM по сообщению, принятому с шины APIC. При возврате из SMM возможны некоторые варианты, заказанные программой-обработчиком (в пределах возможностей аппаратуры по режиму SMM и данного процессора). Программа-обработчик может внести изменения в образ контекста процессора, и процессор может вернуться не в то состояние, в котором произошел переход в SMI.

Возможен выбор варианта для случая, когда прерывание SMI возникло во время останова процессора по инструкции HALT:

  • можно вернуться снова на команду останова,

  • можно перейти к выполнению следующей за ней команды.

Процессоры, начиная с Pentium второго поколения, поддерживают и возможность рестарта (повторного выполнения) команды ввода-вывода, предшествующей появлению сигнала SMI#.

Возможность рестарта команды ввода-вывода является расширением режима SMM. Ее используют, например, когда прикладная программа (или системный драйвер) пытается обратиться c операцией ввода-вывода к периферийному устройству, находящемуся в «спящем» режиме. Системная логика в этом случае должна выработать сигнал SMI# раньше сигнала готовности устройства к обмену RDY#, завершающего шинный цикл рестартуемой команды ввода-вывода. Обработчик SMI «разбудит» устройство, после чего операция ввода-вывода рестартует, и прикладное ПО (или драйвер) «не заметит», что устройство пребывало в «спячке». Таким образом, управление потреблением энергии может быть совершенно «прозрачным» для прикладного программного обеспечения и операционных систем (ОС). Прозрачность SMM обеспечивается следующими свойствами режима:

- возможностью только аппаратного входа в режим SMM,

- исполнением программы-обработчика SMM в отдельном адресном пространстве памяти,

- сохранением состояния прерванной программы в области SMIRAM,

- запретом обычных аппаратных прерываний,

- восстановлением состояния ранее прерванной задачи при выходе из режима SMM.


Лицензия