Как стать автором
Обновить

Комментарии 20

Отличная статья, жанр ассемблерный детектив
История повторяется «благими намерениями intel и и же с ним на тему UEFI» вымощена в дрога в пользовательский ад.
Так и не ясно что такого надо пихать в эту UEFI что не может сделать ядро операционной системы.
Низкоуровневую инициализацию оно не может, ровно потому, что ядро одно на всех, а инициализация отличается от платы к плате даже внутри одной линейки.
Я рад, что BIOS заменили на UEFI, ибо если его правильно готовить (выкинуть все лишнее, не увлекаться слишком новыми фичами и не добавлять ненужных искусственных ограничений, вроде описанного в статье) — сложность написания кода прошивки снижается на порядок, как и сложность доработки уже существующего. А вот пихать туда все больше хлама — это действительно не очень правильно, но маркетологов уже не остановить.
AMI уже добавляет поддержку OpenGL в Setup screen, дуалбут во встроенный Android, браузер и прочее такое. HP зачем-то ринулись писать «защиты», и сейчас последние версии проверяют DXE из PEI, а потом еще PEI из DXE (смогу открутить эту новую защиту — напишу продолжение к этой статье), оборудование проверяется по белым спискам, а прошить что-то чужое без программатора стало не то, чтобы невозможно, но очень трудно.
Если как вы говорите «все лишнее выкинуть из UEFI» то получит uboot. И ой! Оказывается что uboot умеет делать все тоже самое и на куче платформ.
Поддерживая UEFI это хороший корм для вещей типа разрешается использовать только «сертифицированного» оборудование. А по сути не сертифицированное, а тот кто больше проплатил.
А можно вопрос зачем OpenGL в Setup-е?
А вы пробовали Uboot'ом проинициализировать хоть что-то более или менее сложное, да тот же контролер DRAM в AMD APU? Я вот пробовал и могу сказать — пусть хоть UEFI, хоть coreboot, хоть FSP, хоть черт лысый, лишь бы поддержка от производителя CPU была и возможность реализовать свою инициализацию без слишком уж сильного колдунства. А Legacy BIOS за 30+ лет его использования оброс таким количеством костылей и подпорок, что UEFI по сравнению с ним — верх логики, архитектуры и продуманности.
Про сертификацию и прочее — все вопросы к вендорам. Думаете, вам в Uboot или coreboot белый список WiFi-карт не добавят и загрузчик своим ключем не подпишут? Еще как добавят и подпишут, только выковыривать будет гораздо сложнее и одной IDA Demo уже не обойдешься. Все эти защиты и списки — желание вендрора, а не свойство UEFI, и я своими руками пишу UEFI-совместимые прошивки, в которых не только нет защиты от модификации, но и можно при помощи штатных утилит добавить свои DXE-драйверы, загрузчики и приложения в прошивку — было бы желание. А у «закрывальщиков» советую просто ничего не покупать.
Про OpenGL, графику и прочий модный Setup — это продает. Вследствие интеграции всего подряд под крышку процессора платы разных линеек и даже разных вендоров практически перестали отличаться, и поэтому отдел маркетинга лезет из кожи вон, чтобы выделить свои платы из череды таких же. Отсюда и серо-буро-малиновые текстолиты, и системы водяного охлаждения на чипах, которые без радиатора кое-как греются до 60 градусов, и карта звездного неба на фоне Setup, и прочий дуалбут в Android. Это все кошмар-кошмар, конечно, и лучше бы баги правили, но в сегменте «для хомяков» надежность и предсказуемость уже не продает, а вот красивая картинка — еще как. Альтернатива — производители для Embedded и Industrial, с другими подходами, целями и ценами. Вот там как был текстовый Setup, так и есть, только поддержку тач-скринов добавили, а то не у всех систем клавиатуры есть.
Альтернатива — производители для Embedded и Industrial, с другими подходами, целями и ценами. Вот там как был текстовый Setup, так и есть, только поддержку тач-скринов добавили, а то не у всех систем клавиатуры есть.

Dell с Lenovo пока держатся, а с тайваньцами всегда так было. Даже Intel в последние годы сделал убогий Visual BIOS, прошивка которого на DH61CR требовала перепрошивки через рекавери.
Блин не поверите да инициализировал DDR2 контроллер в чем проблема? Через командную строку получал новые параметры и устанавливал их. Так через это несчастный uboot сохранял новые настройки в spi eerom.
Сейчас пишу модуль для ядра что бы можно было рулить тайминагми оперативки, т.к. «вендоры» просто уроды. Официально объявляют частоту CPU 700 Мгц, режут на 560 МГц. Ставят чип на 166, а тактируют его 100 МГц. И для все этого не нужен огород, а нужны просто нормальные спеки.
А про закрытые uboot есть очень хороший пример. Есть не безизвестная контора Huawei с домашней железякой WS880. Все там хорошо и железо гуд и цена. Вот правда решили они поиграться с DRM в uboot и как следствие ни кому эта железяка не нужна да и цен из-за этого поднять не могут. А вот конкуренты аналоги без бреда в виде «защиты от самого себя» успешно продают тоже железо почти в 2 раза дороже.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Жаль их больше не будет, остаются брендовые компьютеры с сборе и платы для рабочих станци от SMC.
Сейчас смотрю на AMIшный APTIO на asrock-овской плате и фигею: фон — меремигивающееся звездное небо. Из биоса можно запустить easy driver install, обновить биос по интернету, тутже написать о проблеме асроковцам, причем приложить файло с любого диска.
А нафига opengl? Да чтобы это чертова картинка не тормозила(а сейчас она реально тормозит, мышка рывками двигается). А нафига картинка? А чтобы приблизиться к суперэффектам в биосе, оно так лучше продаваться будет.
Спасибо огромное, буду пробовать. GUI не хватает, но это печеньки темной стороны, и с ними надо бороться.
НЛО прилетело и опубликовало эту надпись здесь
Не знаю, работают ли скрипты в IDA demo, а основную покупать адски дорого, если рассматривать это все как хобби. Буду изучать radare2, когда время появится. Псто ждем с нетерпением, у меня тут тоже назревает продолжение про те же яйца, только в другой руке и на более новых ноутбуках HP.

НЛО прилетело и опубликовало эту надпись здесь
Hopper пробовал, но он показался примитивным совсем, даже с учетом встроенного генератора псевдокода и цены в 70 долларов. Можно написать и про него, на самом деле, материала хватает.
Дождались. Отличный пост, отличное дополнение к CHIPSEC, прогоню у себя обязательно.
Напиши что-нибудь на Хабр, d_olex, да хоть перевод этого же поста на русский, дабы тебе можно было поставить плюс в карму.
НЛО прилетело и опубликовало эту надпись здесь
Ну не буду же я писать, что мой софт лучше, чем у Тедди или Энди. :) Да и багов море в любом софте такого рода, т.к. большая часть вендоров спецификацию в глаза не видели и на соответствие ей свои образы не проверяют, поэтому что-то хорошо работает в одной программе, что-то другое — в другой., так и живем.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации