Михаил сделал очередной билд имплантирования Форт языка в ядро колибри.
в последнем сообщении топика по ссылке.
http://www.fforum.winglion.ru/viewtopic ... c&start=15
P.S. Какое мнение у колибристроителей?
Форт в ядре колибри.
Очередная новость по интеграции Форт языка и ядра колибри.
текст взят по ссылке http://wiki.forth.org.ru/ForthKolibri
P.S. Такие вот текущие возможности:).
текст взят по ссылке 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 опускает курсор по средствам прямого доступа к системной переменной
А почему не С? Не понимаю вообще идеи всего этого извращения. Или это пародия на (а может, просто своеобразная реализация) shell линуха?
По многим причинам, все сразу и не перечислить.Nable wrote:А почему не С? Не понимаю вообще идеи всего этого извращения. Или это пародия на (а может, просто своеобразная реализация) shell линуха?
Может упомянуть стандарт OpenBios от Sun/.
P.S. На почему не С можно возразить ( не упоминая Форт),
а почему например не Tcl:)
Есть? кто оценил идею данного "извращения" или все дружно считают,
что ассемблер - это всё:) ( сам несколько лет писал на ассемблере для embedded)
,
Достаточно было БЫ и однойKopa wrote:По многим причинам, все сразу и не перечислить
Если на уровне аргументов.
Без лозунгов (как бы "стандарт OpenBios от Sun" - странно слышать на форуме про Kolibri)
Наблюдение: последние употребляются тем чаще, чем менее есть что сказать по делу
По делу:Galkov wrote:]По многим причинам, все сразу и не перечислить
Наблюдение: последние употребляются тем чаще, чем менее есть что сказать по делу
Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает. ( как другие не знаю).
P.S. Проект колибри, для меня, интересен пока только исследовательской
направленностью:) и захожу на данный форум редко.
Last edited by Kopa on Fri Jan 16, 2009 1:33 pm, edited 1 time in total.
"Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!
Устраивает возможность низкоуровнего доступа с помощью форта к функциональности ядра.Gluk wrote:"Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?
Hапример, при создании micro-GUI оконного интерфейса средствами Форт языка.
Можно написать программу на Форте. Можно, в конце концов, драйвер. Но зачем встраивать Форт в ядро?
Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.
Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.
Одна из причин, для лёгкой отладки функциональности ядра используя Фортtsdima wrote:Можно написать программу на Форте. Можно, в конце концов, драйвер. Но зачем встраивать Форт в ядро?
без необходимости перекомпиляции ядра.
В ядре можно предусмотреть резервирование векторов функций с перегрузкой их функциональности
при работе с той или иной периферией из Форт скрипта. Пользователь
сам может определится какая функциональность ему нужна ( какие
диспетчеры и какие модули ). Хороший пример этому стартовый
экран Колибри.
Но Форт в ядре - это конечно довольно рисковано. Может лучше иметь возможность выборочно использовать эту опцию при необходимости.
P.S. Для тех кто в танке:) и не представляет возможностей Форт языка,
предложение ознакомится с его построением.
Возможно тогда часть вопросов прояснится самостоятельно.
Мihail это затеял, чтобы продвинуться в создании оси на базе Форт подхода.
Last edited by Kopa on Fri Jan 16, 2009 2:59 pm, edited 2 times in total.
Сначало один драйвер, потом второй потом придумываем стандарт на всёtsdima wrote: Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.
это и в результате система изначально построенная на простом дизайне
превращается в "курицу".
P.S. А если вообще не нужна файловая система на диске, тогда как?
ось_на_базе_Форт Kolibri <> .Kopa wrote:Мihail это затеял, чтобы продвинуться в создании оси на базе Форт подхода.
-1
Бред, много пользователей удивляются почему win приложения не запускаются, а ты предлагаеш ещё и функциональность им самим выбиратьПользователь
сам может определится какая функциональность ему нужна ( какие
диспетчеры и какие модули ).
Бред, Колибри система общего назначения с монолитным ядром, нужна функциональность на выбор - это к L4.P.S. А если вообще не нужна файловая система на диске, тогда как?
- бля, это как? ну хоть примерно? очень интересует этот вопрос.Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
Вообще ссылки на пример использования Форта, среды разработки, etc в студию!
Возможно и бред, но пользователей имеющих возможность гибкоGhost wrote:Бред, Колибри система общего назначения с монолитным ядром, нужна функциональность на выбор - это к L4.!
настроить систему под свои потребности можно тоже поддержать.
Возможно приведение примера программы nncron что нибудь прояснит?Ghost wrote:- бля, это как? ну хоть примерно? очень интересует этот вопрос.Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
Вообще ссылки на пример использования Форта, среды разработки, etc в студию!
P.S. Последний вопрос обозначен сильно неопределённо, просьба не ругаться,
а спрашивать более корректно.
Что здесь неопределенного? Меня поражает идея реализовать это, но я мало могу себе представить например отладку планировщика на ходу. Да такие вещи делаются например софтайсом, но там отладчик фактически берет всё управление железом на себя, и по суте является мини ОС. Очень интересует вопрос как с этим может справится форт как язык программирования.Одна из причин, для лёгкой отладки функциональности ядра используя Форт без необходимости перекомпиляции ядра.
Практически все матерьялы и ресурсы по форту на меня наводят ужас своим любительски-колхозным видом, и представлением информации.
Итак, так как большинство людей на форуме мало представляют себе что такое форт и с чем его едят (кстати как я понял сред нормальных под него нет) то резонно поставить несколько вопросов к автору:
- качественные примеры использования Форт, где он дает преимущества (ИМХО с задачами nncron LUA бы лучше справился)
- что позволяет делать ForthKolibri, примеры, скриншоты (заинтересуй людей, что бы им захотелось попробывать)
- ну и как отлаживать ядро?
P.S. Разговор переходит в холивар, поэтому давайте по существу вопроса отвечать.
Who is online
Users browsing this forum: No registered users and 26 guests