Разработка BIOS на языках высокого уровня
Apr. 11th, 2023 12:01 pmПродолжаю свои ковыряния с BIOS. Пришла пора отказаться от прекрасного ассемблера и переключиться на замечательный си.

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

Много лет хочу раскурить, как писать на си под голое железо. Как сделать так, чтобы программа, написанная на языках высокого уровня стартанула без операционной системы. На редкость это непростая задача. Путь изучения всех нюансов изложил в статье:
Разработка BIOS на языках высокого уровня.
Буду рад вашим комментариям по теме.
no subject
Date: 2023-04-11 10:37 am (UTC)Оригинальная идея. Хабр аж не выдержал и свалился по 504. :)
Напомнило, как в 90-х писал резиденты с перехватом программных прерываний на Turbo Pascal под DOS. Но тут, конечно, намного сложнее.
Что касается статьи — интересно, эмуляторы вообще как-то эмулируют ПЗУ? Как, скажем, область памяти, которую заполняют при "включении" виртуальной машины и куда не дают ничего писать.
no subject
Date: 2023-04-11 11:07 am (UTC)Ну то что я ковырял, да. Туда ничего нельзя записать.
no subject
Date: 2023-04-11 11:24 am (UTC)Как вчера всё помню
no subject
Date: 2023-04-13 12:37 am (UTC)Когда-то делал близкое на паскале и ассемблере. Запускалось из BIOS (свой загрузчик вместо ОС и работало с железом). Сегменты (хотя ну какие они под DOS сегменты) данных и программы различались, так что теоретически могло работать и без BIOS, но там всё ж было довольно много ассемблерного кода для замены кусков ОС — как минимум помню про перехват прерываний.
Но программатора не было.