Intel Management Engine

Intel® Management Engine (Intel® ME) - подсистема, встроенная в чипсет, предназначенная для различных задач связанных с мониторингом и обслуживанием компьютера во время сна, загрузки, а также в процессе его работы.

Так или примерно так, максимально скромно/официально объясняется смысл данной технологии Intel, цитата:

Built into many Intel chipset based platforms is a small, low power computer subsystem called the Intel® Management Engine (intel® ME). This performs various tasks while the system is in sleep, during the boot process and when your system is running. It is important that this sub system is functioning correctly to get the most performance and capability from your PC.

Если вас не устраивает такое обтекаемо-официальное объяснение - читаем далее "много букв".

Предыстория Intel Management Engine

Вынесено в отдельную статью: читайте (и смотрите в картинках) "Intel Management Engine - краткая предыстория".

Что такое Intel ME

Далее следовало бы написать аналогичную “предысторию Intel AMT” (и напишу), т.к. появление Intel МЕ неразрывно связано с AMT. Но это уже отдельная и ещё более объёмная тема, потому на подробностях, её касающиеся здесь останавливаться не будем.

Обновление: Intel AMT - история (в том числе и предыстория) появления и развития функционала

Нулевые

Итак, после релиза первой версии ASF в 2001-м, сразу же начались работы над второй версией ASF, т.к. в первой даже не было шифрования. И если эту дырищу ещё можно было как-то заштопать (что и было сделано в некоторой степени во второй версии), то работа по UDP не подлежала лечению, т.к. являлась непреодолимым архитектурным наследием (плюс был ряд и других весомых недостатков). Потому параллельно в 2002-м году начались работы над собственным, исключительно “Intel-овским” решением (в отличие от открытых “management”-проектов типа IPMI/ASF/итп). Возможность создания “с чистого листа” позволяла нацелить его на самый перспективный и растущий тогда рынок - мобильных систем.

Также напомним, что за ситуация сложилась (начало нулевых) на уровне железа/чипсета. Приход PCI-E, SATA/AHCI, всё возрастающая интеграция функционала на плате, мобильная составляющая - всё это требовало введения всё новых специальных микроконтроллеров. Со стороны “management”  аналогично - тот же контроллер ASF, с выходом очередной версии спецификации которого, её нужно было бы как-то обновлять. А если ещё и запланированный в разработку будущий контроллер AMT - это получается неуправляемый огород, надёжность которого бы сильно упала по очевидным причинам. Напрашивалось очевидное решение (несмотря на это его на всякий случай всё равно запатентовали) - вместо огорода “спецпроцессоров” ввести один настоящий “management”-процессор, на который можно было бы возложить всю сложную логику, а с периферией он бы общался посредством не столь продвинутых контроллеров. Это бы позволило и легко видоизменять схему и обновлять после производства/продажи. Так на материнской плате появился ещё один процессор, имеющий отдельное питание, работающий “параллельно” и обслуживающий всё железо за счёт выполнения на нём нужных приложений, обеспечивающих какой-то функционал (какие-то фичи). Такую схему работы после назвали и Intel ME.

ARC4ARC International

В качестве процессора для Intel ME был выбран весьма популярный в начале нулевых ARCtangent-A4 фирмы ARC, с которой у Интел был хороший уровень сотрудничества.

ARCtangent-A4 это 32bit-ный IP-процессор (т.е. с программируемой внутренней структурой) с RISC-архитектурой (т.е. “ARM”).

ARCtangent A4
Картинка из даташита на ARCtangent-A4 процессор (с.1)

Работал на частотах порядка 200МГц и поначалу данный процессор “путешествовал” по плате - в первых версиях он был и в южном мосте в качестве BMC для чипсета i5000/ESB2:

Intel BMC/AMT
Картинка из даташита "Intel® 631xESB/632xESB I/O Controller Hub"
(c.4 - с моей пометкой версии ME)

И был встроен в гигабитную сетевую карту Intel 82573E (Tekoa) в чипсете i945/ICH7:

