Page 1 of 4
Форт в ядре колибри.
Posted: Wed Jul 30, 2008 12:02 pm
by Kopa
Михаил сделал очередной билд имплантирования Форт языка в ядро колибри.
в последнем сообщении топика по ссылке.
http://www.fforum.winglion.ru/viewtopic ... c&start=15
P.S. Какое мнение у колибристроителей?
Re: Форт в ядре колибри.
Posted: Mon Jan 12, 2009 4:22 pm
by Kopa
Очередная новость по интеграции Форт языка и ядра колибри.
текст взят по ссылке
http://wiki.forth.org.ru/ForthKolibri
Code: Select all
Вообще Форт должен быть в каждой операционной системе.
ОС с добавлением Форта в ядро сохраняет все возможности,
но при этом приобретает новое качества.
Во первых, Форт можно использовать при инициализации ОС
с догрузкой дополнительных компонентов системы представленных
в виде исходных текстов Форта.
Во вторых, Форт в ядре может быть доступен из приложений системы.
Ядро системы волне можно открыть для чтения (передачи управления).
Если все подпрограммы системы представить в виде словарных статей,
вся система становится форт-системой.
Колибри была выбрана из-за хорошего соотношения возможностей
к объему исходных текстов и хорошей динамикой развития.
Вообще, начинать следует с небольших ОС.
Последняя версия http://depositfiles.com/files/5xrfv2vit
Система состоит из трех частей.
1. Начальная загружаемая часть Колибри необходимая для поддержания Форта.
(просто закомментировал часть исходников Колибри)
2. Форт-система входящая в состав первичного ядра. (1 пункт)
3. Остаток Колибри догружаемый форт-системой.(то что было закомментировано)
итого форт в ядре. Есть терминал к ядру.
cc.bat - запуск системы с помощью qemu в bin\kolibrid.img
с предварительной подготовкой.
bin\kolibrid.img - образ загрузочной дискеты
Подготовка это сборка системы и запись файлов в kolibrid.img
Сборка производится по средствам следующих файлов:
bld.bat - создает bin\kkernel.mnt (часть Колибри без Форта)
с помощью FFASM.EXE.
FFASM.EXE - FASM с встроенной форт-системой,
которая выполняет файл FSCRIPT.F .
В данном случае FSCRIPT.F содержит программу генерации листинга MAP.F.
comp.bat - добавление форт-системы к kkernel.mnt и получение kernel.mnt
kernel.mnt - неполное ядро КолибриОС, но содержит форт-систему с
помощью форт-системы можно загрузить оставшуюся часть Колибри
представленную в форт исходниках.
Специфика работы системы
Система в процессе инициализации передает управление файлу autoexec.f.
Там производится дозагрузка системы.
В sys\DRIVERS\aperture.f
пример добавление новой системной функции с номером 75.
75-я функция просто передает управление по адресу содержащемуся в регистре EBX.
В INIT.F который запускается meforth демонстрируется использование этой дырки
в систему. Команда TOROOT открывает доступ к адресному пространству ядра ОС.
Функция YY опускает курсор по средствам прямого доступа к системной переменной
P.S. Такие вот текущие возможности:).
Re: Форт в ядре колибри.
Posted: Tue Jan 13, 2009 8:07 pm
by Nable
А почему не С? Не понимаю вообще идеи всего этого извращения. Или это пародия на (а может, просто своеобразная реализация) shell линуха?
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 7:59 am
by Kopa
Nable wrote:А почему не С? Не понимаю вообще идеи всего этого извращения. Или это пародия на (а может, просто своеобразная реализация) shell линуха?
По многим причинам, все сразу и не перечислить.
Может упомянуть стандарт OpenBios от Sun/.
P.S. На почему не С можно возразить ( не упоминая Форт),
а почему например не Tcl:)
Есть? кто оценил идею данного "извращения" или все дружно считают,
что ассемблер - это всё:) ( сам несколько лет писал на ассемблере для embedded)
,
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 9:01 am
by Galkov
Kopa wrote:По многим причинам, все сразу и не перечислить
Достаточно было БЫ и одной
Если на уровне
аргументов.
Без лозунгов (как бы "стандарт OpenBios от Sun" - странно слышать на форуме про Kolibri)
Наблюдение: последние употребляются тем чаще, чем менее есть что сказать по делу
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 9:40 am
by Kopa
Galkov wrote:]По многим причинам, все сразу и не перечислить
Наблюдение: последние употребляются тем чаще, чем менее есть что сказать по делу
По делу:
Как
потенциальный разработчик программ для Колибри
мне озвученное решение устраивает. ( как другие не знаю).
P.S. Проект колибри, для меня, интересен пока только исследовательской
направленностью:) и захожу на данный форум редко.
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 12:04 pm
by Gluk
"Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 1:32 pm
by Kopa
Gluk wrote:"Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?
Устраивает возможность низкоуровнего доступа с помощью форта к функциональности ядра.
Hапример, при создании micro-GUI оконного интерфейса средствами Форт языка.
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 1:57 pm
by tsdima
Можно написать программу на Форте. Можно, в конце концов, драйвер. Но зачем встраивать Форт в ядро?
Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 2:46 pm
by Kopa
tsdima wrote:Можно написать программу на Форте. Можно, в конце концов, драйвер. Но зачем встраивать Форт в ядро?
Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
В ядре можно предусмотреть резервирование векторов функций с перегрузкой их функциональности
при работе с той или иной периферией из Форт скрипта. Пользователь
сам может определится какая функциональность ему нужна ( какие
диспетчеры и какие модули ). Хороший пример этому стартовый
экран Колибри.
Но Форт в ядре - это конечно довольно рисковано. Может лучше иметь возможность выборочно использовать эту опцию при необходимости.
P.S. Для тех кто в танке:) и не представляет возможностей Форт языка,
предложение ознакомится с его построением.
Возможно тогда часть вопросов прояснится самостоятельно.
Мihail это затеял, чтобы продвинуться в создании оси на базе Форт подхода.
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 2:52 pm
by Kopa
tsdima wrote:
Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.
Сначало один драйвер, потом второй потом придумываем стандарт на всё
это и в результате система изначально построенная на простом дизайне
превращается в "курицу".
P.S. А если вообще не нужна файловая система на диске, тогда как?
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 3:37 pm
by tsdima
Kopa wrote:Мihail это затеял, чтобы продвинуться в создании оси на базе Форт подхода.
ось_на_базе_Форт Kolibri <> .
-1
Re: Форт в ядре колибри.
Posted: Fri Jan 16, 2009 6:26 pm
by Ghost
Пользователь
сам может определится какая функциональность ему нужна ( какие
диспетчеры и какие модули ).
Бред, много пользователей удивляются почему win приложения не запускаются, а ты предлагаеш ещё и функциональность им самим выбирать
P.S. А если вообще не нужна файловая система на диске, тогда как?
Бред, Колибри система общего назначения с монолитным ядром, нужна функциональность на выбор - это к L4.
Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
- бля, это как? ну хоть примерно? очень интересует этот вопрос.
Вообще ссылки на пример использования Форта, среды разработки, etc в студию!
Re: Форт в ядре колибри.
Posted: Mon Jan 19, 2009 8:45 am
by Kopa
Ghost wrote:Бред, Колибри система общего назначения с монолитным ядром, нужна функциональность на выбор - это к L4.!
Возможно и бред, но пользователей имеющих возможность гибко
настроить систему под свои потребности можно тоже поддержать.
Ghost wrote:
Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
- бля, это как? ну хоть примерно? очень интересует этот вопрос.
Вообще ссылки на пример использования Форта, среды разработки, etc в студию!
Возможно приведение примера программы
nncron что нибудь прояснит?
P.S. Последний вопрос обозначен сильно неопределённо, просьба не ругаться,
а спрашивать более корректно.
Re: Форт в ядре колибри.
Posted: Mon Jan 19, 2009 11:25 am
by Ghost
Одна из причин, для лёгкой отладки функциональности ядра используя Форт без необходимости перекомпиляции ядра.
Что здесь неопределенного? Меня поражает идея реализовать это, но я мало могу себе представить например отладку планировщика на ходу. Да такие вещи делаются например софтайсом, но там отладчик фактически берет всё управление железом на себя, и по суте является мини ОС. Очень интересует вопрос как с этим может справится форт как язык программирования.
Практически все матерьялы и ресурсы по форту на меня наводят ужас своим любительски-колхозным видом, и представлением информации.
Итак, так как большинство людей на форуме мало представляют себе что такое форт и с чем его едят (кстати как я понял сред нормальных под него нет) то резонно поставить несколько вопросов к автору:
- качественные примеры использования Форт, где он дает преимущества (ИМХО с задачами nncron LUA бы лучше справился)
- что позволяет делать ForthKolibri, примеры, скриншоты (заинтересуй людей, что бы им захотелось попробывать)
- ну и как отлаживать ядро?
P.S. Разговор переходит в холивар, поэтому давайте по существу вопроса отвечать.