Интересует как тестируют bios после его написания. Имею ввиду может есть что то наподобии эмуляторов материнских плат. Или же все это тестируется сразу же на реальных материнках.
На скорую руку не получится - описание чипсета содержит 800 страниц текста. Этот текст нужно сначала прочитать, потом написать и отладить DLL, в которой будет реализована модель этого чипсета.
Попутно вопрос: а как в таких случаях Вы поступаете с недокументированными memory-mapped регистрами чипсета? Ведь по сути - все 800 страниц описания - это не более, чем одна треть реальной документации.
Попутно вопрос: а как в таких случаях Вы поступаете с недокументированными memory-mapped регистрами чипсета? Ведь по сути - все 800 страниц описания - это не более, чем одна треть реальной документации.
Вы затронули грустную, но пока еще решаемую проблему.
Да, документация не полная. Но и сама задача эмуляции железа в нашей постановке не требует эмуляции всех его функциональных возможностей.
Например, если биос не использует какие-то регистры чипсета, то можно их и не эмулировать. Если же эти регистры используются, но не описаны в документации, то частенько можно догадаться об их "правильном" поведении (код биоса подскажет). В крайнем случае, можно пропатчить биос и "перепрыгнуть" через использование недокументированных возможностей.
Наш эмулятор - это средство для динамического анализа уже написанного кода BIOS. Другие применения эмулятора (патчи, добавление собственных модулей) тоже возможны, но не являются главными.
Текущее состояние по чипсету i945 одной строкой описано на сайте.
Если интересно, могу рассказать немного подробнее.
На сегодняшний день работа шибко интересовавшего нас биоса эмулируется вплоть до предпоследнего POST 95h (включая SETUP). С последним POST 96h эмулятор пока не справляется. Но и в таком виде он уже позволил решить стоявшую задачу по встраиванию и автоматическому запуску собственного модуля. Сам биос был исследован на предмет вычисления контрольных сумм и требований к "оформлению" собственного модуля, что попутно привело к созданию (точнее, к доработке написанной в 2002 году) инструментальной программы - функционального аналога CBROM+AwdBEdit.
Начнем, пожалуй! Нам Вашего времени не жалко. А когда будет готово, можно сообщить: "Спасибо, уже не нужно".
:)
Открытая книга: icbook.com.ua
Закроем
Хорошоб сделать возможность изменения значений регистров проца при отладке.
Закроем
До возможного закрытия темы хочу задать один вопрос.
Почему Вами был проявлен повышенный интерес к биосу именно этого компьютера?
Добавлено спустя 3 минуты 10 секунд:
Постараемся учесть в последующих версиях.
Попутно вопрос: а как в таких случаях Вы поступаете с недокументированными memory-mapped регистрами чипсета? Ведь по сути - все 800 страниц описания - это не более, чем одна треть реальной документации.
Открытая книга: icbook.com.ua
Вы затронули грустную, но пока еще решаемую проблему.
Да, документация не полная. Но и сама задача эмуляции железа в нашей постановке не требует эмуляции всех его функциональных возможностей.
Например, если биос не использует какие-то регистры чипсета, то можно их и не эмулировать. Если же эти регистры используются, но не описаны в документации, то частенько можно догадаться об их "правильном" поведении (код биоса подскажет). В крайнем случае, можно пропатчить биос и "перепрыгнуть" через использование недокументированных возможностей.
Наш эмулятор - это средство для динамического анализа уже написанного кода BIOS. Другие применения эмулятора (патчи, добавление собственных модулей) тоже возможны, но не являются главными.
А вот эмуляцией полной модели пусть занимаются сами создатели. Что они с успехом и делают:
download.intel.com/technology/itj/q41999/pdf/softSDV.pdf
У них - "Presilicon", у нас - "POSTsilicon"
Хотелось отучить от запроса "пароля".
:)
Открытая книга: icbook.com.ua
не все так просто
To Strelets
Поделитесь, на какой стадии 945 чипсет?
-=Кто сказал что бесполезно биться головой об стену...=- (НП)
Пх’нглуи мглв’нафх Ктулху Р’льех вгах’нагл фхтагн
Хочешь сделать хорошо - сделай это сам
Текущее состояние по чипсету i945 одной строкой описано на сайте.
Если интересно, могу рассказать немного подробнее.
На сегодняшний день работа шибко интересовавшего нас биоса эмулируется вплоть до предпоследнего POST 95h (включая SETUP). С последним POST 96h эмулятор пока не справляется. Но и в таком виде он уже позволил решить стоявшую задачу по встраиванию и автоматическому запуску собственного модуля. Сам биос был исследован на предмет вычисления контрольных сумм и требований к "оформлению" собственного модуля, что попутно привело к созданию (точнее, к доработке написанной в 2002 году) инструментальной программы - функционального аналога CBROM+AwdBEdit.
Вот такие новости с фронтов.
Отправить комментарий