Intel AMT1 - Tekoa
Картинка 3DNews.com с IDF 2006 (с моей пометкой версий МЕ)

Однако начиная с i965/ICH8 окончательно обосновался в северном мосте.

Первые версии ME не имели, собственно, такого названия (“Intel ME”), потому нумерация их достаточно условна (т.к. это относилось к AMT) и приведено больше чисто для хронологии.

В 2006-м году появился бренд Intel vPro, который как раз и дал начало Intel ME (2.0), Intel AMT2.0 и ознаменовался выходом i965/ICH8. Работа ME 2.0 в документации описывается следующей схемой:


Картинка из Intel AMT SDK

Процессор ARC-A4 во второй версии МЕ располагается в северном мосте (i965), а для работы использует использует часть оперативной памяти, доступной ему через Slot 0. Именно потому на платах вплоть до Intel Series 4 (ME 5.x) включительно в документации присутствовало требование типа:

Regardless of the memory configuration used (dual channel, single channel, or flex mode), DIMM 0 of Channel A must always be populated. This is a requirement of the Intel Management Engine in ICH10.
При отсутствии памяти в Slot 0 для ME наш BIOS будет ругаться типа: “Manageability Engine (ME) Channel A DIMM Missing.”

А также в диспетчере задач получается картинку типа:

Intel MEI error
Ошибка (“нестарт”) ME (не стоит память в первом разъёме)

Использование оперативной памяти компьютера требует поддержания её работоспособности в Sx режиме, потому в случае наличия технологии AMT требуется её подпитывать:

ME Sx Series4
Из даташита на Intel® 4 Series Chipset (с.559)

Т.е. для работы ME в “дежурном режиме” (когда компьютер выключен, но подключён к сети) - требовалось кроме питания ME-процессора ещё “включать” и память. И хотя для уменьшения энергопотребления был разработан режим Wake-on-ME (когда частота работы ME-процессора сильно снижалась - он “засыпал” и “просыпался по требованию”), существенно снижающий потребления в Sx, однако всё равно, такая сложная схема работы не могла радовать с точки зрения надёжности.

Сообщения о проблематичности работы компьютеров с активным задействовании Intel AMT до пятой версии включительно не так часто встречаются на просторах интернета, однако это больше связано с незнанием данной фичи (а потому обычно она была отключена). В частности, моя личная практика, к сожалению, это ровно подтверждает - проблематичность (в т.ч. выхода из строя), особенно AMT4/AMT5. (Однако, всё же - это чисто мой опыт, с “нерепрезентативной” выборкой).

ARC5

С выходом Intel Series 5, где MCH (северный мост) и ICH (южный мост) объединились в PCH (“одночипсетная” конфигурация), а контроллер памяти вообще переехал в процессор - для Intel ME был использован ARC-процессор ARCtangent A5 с собственной памятью на борту.


Картинка из Intel AMT Start Here Guide

При работе компьютера (режим S0) процессор Intel ME6 по-прежнему пользовался оперативной памятью (DDR3), а в “дежурном режиме” (Sx) переключался на собственную.

PCH6
Картинка из даташита на Intel® 5 Series Chipset (с.256)

Цитата из даташита на Intel® 6 Series Chipset (с.254):

  • The flash device stores Intel ME Firmware code that is executed by the Intel ME for its operations. In M0, the highest power state, this code is loaded from flash into DRAM and cached in secure and isolated SRAM. Code that resides in DRAM is stored in 16 MB of unified memory architecture (UMA) memory taken off the highest order rank in channel 0. The PCH controls the flash device through the SPI interface and internal logic.
  • In order to interface with DRAM, the Intel ME uses the integrated memory controller (IMC) present in the processor. DMI serves as the interface for communication between the IMC and Intel ME. This interfacing occurs in only M0 power state. In the lower Intel ME power state, M3, code is executed exclusively from secure and isolated Intel ME local RAM.

