Forth
http://fforum.winglion.ru/

А что, идея ОСи заглохла, что ли? (12.05.07)
http://fforum.winglion.ru/viewtopic.php?f=16&t=729
Страница 1 из 2

Автор:  вопрос [ Сб май 12, 2007 23:44 ]
Заголовок сообщения:  А что, идея ОСи заглохла, что ли? (12.05.07)

Вопрос в заглавии темы. Может я прозевал и эта идея была оставлена?
есть несколько хороших мыслей по ФортОС ... :(

Автор:  mOleg [ Вс май 13, 2007 00:09 ]
Заголовок сообщения: 

обсуждение оси заглохло похоже.
Но это не на долго 8) уж больно флудотворная тема.
Так что предложения и мысли, особенно хорошие прелагайте 8)

Автор:  Hishnik [ Вс май 13, 2007 00:25 ]
Заголовок сообщения: 

А код-то кто-нибудь начал писать? :)

Автор:  вопрос [ Вс май 13, 2007 00:28 ]
Заголовок сообщения: 

Я начал создавать теорию ... :) 8)
Скажем - об трудоёмкости (значительно пониженной) отладки в Форте, если таковой реализован в виде ВМ.

Автор:  WingLion [ Вс май 13, 2007 01:07 ]
Заголовок сообщения: 

imho, это самая живая идея из всех :)

Автор:  in4 [ Вс май 13, 2007 11:26 ]
Заголовок сообщения: 

Хищник писал(а):
А код-то кто-нибудь начал писать?

У меня есть наработки и продолжаю... ;)

А последнее время я склоняюсь к портированию Minix3 или Оберона как базы для ОС, чтобы у нее сразу были приложения... ;)

Автор:  вопрос [ Вс май 13, 2007 11:46 ]
Заголовок сообщения: 

Minix3? И куда там встраивается Форт?

Автор:  in4 [ Вс май 13, 2007 11:53 ]
Заголовок сообщения: 

вопрос писал(а):
Minix3? И куда там встраивается Форт?

думаю задачей. Возможно, на Форте закодировать внутренности... ;)
Тогда С будет "довеском"... ;)
Пока что я делаю инструменталку для поддержки рефакторизации.
Сначала инструмент будет замкнутый - работать только с кодом во внутреннем представлении...
Основа - WinLib с динамическим расширением, но уже есть неожиданные проблемы... :(

Автор:  Hishnik [ Вс май 13, 2007 12:12 ]
Заголовок сообщения: 

in4 писал(а):
Основа - WinLib с динамическим расширением, но уже есть неожиданные проблемы...

Воооот!....... ;)

Автор:  вопрос [ Вс май 13, 2007 12:22 ]
Заголовок сообщения: 

Т.е. "чистая" ФортОС (без примесей) не кажется хорошей идеей?

Цитата:
Тогда С будет "довеском"...
Недопонял, расшифруйте. :shuffle;

В СЛУЧАЕ С ВСТРАИВАНИЕМ есть как минимум два вопроса:
  1. Будет ли при этом Форт реализовать одно из своих преимуществ - гибкость работы с железом, т.е. будет ли "прямой" доступ к аппаратуре?
  2. МОжно ли потом это "встроенное" сделать частью самостоятельной ОС, полностью фортовой?

Автор:  in4 [ Вс май 13, 2007 12:55 ]
Заголовок сообщения: 

вопрос писал(а):
Т.е. "чистая" ФортОС (без примесей) не кажется хорошей идеей?

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

in4 писал(а):
Тогда С будет "довеском"...

Использовать С можно будет для облегчения переноса чужих программ - просто перекомпилить под эту ОС.
вопрос писал(а):
Будет ли при этом Форт реализовать одно из своих преимуществ - гибкость работы с железом, т.е. будет ли "прямой" доступ к аппаратуре?

Только для драйверов или специальных задач - зависит от целевой системы.
Если несколько задач одновременно обращается к одному и тому же устройству... - ОС как раз и должна предотвратить конфликты... И не давать задачам "прямой" доступ... ;)
вопрос писал(а):
МОжно ли потом это "встроенное" сделать частью самостоятельной ОС, полностью фортовой?
Конечно! При хорошем проектировании это должно быть естественным... ;)

Фортовость - не цель! Форт - просто хорошее средство для написания программ. Задачи, написанные на Форте отлично работают и под другими ОС. И сама ОС - это просто программа.
Если ее написать на Форте - будет "чистоФорт", но без вставок ассемблера или маш.кодов ОС не сделать... ;) Для ядра требуются команды, которые в обычных программах не встречаются... ;)

Еще один важный момент - определение архитектуры...
Я бы хотел сделать несколько параллельных архитектур для разных задач, но чтобы были выделены общие части. А, поскольку заранее это определить мне трудно, хочется иметь инструмент для "жонглирования" особенностями архитектур и их реализаций - то, что я называю "инструменталкой"... ;) И это, IMHO, самый важная и ключевая вещь! Хорошие инструменты повышают производительность работника на порядки!! И помогают работать группам. Вот это и надо сделать сначала, сюда направить внимания и усилия. IMHO. ;)

Остается вопрос драйверов и прикладных программ... Можно все переписать на Форте. Это долго, если учесть количество участников и объем работ.
Как врЕменную меру можно сделать компилятор С и/или Оберона и перекомпилить готовые вещи. Уже потооом, если нужно, можно занятся переписыванием...

Автор:  in4 [ Вс май 13, 2007 12:55 ]
Заголовок сообщения: 

