Board.KolibriOS.org

Official KolibriOS board
It is currently Wed Jun 19, 2019 7:00 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 52 posts ]  Go to page 1 2 3 4 Next
Author Message
PostPosted: Wed Jul 30, 2008 12:02 pm 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
Михаил сделал очередной билд имплантирования Форт языка в ядро колибри.
в последнем сообщении топика по ссылке.
http://www.fforum.winglion.ru/viewtopic ... c&start=15



P.S. Какое мнение у колибристроителей?


Top
   
PostPosted: Mon Jan 12, 2009 4:22 pm 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
Очередная новость по интеграции Форт языка и ядра колибри.

текст взят по ссылке http://wiki.forth.org.ru/ForthKolibri

Code:
Вообще Форт должен быть в каждой операционной системе. 
ОС с добавлением Форта в ядро сохраняет все возможности,
но при этом приобретает новое качества.

 Во первых, Форт можно использовать при инициализации ОС
с догрузкой дополнительных компонентов системы представленных
в виде исходных текстов Форта.

 Во вторых, Форт в ядре может быть доступен из приложений системы.

Ядро системы волне можно открыть для чтения (передачи управления).
Если все подпрограммы системы представить в виде словарных статей,
вся система становится форт-системой.

Колибри была выбрана из-за хорошего соотношения возможностей
к объему исходных текстов и хорошей динамикой развития.
Вообще, начинать следует с небольших ОС.

Последняя версия 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. Такие вот текущие возможности:).


Top
   
PostPosted: Tue Jan 13, 2009 8:07 pm 
Offline
Just Flooding

Joined: Sat Jan 06, 2007 2:30 pm
Posts: 269
А почему не С? Не понимаю вообще идеи всего этого извращения. Или это пародия на (а может, просто своеобразная реализация) shell линуха?


Top
   
PostPosted: Fri Jan 16, 2009 7:59 am 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
Nable wrote:
А почему не С? Не понимаю вообще идеи всего этого извращения. Или это пародия на (а может, просто своеобразная реализация) shell линуха?


По многим причинам, все сразу и не перечислить.
Может упомянуть стандарт OpenBios от Sun/.

P.S. На почему не С можно возразить ( не упоминая Форт),
а почему например не Tcl:)
Есть? кто оценил идею данного "извращения" или все дружно считают,
что ассемблер - это всё:) ( сам несколько лет писал на ассемблере для embedded)
,


Top
   
PostPosted: Fri Jan 16, 2009 9:01 am 
Offline

Joined: Fri Nov 21, 2008 8:16 am
Posts: 180
Kopa wrote:
По многим причинам, все сразу и не перечислить

Достаточно было БЫ и одной :wink:
Если на уровне аргументов.
Без лозунгов (как бы "стандарт OpenBios от Sun" - странно слышать на форуме про Kolibri)

Наблюдение: последние употребляются тем чаще, чем менее есть что сказать по делу


Top
   
PostPosted: Fri Jan 16, 2009 9:40 am 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
Galkov wrote:
]По многим причинам, все сразу и не перечислить
Наблюдение: последние употребляются тем чаще, чем менее есть что сказать по делу


По делу:
Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает. ( как другие не знаю).

P.S. Проект колибри, для меня, интересен пока только исследовательской
направленностью:) и захожу на данный форум редко.


Last edited by Kopa on Fri Jan 16, 2009 1:33 pm, edited 1 time in total.

Top
   
PostPosted: Fri Jan 16, 2009 12:04 pm 
Offline
User avatar

Joined: Mon Apr 16, 2007 6:38 pm
Posts: 1222
"Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?

_________________
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!


Top
   
PostPosted: Fri Jan 16, 2009 1:32 pm 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
Gluk wrote:
"Как потенциальный разработчик программ для Колибри
мне озвученное решение устраивает."
- Что тебе устраивает решение?
- Решение - потенциальный разработчик?


Устраивает возможность низкоуровнего доступа с помощью форта к функциональности ядра.
Hапример, при создании micro-GUI оконного интерфейса средствами Форт языка.


Top
   
PostPosted: Fri Jan 16, 2009 1:57 pm 
Offline

Joined: Wed Mar 26, 2008 12:44 pm
Posts: 225
Можно написать программу на Форте. Можно, в конце концов, драйвер. Но зачем встраивать Форт в ядро?
Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.


Top
   
PostPosted: Fri Jan 16, 2009 2:46 pm 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
tsdima wrote:
Можно написать программу на Форте. Можно, в конце концов, драйвер. Но зачем встраивать Форт в ядро?

Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.

