Что такое pme sci в биосе
Прерывания от внешних устройств в системе x86. Часть 2. Опции загрузки ядра Linux
В предыдущей части мы рассмотрели эволюцию доставки прерываний от устройств в x86 системах (PIC → APIC → MSI), общую теорию и все необходимые термины.
В этой практической части мы рассмотрим как откатиться к использованию устаревших методов доставки прерываний в Linux, а именно рассмотрим опции загрузки ядра:
Загрузка без дополнительных опций
Смотреть прерывания в данной статье мы будем на кастомной плате с Intel Haswell i7 с чипсетом lynxPoint-LP на которой запущен coreboot.
Информацию о прерываниях мы будем выводить через команду
Вывод при загрузке без дополнительных опций:
Файл /proc/interrupts предоставляет таблицу о количестве прерываний на каждом из процессоров в следующем виде:
Упрощённо схему роутинга прерываний можно нарисовать так (красным помечены активные пути, чёрным неиспользуемые).
Поддержка MSI/MSI-X устройством должна быть обозначена как соответствующая Capability в его конфигурационном пространстве PCI.
В подтверждении приведём небольшой фрагмент вывода lspci для устройств, для которых обозначено, что они используют MSI/MSI-X. В нашем случае это SATA контроллер (прерывание ahci), 2 ethernet контроллера (прерывания eth58* и eth59*), графический контроллер (i915) и 2 контроллера HD Audio (snd_hda_intel).
Как мы видим, у этих устройств присутствует строка либо «MSI: Enable+», либо «MSI-X: Enable+»
Начнём деградировать систему. Для начала загрузимся с опцией pci=nomsi.
pci=nomsi
Благодаря этой опции MSI прерывания станут IO-APIC/XT-PIC в зависимости от используемого контроллера прерываний
В данном случае у нас всё ещё приоритетный контроллер прерываний APIC, так что картина будет такая:
Все прерывания MSI/MSI-X ожидаемо исчезли. Вместо них устройства теперь используют прерывания вида IO-APIC-fasteoi.
Обратим внимание на то, что раньше до включения этой опции у eth58 и eth59 было по 9 прерываний! А сейчас только по одному. Ведь как мы помним, без MSI одной функции PCI доступно только одно прерывание!
Немного информации из dmesg по инициализации ethernet контроллеров:
— загрузка без опции pci=nomsi:
— загрузка с опцией pci=nomsi
Из-за уменьшения количества прерываний на устройство, включение данной опции может приводить к существенному ограничению производительности работы драйвера (это без учёта того, что согласно исследованию Intel Reducing Interrupt Latency Through the Use of Message Signaled Interrupts прерывания через MSI в 3 раза быстрее чем через IO-APIC и в 5 раз быстрее чем через PIC).
noapic
Данная опция отключает I/O APIC. MSI прерывания всё ещё могут идти на все CPU, но прерывания от устройств смогут идти только на CPU0, так как PIC связан только с CPU0. Но LAPIC работает и другие CPU могут работать и обрабатывать прерывания.
Как видим, все прерывания IO-APIC-* превратились в XT-PIC-XT-PIC, причём эти прерывания роутятся только на CPU0. Прерывания MSI остались без изменений и идут на все CPU0-3.
nolapic
Отключает LAPIC. MSI прерывания не могут работать без LAPIC, I/O APIC не может работать без LAPIC. Поэтому все прерывания от устройств будут идти на PIC, а он работает только с CPU0. И без LAPIC остальные CPU даже работать в системе не будут.
Комбинации:
На самом деле всего одна для нового варианта: «noapic pci=nomsi». Все прерывания от устройств смогут идти только на CPU0 через PIC. Но LAPIC работает и другие CPU могут работать и обрабатывать прерывания.
Одна, потому что с «nolapic» можно ничего не комбинировать, т.к. эта опция и так сделает недоступным I/O APIC и MSI. Так что если вы когда-то прописывали опции загрузки «noapic nolapic» (или самый распространённый вариант «acpi=off noapic nolapic»), то судя по всему вы набирали лишние буквы.
Итак, что будет от опций «noapic pci=nomsi»:
Таблицы роутинга прерываний и опции «acpi=noirq», «pci=noacpi», «acpi=off»
Как операционная система получает информацию о роутинге прерываний от устройств? BIOS подготавливает информацию для ОС в виде:
Таблицы в списке выше обозначены в порядке приоритета. Рассмотрим это подробней.
Допустим BIOS предоставил все эти данные и мы грузимся без каких-либо дополнительных опций:
Суммируем всё вышеизложенное следующей картинкой:
Следует помнить, что не каждый BIOS предоставляет все 3 таблицы (ACPI/MPtable/$PIR), так что если вы передали опцию загрузчику отказаться от использования ACPI или ACPI и MPtable для роутинга прерываний, далеко не факт, что ваша система загрузится.
Замечание 1: в случае если мы попытаемся загрузиться в режиме APIC с опцией acpi=noirq и без наличия MPtable, то картина прерываний будет как и в случае обычной загрузки с единственной опцией noapic. Операционная система сама перейдёт в режим PIC прерываний.
В случае если мы попытаемся загрузиться вообще без таблиц ACPI (acpi=off) и не предоставив MPtable, то картина будет такая:
Это проиcходит из-за того, что без ACPI таблицы MADT (Multiple APIC Description Table) и необходимой информации из MPtable, операционная система не знает APIC идентификаторы (APIC ID) для других процессоров и не может с ними работать, но LAPIC основного процессора работает, так как мы это не запрещали, и MSI прерывания могут на него приходить. То есть будет так:
Немного странно, что так происходит, но в документации ядра вроде говорится, что это нормально.
Заключение:
В заключении ещё раз обозначим разобранные опции.
Опции выбора контроллера прерываний:
Управление питанием
Все материнские платы стандартов ATX и BTX поддерживают программный доступ к функциям управления питанием. Это позволяет, в частности, автоматически включать и выключать питание, переводить компьютер в энергосберегающие режимы, управлять пробуждением компьютера от внешних сигналов от периферии.
Расширенное управление питанием (APM — Advanced Power Management) разрабатывалось с целью сокращения потребления энергии компьютером в режиме простоя. В BIOS задаются несколько состояний пониженного энергопотребления, и указывается время бездействия, по прошествии которого они будут активированы. Причем доступ к функциям APM имеет и операционная система: она также может перевести компьютер в то или иное состояние. В настоящее время APM уже практически не используется, ему на смену пришел более совершенный интерфейс расширенного конфигурирования и управления питанием (ACPI — Advanced Configuration and Power Interface).
Активность устройств
Время бездействия компьютера определяется путем слежения за активностью отдельных компонентов. При этом вам предоставляется возможность указать устройства, при работе которых компьютер не должен переводиться в энергосберегающий режим средствами BIOS.
Современный компьютер трудно представить без программного доступа к функциям управления питанием, позволяющим, в частности, автоматически включать и выключать питание, переводить компьютер в энергосберегающие режимы, управлять его пробуждением. За это отвечает интерфейс расширенного конфигурирования и управления питанием (ACPI — Advanced Configuration and Power Interface).
Включение и выключение
Любая современная версия BIOS имеет в своем составе опции, задающие поведение кнопки включения питания на системном блоке. Нередко встречается возможность сконфигурировать и индикатор питания. Вы можете указать поведение компьютера после сбоя электропитания — должен ли он автоматически включиться после восстановления напряжения в электросети, остаться в выключенном состоянии или вернуться к состоянию, имевшемуся в момент пропадания напряжения в электросети.
Пробуждение
Как уже говорилось, материнские платы ATX и BTX поддерживают автоматическое управление питанием. Это позволяет, в частности, пробудить (или включить) компьютер при активности того или иного устройства. Например, сетевая карта, если она поддерживает технологию Wake-on-LAN, позволяет включить питание компьютера и выполнить загрузку операционной системы при приходе по сети так называемого «магического» пакета (Magic Packet), что может быть полезно при плановом обслуживании компьютеров в ночное время (поиск вирусов, архивирование данных).
APIC ACPI SCI IRQ
Название опции:
APIC ACPI SCI IRQ
Возможные значения:
Описание:
Встречаются две реализации этой опции. Во-первых, наряду с рассматриваемой, в BIOS может присутствовать опция, отвечающая за включение и выключение расширенного контроллера прерываний (APIC). Тогда, если вы задействовали расширенный контроллер прерываний, данная опция определяет, будут ли использоваться подсистемой расширенного конфигурирования и управления питанием разделяемые прерывания (Enabled) для информирования операционной системы о различных событиях (скажем, о факте нажатия кнопки POWER на системном блоке) или нет (Disabled). Поскольку использование разделяемых прерываний с номерами 20—23 является стандартом для этого режима контроллера, опция должна быть включена. В противном случае будут использованы прерывания из диапазона 9—11.
Во-вторых, при отсутствии отдельной опции, отвечающей за включение и выключение расширенного контроллера прерываний, данная опция как раз и будет выполнять ее функции. Если ваша операционная система поддерживает расширенный контроллер прерываний (Windows NT, Windows 2000, Windows XP, Windows 2003 и Windows Vista), включите (Enabled) данную опцию. В противном случае (в частности для Windows 95, Windows 98 и Windows Me) должно быть установлено значение Disabled.
Следует учитывать и еще один момент — расширенный контроллер прерываний является подсистемой расширенного конфигурирования и управления питанием (ACPI). Если вы отключите ACPI, вам придется отказаться и от использования расширенного контроллера прерываний.
Выбрать режим работы контроллера прерываний (расширенный или обычный) необходимо до установки операционной системы. Смена значения этой опции позднее способна нарушить ее нормальное функционирование. Обязательно задействуйте расширенный режим, если у вас многопроцессорная конфигурация, установлен процессор с виртуальной многопоточностью (Hyper-Treading) или имеющий несколько ядер. Иначе функционировать будет только один процессор (одно ядро), а остальные будут заблокированы.
Power On By PCIE Devices
материал № 9863
Назначение параметра: Параметр позволяет компьютеру включиться после появления какого-либо сигнала от шины PCIe, PCI или какой-либо другой шины. Источником такого сигнала могут служить различные карты расширения (сетевая, TV-тюнер, плата видеозахвата и т.п.), связанные с «внешним миром».
КОММЕНТАРИИ к «Power On By PCIE Devices»
ДРУГИЕ МАТЕРИАЛЫ ПО ТЕМЕ
Проявления неисправностей, связанных с данным параметром (0)
IT-WIKI (0)
Параметры BIOS (107)
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Описание значений параметров:
Статьи (1)
ID материала: 9428 / Дата публикации: 28.05.2019 / Просмотров: 1411
Корзина не предназначена для покупки товаров, поскольку сайт не занимается продажами.
Функция корзины заключается всборе компьютерных комплектующих в собственную базу (требуется регистрация на сайте) и сравнении их между собой.
Сбор компьютерных комплектующих в собственную базу: Эта фанкция необходима для виртуальной сборки компьютера. Требуется регистрация на сайте.
Сравнение комплектующих: Можно сравнить только комплектующие следующих групп: 1. Жёсткие диски. 2. Твердотельные диски. 3. Оперативная память. 4. Видеокарты. 5. Центральные процессоры. 6. Материнские платы.
В современном компьютере программная поддержка управления питанием осуществляется со стороны системы ACPI, а аппаратная поддержка отводится следующим компонентам системной платы:
1. Разъему для подключения основного кабеля блока питания и разъемам для подключения вентиляторов.
2. Системе пробуждения по сигналам из сети.
3. Технологии “мгновенной готовности компьютера”.
4. Технологии “возобновления работы по звонку”.
5. Пробуждения по сигналам из порта USB.
6. Пробуждения по сигналам от устройств PS/2.
7. Поддержка пробуждения при получении сигнала управления питанием (PME#).
8. Поддержка драйверов технологии Intel Quick Resume (QRTD).
Для перевода различных устройств ПК из одного режима питания в другой особое место в ACPI отведено представлению о состояниях функциональной готовности или отключения устройств, имеющих непосредственное отношение к уровням энергопотребления и энергосбережению. В стандарте ACPI для каждой группы управления существует определенный комплект состояний. Уровни состояний различаются потребляемой мощностью, величиной тока нагрузки, тактовой частотой системы и процессора, а также скоростью «пробуждения» устройств системы. ACPI опирается на функции управления Windows и BIOS. Если BIOS системной платы поддерживает систему ACPI, то управление питанием передается операционной системе. Это упрощает конфигурирование параметров системы, поскольку автоматические регулировки находятся в одном месте в операционной системе. ACPI располагает интерфейсом, который поддерживает на системной плате следующие функции:
1. Технологию Plug and Play, включая нумерацию шин и устройств.
2. Управление питанием отдельных устройств и карт расширения.
3. Средства поддержки в режиме ожидания мощности менее чем 15 Вт.
4. Компоненты программного отключения Soft Off.
5. Компоненты поддержки различных событий для пробуждения системы.
6. Включение питания и спящего режима на лицевой панели компьютера.
Система ACPI состоит из последовательности таблиц. В них определены имеющиеся в системе устройства, а также их характеристики с точки зрения конфигурации системы и управления энергопитанием. Таблицы создаются BIOS в процессе загрузки компьютера. Для определения ACPI-совместимости системы, в процессе загрузки BIOS просматривает специальные записи в двух таблицах FADT (Fixed ACPI Description Table) и RSDT (Root System Description Table). Найденные записи называются дескрипторами, среди них: OEM ID, OEM TABLE ID, OEM REVISION и CREATOR REVISION.
Если таблицы отсутствуют или информация в дескрипторах недействительна, BIOS считается несовместимой с интерфейсом ACPI, в таком случае устанавливается уровень аппаратных абстракций, или ACPI HAL.
При инициализации ACPI могут появиться сообщения об ошибках. Сообщения на красном фоне свидетельствуют о проблемах с аппаратным обеспечением и BIOS, на синем фоне о проблемах с программным обеспечением. Чаще всего эти ошибки свидетельствуют о частичной или полной поддержке функций ACPI системой BIOS или драйверами УВВ.
Система ACPI обеспечивает передачу в блок питания сигналов управления, предназначенных для реализации альтернативных способов включения и выключения компьютера. Блоки питания семейства ATX12V обладают линиями управления включения и выключения питания компьютера и содержат описанную ниже автоматику отключения питания системы. При получении этой системой соответствующей команды блок питания отключает подачу всех напряжений, не связанных с питанием устройств в режиме ожидания. При возобновлении работы после сбоя в сети компьютер возвращается в тот режим питания, в котором он был до этого (включен или отключен). Отклик компьютера вы можете настроить в меню Boot программы Setup BIOS с использованием опции Last «Power» State.
ACPI обладает памятью для возврата состояний. Например, в режиме мгновенного включения компьютера On Now в ОЗУ или на жестком диске сохраняются коды состояния компьютера. Ниже рассмотрены возможности, поддерживаемые блоком питания этого типа для управления включением/выключением компьютера.
Благодаря ACPI компьютер может быть переведен в состояние программного отключения Soft Off. Благодаря этой возможности компьютер может использовать источники постоянного питания при минимальном энергопотреблении.
Переход компьютера в режим питания Soft Off осуществляется нижеследующими способами:
1. Нажатием кнопки Power на лицевой панели компьютера, которая подключена к системной плате и не вызывает прекращения подачи питания.
2. Путем отключения с помощью операционной системы (на панели для выключения компьютера выбирается одна из трех возможностей завершения работы).
3. Во время отсутствия и появления электропитания в сети, что зависит от установки
параметров в меню Setup BIOS.
Для перевода аппаратных средств из состояния Soft Off в режим полной активности в меню Setup BIOS можно выполнить перечисленные ниже действия:
1. Использовать кнопку Power на лицевой панели компьютера или на клавиатуре (если таковая предусмотрена).
2. Дважды щелкнуть левой или правой кнопкой компьютерной мыши PS/2.
3. Использовать запрограммированную клавишу или клавиатурную команду.
4. Применить сигнал через модем по телефонной линии.
5. Использовать пакет программ Magic Packet, а также платы интерфейса локальной
вычислительной сети (ЛВС) и специального программного обеспечения ЛВС.
6. Активизировать по сигналам интервальный таймер.
7. Настроить автоматическое включение ПК в случае отсутствия питания.
Технология ACPI позволяет автоматизировать процесс распределения системных ресурсов с помощью операционной системы и выбора состояний управления электропитанием PMS. Для перевода различных устройств ПК из одного режима питания в другой особое место в ACPI отведено представлению о состояниях функциональной готовности или отключения устройств, имеющих непосредственное отношение к уровням энергопотребления и энергосбережению.
Для доступа к функциям PMS выберите команду Свойства контекстного меню рабочего стола. В диалоговом окне Свойства:Экран выберите вкладку Заставка и щелкните на кнопке Питание. В диалоговом окне Свойства:Электропитание выберите вкладку Схемы управления питанием. Из меню раздела Схемы управления питанием выберите доступную схему управления. В меню настроек задайте период отсутствия активности дисплея и жестких дисков, спустя который компьютер отключит их. Настройте параметры ждущего и спящего режимов. В стандарте ACPI управление питанием компьютера осуществляется настройкой состояний, или режимов питания.
Переходы состояния питания системы и устройств. При наличии интерфейса ACPI операционная система управляет всеми переходами состояния питания системы и устройств. Операционная система включает и выключает режим низкого энергопотребления, основываясь на информации о том, с какой интенсивностью используются приложения. Кроме того, информация поступает от пользовательских настроек, вводимых с помощью программы Setup BIOS. Компьютер (системная плата) ACPI поддерживает следующие основные состояния:
В пределах основной группы состояний энергопотребления системы существуют состояния сна, или ожидания (Sleeping States) от S0 до S5:
Процессор ПК тоже может находиться в «сонном» состоянии (различают состояния процессора от C0 до C3):
Состояние C3 предлагает еще более экономное потребление электропитания, чем в состояниях C1 и C2. Неблагоприятное аппаратное время ожидания для этого состояния предусмотрено через системные микропрограммы ACPI и операционное программное обеспечение, которое может использовать эту информацию, чтобы определяться, когда состояние C2 должно быть использовано вместо состояния C3. В состоянии C3 кэш-память процессора поддерживает режим хранения данных, но игнорируют любое к ней обращение. Операционное программное обеспечение обеспечивает поддержку связности кэш-памяти. Более глубокий Sleep (С4) включает состояние Deeper Sleep и состояние Intel Ehanced Deeper Sleep.
У процессоров Intel имеется группа входных контактов, при подаче на них управляющих сигналов происходит переход процессора в специальные состояния:
— сигнал на входе STPCLK# вызывает переключение процессора из рабочего режима в состояние STOP GRANT (процессор работает с приостановками и потребляет меньше электроэнергии). По снятию сигнала процессор возвращается в рабочий режим;
— сигнал на входе SLP# переключает процессор из состояния STOP GRANT в состояние Sleep (сна), он потребляет еще меньше энергии, не выбирает и не выполняет команды программы. По снятию процессор возвращается в режим STOP GRANT;
— сигнал на входе DPSLP# вызывает переход процессора из режима «сна» (Sleep) в режим «глубокого сна»
(Deep Sleep). По снятию сигнала процессор возвращается в режим «сна» (Sleep).
— сигнал на входе DPRSTP# вызывает переход процессора из режима «глубокого сна» (Deep Sleep) в режим «глубочайшего сна» (Deeper Sleep). По снятию сигнала процессор возвращается в режим «глубокого сна» (Deep Sleep).
Один из основных способов регулировки потребления электроэнергии процессора состоит в чередовании его рабочих и нерабочих циклов. При этом используются значения Duty Width и Duty Value. Первое из этих значений определяет временной цикл, а второе соотношение периодов работы и периодов покоя. Останов процессора осуществляется за счет прекращения подачи сигналов тактовой частоты.
В процессорах архитектуры Nehalem имеется специальный блок PCU (Power Control Unit), предназначенный для мониторинга и управления питанием процессора (по сути, PCU – это целый микроконтроллер, т. е. процессор в процессоре). PCU, основываясь на данных сенсоров и датчиков, может полностью выключать отдельные ядра и блоки CPU. Благодаря этой функциональности инженеры Intel смогли внедрить в Core i7 технологию Turbo Boost. Относительная энергоэкономичность Core i7 обусловлена низким рабочим напряжением (1,20 В) и размещением в теле процессора специального микроконтроллера PCU, в функциональные обязанности которого входит мониторинг и регуляция показателей напряжения, силы тока (и температуры) ядер. Кроме того, PCU способен полностью отключать одно или несколько ядер от энергоснабжения. В зависимости от ситуации, при работе в приложениях, не (полностью) использующих многозадачные способности Nehalem, часть ядер отключается, а частота оставшихся – повышается (при этом центральный процессор в целом не выходит за рамки своего TDP).
Например, в четырехядерных Core i7 могут быть полностью отключены два либо три ядра, и во втором случае частота оставшегося единственного ядра будет поднята еще больше. Возьмем случай с двухядерным процессором. Поскольку в однопоточных приложениях от многоядерности эффекта мало, основную роль здесь играет производительность отдельно взятого ядра. Поэтому Intel предусмотрела увеличение частоты работающего ядра (non-idle core), в то время как второе (idle core) находится в одном из состояний бездействия C3-C6 (рис. 1) и его тепловыделение резко сокращается. Эту разницу использует работающее ядро и повышает свою частоту до достижения процессором граничного уровня TDP. Основные состояния ядра, автоматически определяемые процессором, показаны в табл. 1.
Рис. 1. Состояния энергопотребления процессора Core i7
Core State