Как установить устаревший загрузчик Das U-Boot на x86 IBM-PC?

Как установить устаревший загрузчик Das U-Boot на x86 IBM-PC?

Das U-Boot — этообазагрузчик первой и второй стадии, как FSBL в IBM-PC, он должен соответствовать первой446 байт(или меньше) до MBR в первом секторе.

Также имеется загрузчик 1.5 стадии, который использует код FSBL для чтения 31 744 байт с диска и перехода к нему (сектор с 1 по 62, поскольку первый раздел DOS-совместимости может начинаться с сектора 63). Я считаю, что это не случай U-Boot.

Я не ищу ни UEFI, ни kexec, и я бы предпочел, чтобы это не требовало coreboot или другого кода загрузчика, у меня естьчитатьэто возможно, но никто не объяснил, как именно.

Какую конфигурацию мне использовать? Chromebook Link или Edison? Будет ли он генерировать кусок размером 446 байт для помещения в MBR? Мне следует поместить что-то в сектор с 1 по 62? Я думаю, что это не поместится в стадию 1.5, как он должен найти остальное на диске?

решение1

Хотя U-Boot поддерживает x86аппаратное обеспечение, он не включает поддержку x86 BIOSпрошивка.

Таким образом, первым шагом в использовании U-Boot на устаревшем ПК x86 будет замена BIOS на собственную прошивку, включающую первый этап U-Boot.

После этого старые соглашения о загрузке BIOS, такие как загрузка 446-байтного загрузочного кода из блока № 0 первого жесткого диска, больше не будут применяться, и вместо них будут использоваться соглашения U-Boot.

Конечно, замена BIOS требует, чтобы ваша пользовательская прошивка сначала могла обрабатывать инициализацию чипсета вашей системы, а также тестирование и включение ОЗУ после холодного старта. На оборудовании ПК это может оказаться более сложной задачей, чем вы ожидали, поскольку документация по программированию чипсета может быть недоступна для всех чипсетов ПК.

U-Boot не является загрузчиком, совместимым с BIOS, и не является простой заменой BIOS; когда в его документации говорится, что он поддерживает x86, это означает лишь то, что U-Boot можно легко интегрировать с аппаратными проектами, использующими процессор x86 на пользовательском оборудовании.

Похоже, вы путаете терминологию, специфичную для GRUB Legacy (первый этап, второй этап, этап 1.5), с более общей терминологией проектирования систем для загрузчиков.

В смысле проектирования систем, на устаревшем ПК x86 с целью запуска Linux,BIOS-ыявляется загрузчиком первой ступени: он размещается в ПЗУ (или флэш-памяти EEPROM) и является первым действием, которое процессор выполнит после холодного сброса, и его задача заключается в инициализации необходимого оборудования и загрузке относительно компактной программы из фиксированного или иным образом четко определенного места.

В смысле проектирования систем весь GRUB будет загрузчиком второго этапа. GRUB Legacy также разделен на компоненты, которые называются «этапами», но это всего лишь внутренние подразделения GRUB, созданные для обхода ограничений устаревшего BIOS; этапы GRUB не совпадают с проектированием системзагрузчик первой/второй стадиитерминология.

Связанный контент