вопрос писал(а):
Т.е. "чистая" ФортОС (без примесей) не кажется хорошей идеей?

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

in4 писал(а):
Тогда С будет "довеском"...

Использовать С можно будет для облегчения переноса чужих программ - просто перекомпилить под эту ОС.
вопрос писал(а):
Будет ли при этом Форт реализовать одно из своих преимуществ - гибкость работы с железом, т.е. будет ли "прямой" доступ к аппаратуре?

Только для драйверов или специальных задач - зависит от целевой системы.
Если несколько задач одновременно обращается к одному и тому же устройству... - ОС как раз и должна предотвратить конфликты... И не давать задачам "прямой" доступ... ;)
вопрос писал(а):
МОжно ли потом это "встроенное" сделать частью самостоятельной ОС, полностью фортовой?
Конечно! При хорошем проектировании это должно быть естественным... ;)

Фортовость - не цель! Форт - просто хорошее средство для написания программ. Задачи, написанные на Форте отлично работают и под другими ОС. И сама ОС - это просто программа.
Если ее написать на Форте - будет "чистоФорт", но без вставок ассемблера или маш.кодов ОС не сделать... ;) Для ядра требуются команды, которые в обычных программах не встречаются... ;)

Еще один важный момент - определение архитектуры...
Я бы хотел сделать несколько параллельных архитектур для разных задач, но чтобы были выделены общие части. А, поскольку заранее это определить мне трудно, хочется иметь инструмент для "жонглирования" особенностями архитектур и их реализаций - то, что я называю "инструменталкой"... ;) И это, IMHO, самый важная и ключевая вещь! Хорошие инструменты повышают производительность работника на порядки!! И помогают работать группам. Вот это и надо сделать сначала, сюда направить внимания и усилия. IMHO. ;)

Остается вопрос драйверов и прикладных программ... Можно все переписать на Форте. Это долго, если учесть количество участников и объем работ.
Как врЕменную меру можно сделать компилятор С и/или Оберона и перекомпилить готовые вещи. Уже потооом, если нужно, можно занятся переписыванием...

Автор:  вопрос [ Вс май 13, 2007 13:05 ]
Заголовок сообщения: 

in4 писал(а):
Инструменталку я делаю в т.ч. для этого...

пора спросить - и что же это за инструменталка?

Автор:  in4 [ Пн май 14, 2007 09:16 ]
Заголовок сообщения: 

вопрос писал(а):
пора спросить - и что же это за инструменталка?

Да вот полностью программируемый редактор(гипертекстовый) + отладчик + редактор карт ума(MindMap) == редактор деревьев идей (подробности в google, личке или ирсе) + редактор таблиц сделать задумал - чтоб можно было удобно писать программы и документацию к ним, и программы рефакторизовывать. Развитие идей годичной давности - "какой редактор мне нужен" или что-то в этом роде.
Например, нет никакой причины выписывать вручную "скобки" для редактирования таблицы - если можно просто добавить таблицу(подготовленным заранее способом), ввести в нее данные, прокрутить ее как надо, свернуть, описать ее, быстро добавить к ней звукозапись каких-то идей альтернативных вариантов структуры или реализации.

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

И с деревом программы хочется удобно работать - вынести глобальные переменные или наоборот, внести их. Заменить таблицу списком или наоборот. Переименовать все вхождения слова. Переделать цикл WHILE на DO или на рекурсию... Посмотреть частоту использования слова, выделить часть кода в новое слово... Отредактировать список параметров слова, переставить их при необходимости с автоматическим изменением исходника слова, сравнить быстродействие разных реализаций. Удобно работать с деревом выбора вариантов реализации... ;)
Описать и удобно изменять идеи реализации какой-то задачи, визуализировать алгоритм, стеки и потоки управления...

В общем, все программистские задачи в расширяемой среде - надо что-то новое - тут же добавил кнопку, нарисовал ей рисунок, описал или надиктовал описание, добавил код, проверил все на непротиворечивость, сделал тесты, проверил результаты и пошел дальше... Выбрал из списка типовых реализаций шаблон, ввел в нескольких местах особенности, описал их, посмотрел что получилось... и т.д.
Базой предполагается WinLib или аналогичное. Не страшно, если прийдется несколько раз поменять базу - процесс итерационный. ;) Для следующих итераций можно использовать результат предыдущих... ;)

Чем больше в системе будет описанных и подготовленных для анализа и выбора лучшего варианта готовых способов решений, тем удобнее будет пользоваться системой и тем выше будет качество работы. Эту же систему можно использовать для обучения, и даже не очень подготовленный специалист (студент, школьник) сможет делать более-менее хорошие вещи... ;)

Автор:  chess [ Пн май 14, 2007 10:56 ]
Заголовок сообщения: 

Идея Форт-ОС для меня имеет меркантильный оттенок.
Сразу-же оговорюсь, что для меня Форт-ОС связана с архитектурой IA-32, впоследствии может быть и с IA-64.
Почему? Потому, что:
1. IA-32 реализована массово в виде PC - поэтому стоимость ее реализаций минимальна.
2. Быстрый процесс морального старения РС - отвалы из старых РС(PC 2 ггц уже на свалке) - одни из самых больших.
3. Вычислительная мощность достаточно высока - можно решать широкий спектр задач.
4. Периферия достаточно развита.
5. Оборудование РС можно с малыми затратами трансформировать в вид, необходимый для довольно широкого круга условий его эксплуатации.
В силу разных причин факторы 1-4 носят долговременный характер - на это можно ориентироваться.

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

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