Редактируем BIOS

26 Ноя 2012

Редактируем BIOS

Сказано уже многократно, а совет до сих пор не теряет актуальность: «Десять раз подумай, прежде чем обновлять BIOS». Но психология бессильна против жажды к новому. Особенно в тех ситуациях, когда требуется получить скры­тый по­тен­ци­ал, заложенный производителем в компьютер.

Преграды и препятствия на пути к поставленной цели не помеха! Если не получается «по науке», на помощь придет выдумка. Так, в ситуации, когда AMIBCP не справляется с редактированием образа BIOS, с помощью обходных ма­нев­ров можно достичь ус­пеш­но­го результата.

Flash Images Tool

Существенный недостаток доморощенных технологий не только в сложном пути к познанию истины, но огра­ни­чен­ность кругозора. Каждому из нас хорошо известно, что в технике лучше пользваться не грубой силой, а спе­ци­аль­ным инструментом. Именно такой подход позволяет по­ни­мать все нюансы исследуемого процесса и вникать во все его тонкости. Вопрос прост: каким должен быть со­вре­мен­ный инструментарий компьютерщика и где его взять?

На первую часть вопроса следует заранее приготовленый упреждающий ответ: сегодня мы поговорим о Flash Images Tool — программном продукте для работы с образом, хранящимся во Flash ROM системной платы. Здесь и далее мы будем ользоваться следующими терминами:

  • Образ Flash ROM — бинарный файл, который может быть записан в или считан из  запоминающего устройства (сегодня это, как правило, микросхемы SPI) на борту персональной платформы. Его содержимое гарантирует полноценную работу компьютера, в первую очередь потому что в составе образа флешки имеется регион, где хранится BIOS системной платы. Подробное описание ркгионов Flash Image доступно в документе «System Tools User Guide for Intel® Management Engine Firmware 6.0».
  • Образ BIOS для микросхемы Flash ROM — бинарный код, входящий в состав образа Flash ROM. Будучи из него извлеченным, этот двоичный код может быть сохранен в файл, который следует называть файлом BIOS, с которым в свою очередь возможны манипуляции с помощью утилиты AMIBCP. Из этого следует, что утилита AMIBCP работу с образом флешки не поддерживает, а позволяет манипулировать только образом AMIBIOS, в чем можно убедиться прочитав статью «AMIBCP и современные версии AMIBIOS».

Теперь совершенно очевидно, что преимущество Flash Images Tool перед AMIBCP состоит в "умении" работать с образом флешки. Это — заслуга разработчика, компании Intel.

Запуск утилиты FTool

Рабочей директорией для утилиты Flash Images Tool, сокращенно и в дальнейшем — FTool, выберем каталог d:/amibcp. Запуская утилиту впервые без сопровождающего ее, как обычно, файла untitled.xml, пользователь предупреждается сообщением LoadXmlConfig: Fail to load the XML configuration file “untitled.xml”, а в протокол ftool.log вносится сообщение Loaded default configuration.

Ошибка, связанная с загрузкой XML-конфигурации утилиты Flash Images Tool

После установки конфигурационных параметров по умолчанию утилита готова к работе, и мы можем убедиться в этом, обратившись за справкой к опции About Flash Image Tool…

Flash Images Tool for Server Platform 1.1.0.4 based on Flash Image Tool 1.7.3.0

Прежде, чем приступать к редактированию образа BIOS для микросхемы Flash ROM, необходимо установить параметры окружения утилиты:

Окно установки параметров Environment Variables

Если требуется разместить результаты работы утилиты FTtool не в директории d:\amibcp\Build, следует откорректировать поле $DestDir в меню Environment Variables надлежащим образом.

Загрузка образа Flash Image

Следующим шагом на пути к достижению результата должна быть загрузка файла с исходным образом BIOS. В нашем случае — это файл amibios.rom, размером в четыре мегабайта.

Загрузка образа Flash Image

Попытка загрузить первый попавшийся файл (например, любимую мелодию в MP3-м формате) не увенчается успехом, потому что FTool анализирует структуру Flash-образа. В случае ошибки выполнение утилиты прекращается сообщением Unrecognized binary format!

Сообщение о неопознанном формате файла: Unrecognized binary format!

Успешная загрузка приводит к тому, что утилита FTool создает директорию amibios (с тем же именем, что и образ для чипа флеш-памяти) и помещает туда результаты его декомпозиции:

Flash-образ загружен и успешно распакован!

Содержимое amibios.rom в виде отдельных файлов с расширением *.bin, одноименных регионам, хранящимся во Flash Images, помещается в директорию Decomp, расположенную внутри директории amibios.

Итоги декомпозиции образа BIOS для Flash ROM можно посмотреть в файле amibios_MAP.txt:

Карта регионов и разделов Flash Image

Доступ к содержимому, т.е. ко всем регионам и партициям (разделам) файла amibios.rom, перечисленным в столбце Area Name, предоставляет интерфейс FTool. Нас для дальнейшей работы с кодом BIOS будет интересовать его распакованный образ, который доступен по адресу d:\amibcp\amibios\Decomp\ в виде файла BIOS Region.bin. Именно этот файл требуется утилите AMIBCP для модификации параметров CMOS Setup и управления некоторыми другими функциями BIOS.

P.S.

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

Сайт «Новые технологии»,
специально для Компостера.