Я заинтересован в разработке небольшой операционной системы размером 2-3 МБ и установке ее в BIOS. Я хочу разработать очень быструю текстовую операционную систему. Подскажите пожалуйста, как протолкнуть мою программу в BIOS?

3 ответа3

5

Операционные системы не живут в BIOS, поскольку они, как правило, слишком велики, чтобы поместиться на чипе. 2-3 МБ это слишком много. Они живут на жестких дисках, дискетах, компакт-дисках и т.д. Каждый из этих дисков имеет то, что называется Master Boot Record. Это первые 512 байт накопителя. Здесь вы размещаете код сборки, который затем загружает все оставшиеся данные, необходимые для загрузки операционной системы. Поскольку большинство современных загрузчиков имеют размер более 512 байт, их обычно достаточно в этой области, чтобы найти остальную часть загрузчика на жестком диске, загрузить его в память и продолжить процесс загрузки.

2

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

Если вы все еще серьезно задумываетесь о программировании BIOS, возможно, вы захотите приобрести эмулятор eeprom.

2

Если я правильно понимаю, вас может заинтересовать coreboot. Это проект, направленный на замену BIOS и загрузку "полезных нагрузок", которые могут включать небольшие операционные системы или загрузчики, которые фактически хранятся в микросхеме ПЗУ. Гипотетически, вы можете создать свою собственную полезную нагрузку для использования с coreboot, но я не совсем уверен, как это будет сделано.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .