Forth
http://fforum.winglion.ru/

BIOS для Форт-ОС
http://fforum.winglion.ru/viewtopic.php?f=16&t=2843
Страница 1 из 2

Автор:  WingLion [ Вс апр 22, 2012 05:14 ]
Заголовок сообщения:  BIOS для Форт-ОС

В связи с возникшей потребностью, собираю список действий, которые следует вынести в BIOS для встроенной Форт-системы.

\ на входе всех функций
\ - на вершине стека номер функции,
\ - на выходе результаты и флаги


\ function --> выходных параметров нет
1. Инициализация/сохранение/восстановление.
глобальное управление аппаратурой (конфигурациями ПЛИС).

\ function --> rezult|flag
2. Обработка клавиатуры

\ data,function --> rezult|flag
3. Операции с текстовым экраном

\ data,function --> rezult|flag
4. Операции с графическим экраном (если таковой есть)

\ data,function --> rezult|flag
6. Операции с инсталляцией/деинсталляцией драйверов

\ data,function --> rezult|flag
7. Операции с блоковыми устройствами ввода/вывода
( диски, RAM-диски, ROM-диски, и т.п.)

\ data,function --> rezult|flag
8. Операции с потоковыми устройствами ввода/вывода
( файлы, COM-порты, сокеты и т.п.)

\ data,function --> rezult|flag
9. Командный интерпретатор - BIOS-Forth
( возможно, INTERPRET/EVALUATE FORTH-SYSTEM)

\ data,function --> rezult|flag
10. Функции реального времени,
управление многоядерным процессором/ многозадачностью


Прошу давать предложения, какие функции стоит еще внести в BIOS?