В ядре можно предусмотреть резервирование векторов функций с перегрузкой их функциональности
при работе с той или иной периферией из Форт скрипта. Пользователь
сам может определится какая функциональность ему нужна ( какие
диспетчеры и какие модули ). Хороший пример этому стартовый
экран Колибри.
Но Форт в ядре - это конечно довольно рисковано. Может лучше иметь возможность выборочно использовать эту опцию при необходимости.


P.S. Для тех кто в танке:) и не представляет возможностей Форт языка,
предложение ознакомится с его построением.
Возможно тогда часть вопросов прояснится самостоятельно.

Мihail это затеял, чтобы продвинуться в создании оси на базе Форт подхода.


Last edited by Kopa on Fri Jan 16, 2009 2:59 pm, edited 2 times in total.

Top
   
PostPosted: Fri Jan 16, 2009 2:52 pm 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
tsdima wrote:
Если хочется иметь доступ к адресному пространству ядра при помощи Форта - напиши драйвер.


Сначало один драйвер, потом второй потом придумываем стандарт на всё
это и в результате система изначально построенная на простом дизайне
превращается в "курицу".

P.S. А если вообще не нужна файловая система на диске, тогда как?


Top
   
PostPosted: Fri Jan 16, 2009 3:37 pm 
Offline

Joined: Wed Mar 26, 2008 12:44 pm
Posts: 225
Kopa wrote:
Мihail это затеял, чтобы продвинуться в создании оси на базе Форт подхода.

ось_на_базе_Форт Kolibri <> .
-1


Top
   
PostPosted: Fri Jan 16, 2009 6:26 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Mar 20, 2006 10:44 am
Posts: 557
Quote:
Пользователь
сам может определится какая функциональность ему нужна ( какие
диспетчеры и какие модули ).
Бред, много пользователей удивляются почему win приложения не запускаются, а ты предлагаеш ещё и функциональность им самим выбирать
Quote:
P.S. А если вообще не нужна файловая система на диске, тогда как?
Бред, Колибри система общего назначения с монолитным ядром, нужна функциональность на выбор - это к L4.
Quote:
Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
- бля, это как? ну хоть примерно? очень интересует этот вопрос.

Вообще ссылки на пример использования Форта, среды разработки, etc в студию!


Top
   
PostPosted: Mon Jan 19, 2009 8:45 am 
Offline

Joined: Mon Mar 27, 2006 6:33 am
Posts: 659
Ghost wrote:
Бред, Колибри система общего назначения с монолитным ядром, нужна функциональность на выбор - это к L4.!


Возможно и бред, но пользователей имеющих возможность гибко
настроить систему под свои потребности можно тоже поддержать.

Ghost wrote:
Quote:
Одна из причин, для лёгкой отладки функциональности ядра используя Форт
без необходимости перекомпиляции ядра.
- бля, это как? ну хоть примерно? очень интересует этот вопрос.

Вообще ссылки на пример использования Форта, среды разработки, etc в студию!


Возможно приведение примера программы nncron что нибудь прояснит?

P.S. Последний вопрос обозначен сильно неопределённо, просьба не ругаться,
а спрашивать более корректно.


Top
   
PostPosted: Mon Jan 19, 2009 11:25 am 
Offline
Kernel Developer
User avatar

Joined: Mon Mar 20, 2006 10:44 am
Posts: 557
Quote:
Одна из причин, для лёгкой отладки функциональности ядра используя Форт без необходимости перекомпиляции ядра.

Что здесь неопределенного? Меня поражает идея реализовать это, но я мало могу себе представить например отладку планировщика на ходу. Да такие вещи делаются например софтайсом, но там отладчик фактически берет всё управление железом на себя, и по суте является мини ОС. Очень интересует вопрос как с этим может справится форт как язык программирования.
Практически все матерьялы и ресурсы по форту на меня наводят ужас своим любительски-колхозным видом, и представлением информации.

Итак, так как большинство людей на форуме мало представляют себе что такое форт и с чем его едят (кстати как я понял сред нормальных под него нет) то резонно поставить несколько вопросов к автору:
- качественные примеры использования Форт, где он дает преимущества (ИМХО с задачами nncron LUA бы лучше справился)
- что позволяет делать ForthKolibri, примеры, скриншоты (заинтересуй людей, что бы им захотелось попробывать)
- ну и как отлаживать ядро?

P.S. Разговор переходит в холивар, поэтому давайте по существу вопроса отвечать.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 52 posts ]  Go to page 1 2 3 4 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited