Выпущен опенсорс BIOS для Intel 8088

cnews.ru — Инженер Intel Сергей Киселёв потратил 10 лет на разработку BIOS с открытым кодом для Intel 8088 (процессор 1979 г.). Исходный код прошивки написан на языке ассемблера и распространяется на условиях свободной лицензии GPL v3 и опубликован на платформе GitHub.
Новости, Технологии | Dliv227 22:51 24.10.2023
2 комментария | 79 за, 0 против |
pks_ru
шутник »
#1 | 06:31 25.10.2023 | Кому: Olen6
> Хотя, позволит максимально полно использовать возможности процессора.

А что раньше мешало? Не используй биосовские функции, вектора его прерываний засоли на время выполнения. На уровне 8088 такое вполне работает. Реальный режим, доступ по всей поляне, подлинная свобода отношений!!!
Современный биос из такого не вырастишь. Т.е. просто писать заново надо будет. Но как теоретическая работа - весьма интересно, конечно.
pks_ru
шутник »
#2 | 10:01 26.10.2023 | Кому: Olen6
> > > Хотя, позволит максимально полно использовать возможности процессора.
> >
> > А что раньше мешало? Не используй биосовские функции, вектора его прерываний засоли на время выполнения.
>
> -Я конечно не сварщик первого разряда, но в свое время узнать систему команд процессора дорогого стоило. Да и то сомневаюсь, что она была полной. Ходили мутные слухи о "секретных командах" производителя.

Которые нельзя было выяснить дизассемблированием биоса штатного? Мы про BIOS говорим. Там уже много лет все разобрано на атомы.

> -Если ты отключишь прерывания, как же тогда с "многозадачностью"?


На 8088 - своими силами. Внутри своей вычислительной задачи.

> Так кто посчитать 2+2 конечно пойдет, а например, в случае расчета счисления пути для какой-нибудь ракеты, спутника, самолета, корабля? А как обработаешь деление на ноль в случае отказа датчика? Что там с реальным временем? Не просто так же физически таймер прерываний поставили.


Отключаешь биосовские вектора и ставишь свои. На то, что нужно. А на то, что не нужно - не ставишь. Какие-то вызываешь опосля себя если надо. И на таймер, и на внешние прерывания и на все что надо. А уж отследить ноль при отказе датчика без участия BIOS решительно невозможно, да. При выходе из задачи культурно ставишь вектора взад.
Таймер прерываний или прерывание таймера (IRQ0)? Так оно не настолько точное, емнип. А так, ставишь свой обработчик таймера, вместо BIOSовского. Даже самые простые игрули обычно это делали.
Войдите или зарегистрируйтесь чтобы писать комментарии.