Автор:  dynamic-wind [ Вс апр 22, 2012 09:44 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Время в микросекундах.

Автор:  WingLion [ Вс апр 22, 2012 09:59 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

dynamic-wind писал(а):
Время в микросекундах.


Согласен. функция Microtime нужна.
Хотя, скорее, это операция ввода из порта, которую одной командой можно сделать.
Но функции просто времени/даты заводить нужно. А при отсутствии реальных часов в системе каждый раз при запуске мучать пользователя вопросами "сколько времени?" и "какой сейчас день/месяц/год?"

Автор:  VoidVolker [ Вс апр 22, 2012 11:43 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Наверно будет оффтоп, но тем не менее, я бы предложил сделать так: биос должен предоставлять ФС универсальный механизм управления и взаимодействия с железом. Каждое устройство представляется парой, ну скажем "некоторых объектов"(представление этих объектов - вопрос уже другой) "управление" и "обратная связь". Вот например часы: управление - установка времени, обратная связь - текущее время. Аналогично и остальное: дисплей - установка и получение цвета, клавиатура - управление светодиодами капс/скрол/нам-лок и состояние клавиш, память - запись и чтение. И соответствующий инструмент для добавления новых устройств. Ведь устройства могут быть разными - и простое реле и нога робота. Т.е. сам биос непосредственно с оборудование не работает, он только лишь предоставляет ФС универсальный интерфейс управления оборудованием. Кстати, сюда же можно отнести и ассемблер процессора - ведь процессор тоже устройство. Собственно интерпретатор и будет интерфейсом между биос и ФС.

Автор:  Mihail [ Вс апр 22, 2012 12:18 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

WingLion писал(а):
В связи с возникшей потребностью, собираю список действий, которые следует вынести в BIOS для встроенной Форт-системы.

С чем связана потребность? Не вижу необходимости в составлении этого списка.
Реализуй пока то, что нужно тебе. Искать следует средства разработки и материал.
http://tracker.coreboot.org/trac/openfirmware/browser
Форт-системы в BIOS должна иметь возможность исполнять
форт программы расположенные на внешнем носителе.
Это даст возможность загрузить все что нужно по мере необходимости.

Автор:  WingLion [ Вс апр 22, 2012 13:18 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Mihail писал(а):
С чем связана потребность? Не вижу необходимости в составлении этого списка.


Какая интересная связь. "Не знаю, чего делаешь, но список дел составлять нет необходимости." :shock:

Mihail писал(а):
Форт-системы в BIOS

Речь вовсе не о форт-системе в BIOS, A o BIOS в Форт-системе.
А это разные вещи, не находите?

WingLion писал(а):
BIOS для встроенной Форт-системы.

Автор:  mOleg [ Вс апр 22, 2012 14:12 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Очень хочеся отправить в сторону OpenBoot, впрочем, вроде, в этом направлении "копал" Михаил.

Автор:  Гость [ Вс апр 22, 2012 14:26 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

В качестве ознакомления
Функции ядра в KolibriOS

Автор:  Hishnik [ Вс апр 22, 2012 14:29 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Вообще-то Форт может быть не только на персоналках, поэтому странно видеть отсылки к OpenBoot. К тому же тут не только стартовать надо, а еще и работать с оборудованием из встраиваемого форт-ядра.

Автор:  Hishnik [ Вс апр 22, 2012 14:30 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Гость писал(а):
В качестве ознакомления
Функции ядра в KolibriOS

Ух ты, сколько там лишнего.

Автор:  `Kopa [ Вс апр 22, 2012 14:40 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

Mihail писал(а):
Форт-системы в BIOS

Речь вовсе не о форт-системе в BIOS, A o BIOS в Форт-системе.
А это разные вещи, не находите?
[/quote]
Разница есть, но код BIOS, например работы с файловой системой будет на чём написан?
Поэтому Форт код для реализации BIOS можно брать из разных источников. (в том числе и OFW)
хотя может этот код уже будет в качестве расширения базиса BIOS.

P.S. Какое назначение целевого устройства? BIOS это должен учитывать.
Полезно в ядро BIOS ввести диспетчер задач.

Автор:  Hishnik [ Вс апр 22, 2012 14:42 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

`Kopa писал(а):
Полезно в ядро BIOS ввести диспетчер задач.

На ПЛИС это бесполезно. Точнее так - острота проблемы отнюдь не такая же, как на фиксированных архитектурах, и есть масса способов распределить ресурсы системы иначе.

Автор:  WingLion [ Вс апр 22, 2012 15:36 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

`Kopa писал(а):
Разница есть, но код BIOS, например работы с файловой системой будет на чём написан?


На Форте вестимо. На чем еще можно его писать для форт-процессора?

`Kopa писал(а):
Полезно в ядро BIOS ввести диспетчер задач.


А вот, это предложение в +
Хотя, надо, видимо, не диспетчер задач, а управляющий интерфейс многоядерного процессора, при условии, что "много" > 0.

`Kopa писал(а):
Какое назначение целевого устройства? BIOS это должен учитывать.


Назначение целевого устройства не должно иметь значение, потому что этим будет заниматься основная программа встроенной процессорной системы, но не BIOS. BIOS должен ей только помогать - короче "быть на подхвате" и обеспечивать интерфейс со "стандартным встроенным оборудованием".

Автор:  WingLion [ Вс апр 22, 2012 15:51 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

VoidVolker писал(а):
биос должен предоставлять ФС универсальный механизм управления и взаимодействия с железом. Каждое устройство представляется парой, ну скажем "некоторых объектов"(представление этих объектов - вопрос уже другой) "управление" и "обратная связь".


единственный "универсальный механизм", который я вижу в данном случае:
WingLion писал(а):
\ data,function --> rezult|flag
9. Командный интерпретатор - BIOS-Forth
( возможно, INTERPRET/EVALUATE FORTH-SYSTEM)


В частности, интерпретатор может не только компилировать "новые сущности", прицепляя их к BIOS-у и системе в целом, но и подключать их предкомпилированные образы (драйвера). Сам BIOS при этом оказывается Форт-ядром системы.

Автор:  VoidVolker [ Вс апр 22, 2012 16:42 ]
Заголовок сообщения:  Re: BIOS для Форт-ОС

WingLion писал(а):
единственный "универсальный механизм", который я вижу в данном случае:
WingLion писал(а):
\ data,function --> rezult|flag
9. Командный интерпретатор - BIOS-Forth
( возможно, INTERPRET/EVALUATE FORTH-SYSTEM)


В частности, интерпретатор может не только компилировать "новые сущности", прицепляя их к BIOS-у и системе в целом, но и подключать их предкомпилированные образы (драйвера). Сам BIOS при этом оказывается Форт-ядром системы.

Да, примерно так. Но не ядром, а интерфейсом между ядром ФС и аппаратурой. В биосе хранится лишь "микро-драйвер" устройств - программы доступа к базовым функциям устройств. Не более - незачем в БИОС лишнее, это не его область работы. А вот уже ядро ФС - это выполнение и управление программами(словарями, лексиконами, образами - кому что больше нравится), высокоуровневые драйверы устройств и управление ими. Вот к примеру у нас в девайсе есть некий универсальный разьем - в биос находится лишь его микро-драйвер, а в ФС уже драйвер для управления другими железками, которые будут к нему подключаться.

Страница 1 из 2 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/