Отличия в структуре ARC5 (от ARC4) не шибко принципиальны и схема его ядра ровно такая же. Однако функционал ME6/AMT6 значительно изменился по сравнению с предыдущими версиями. Для “обычного пользователя” особенно видимым отличием стала технология Intel AMT KVM, позволяющая управлять компьютером (включать-выключать-перезагружать) и видеть его экран, пользуясь при этом клавиатурой и мышкой, не теряя картинки/связи даже после перезагрузки. Для “разгоняльщиков” - появление ICC-профилей (начиная с ME7.0), позволяющих гибко управлять возможностями разгона с помощью Intel ME.

ARC600

После объединения MCH и ICH в PCH, интеграции контроллера памяти и видеокарты в процессор, очевидным стало, что на очереди следующий этап - полной интеграции “всего в процессоре” или по-умному SoC (System on Chip). Он был осуществлён с появлением Haswell Core i*-4***U/Y (серии для ультрабуков и планшетов). Понятно, что для таких систем крайне важна энергоэффективность, потому в качестве процессора для Intel ME9 был задействован ARC600, имеющий более лучшие характеристики по энергосбережению.

Как это ни удивительно, но факт - для Haswell U/Y получился вариант “процессор в процессоре”.

Кроме улучшений Power Management принципиальных архитектурных отличий ARC6 от ARC5 нет, лишь улучшенная производительность: более длинный конвейер + предсказание ветвлений + вдвое увеличенная частота работы (около 400МГц).

ME9 Clock
Картинка из даташита на Intel® 8 Series Chipset (с.129)

ThreadX

В качестве операционной системы для Intel ME используется линукс ThreadX RTOS.


Картинка из “AMT Architecture Guide

В самых первых версиях набор модулей был не столь широк, из “верхнеуровнивых”, то это требующиеся для работы Intel AMT (или ASF) да TPM. Позже их становилось всё больше.

ME9 Clock
Внутренняя структура ME7 из “Intel AMT 7 PRD” (с.16)

Цитата оттуда же:

These modules must be loaded at this time in order to minimize any delays to the BIOS during the POST process: TLS, RSA, TDT, MPC, QST, AMT, CastlePeak, CommonServices, UTILITIES, EAC, SECIO, WoX, IPT, NETSTK, WLAN, WLAN uCode.

Структура флэш-микросхемы (в ней не только BIOS, но и ME, и другие составляющие).

Firmware ME

 

 

...Продолжение/редактирование следует (обновлено 01.02.2014).

Ссылки по теме МЕ

Ссылки на источники постепенно свожу отдельную статью: "Intel ME - источники информации". Вся информация взята из открытых источников (не указанные пока ссылки будут позже уточнены и указаны).

Модули Intel ME

Вынесено в отдельную статью: читайте "Модули Intel ME".

...статья в процесе редактирования (обновлено 01.02.2014)...

Статья в процессе написания - можно оставлять вопросы на раскрытие/описание.

Комментарии

очень интересно, а дальше?
и сцылок бы откуда инфа, плз.
спасибо!

Вы уверены, что в Intel Haswell SoC (да хотя бы вообще в какой-нибудь Intel SoC) встроен Management Engine? Откуда такая инфа?

написано толково и на русском, спасибо!
правда, пока маловато инфы...
ждем-с продолжения!
ну и самый волнующий вопрос: оборотами вентилятора в ноуте управляет БИОС или МЕ?
сама БИОС получает инфо о температуре компонентов напрямую с микроконтоллеров/датчиков или через МЕ?

Немного дополнительной информации по теме из китайских интернетов: http://wenku.baidu.com/view/55ecfbdcd15abe23482f4d75 и дальше там по ссылкам справа.
Тема очень интересная и совсем не освещенная, так что присоединяюсь к требованию продолжения банкета. :)

Аватар пользователя apple_rom

Банкет будет, обязательно (статья начиналась писаться ещё в 2012-м, сейчас всё обновляю), но всё по очереди.

Часть первая: Intel Management Engine - краткая предыстория.

Аватар пользователя apple_rom

Вторая попытка написать статью про Intel ME - учёл пожелания максимально сыпать ссылками (теперь страдайте).

именно это должно проходить красной нитью в повествовании о обсуждаемой технологии

т.к. красивый фантик - "вы можете сделать", отвлекает от реальности - "с вами могут сделать"
и если раньше закладки маскировали, то теперь приподносят как "у вас невероятные возможности" (которые вы никогда не сможите отключить)

Это похоже на манипуляции майкрософта - "вы не купили виндовс/офис, вам дали им попользоваться, и не более, он не ваш"

Интересные аппаратные закладки)

С одной стороны обидно, чот на купленной мной достаточно новой матери в силу дешевизны нету ну практически ничего из этого, не то что удалённого управления. Т.е. реализации Intel ME на чипсете H81 досталось только ACPI да вентиляторы, никакие сервисы удалённого управления там недоступны ни в каком виде, и даже антивор вырезан. Хотел сам использовать Intel AMC, но увы. С другой стороны теперь точно знаю что всё безопасно.

Здравствуйте! Подскажите пожалуйста как устранить ошибку изложенную выше в тексте "При отсутствии памяти в Slot 0 для ME наш BIOS будет ругаться типа: “Manageability Engine (ME) Channel A DIMM Missing.”"

Аватар пользователя apple_rom

Может просто поставить планку памяти в первый (либо нулевой, либо "А") слот (разъём)? :)

Как вариант, если память в нём стоит - перетыркнуть, поменять местами и прочие обычные "шаманские действия". В любом случае, очевидно, что при наличии исправной памяти в данном слоте, подобной ошибки быть не должно.

Мда... Столько написано и описано, а баги как были, так и остались ( Я из-за этой фигни уже больше недели не могу нормально лечь спать! И не вычисляется ничем!
А теперь расскажу в чем было дело: Появился у меня ноутбук QT72 2QE Dominator Pro. И все было прекрасно. Загружался 5-6 секунд. Но в один прекрасный день он стал загружаться по полторы минуты!!!! Естественно это стало раздражать! И я начал искать проблему. Чего я только не перепробовал... И откат... и восстановление...и установка новый драйверов с офф-сайта... и опять откат и опять восстановление... и всякие тесты (которые показали, что загрузка происходит аж по 95 сек) и то что загрузка эта связана с smss.exe... а что и откуда - ничего... Пока по чистой случайности в очередной раз не заглянул в диспетчер задач и увидел вот это чудо (Intel Management Engine) с желтым восклицательным значком. И решил его удалить... И О! ЧУДО! перезагрузка прошла за 5 секунд! Но следующая уже опять была 90 сек. Оказывается это Г опять себя установило! Пришлось просто его отключить. Вот и скажите на милость - зачем такое Г надо?

Подскажите, а есть ли функционал KVM в материнке http://www.gigabyte.ru/products/page/mb/ga-q87m-d2hrev_10/ с установленным процессором i7-4790K? Мне удалось настроить только управление питанием и скудные мелочи вроде логгинга и просмотра конфигурации ПК. В гугле на эту тему пусто.

Аватар пользователя apple_rom

Поддержка KVM - не в плате, а в процессоре (т.к. видеокарта встроена в CPU, а не MB). Процессоры с буквой K на конце не поддерживают Intel vPro (т.е. Intel AMT), соответственно, не поддерживают Intel AMT KVM.

п.с. Хотя, конечно же, поддержка со стороны платы/чипсета также обязательна — она в данном случае (Intel Q87) есть.

п.с. п.с. Соответственно, "максимальный" для Intel AMT 9 систем — i7-4770.

Хорошая статья. А как насчёт Intel AMT в Инфраструктуре с SCCM 2012. Недавно начал этот проект, не плохо было бы такой инфы.
для помощи брал этот сайт, может кому-нибудь понадобится.
https://sccmguru.wordpress.com/2013/12/20/integrating-configuration-mana...

Автору огромное спс

Добавить комментарий

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
Anti-bot.