Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 12:32

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Место форта в ФортОС на мой взгляд (мнение Victor__v)
Автор Сообщение
  Заголовок сообщения:  Re: Место форта в ФортОС на мой взгляд (мнение Victor__v)  Ответить с цитатой
vikt писал(а):
Например, в реальном режиме можно читать секторы диска
используя прерывание BIOS. Я это делал самолично.

Тот еще аттракцион :) Поиграть так можно, но алгоритмические ошибки при попытке создания своих утилит могут легко порушить файловую систему. Или при отсутствии нормального восстановления после сбоев и ошибок диск опять же превратится либо в пустышку без возможности восстановить данные, либо в сборник мусора с потерянными цепочками кластеров (при его большом объеме проблемы будут сначала скрыты, зато потом накопятся). Так что оно красиво, но непрактично.

vikt писал(а):
Возможно такие же функции BIOS есть и для сети.
На вскидку нагуглил. Как минимум есть технология PXE.

И что там, кроме загрузки? Где TCP-то? Я уже не говорю, что до TCP надо прорваться через MAC-чипы разных производителей, у которых, для того чтобы добраться до буфера с IP-пакетом, нужно совершать самые разные действия.

vikt писал(а):
Делается 32 битный форт для работы в защищенном режиме в качестве ОС

vikt писал(а):
Для графики: очень легко программировать vesa режим, правда подзабыл немного.

Делал, в конце 90-х. Работало с диском и графикой VESA. Ничего убирать было не надо, для защищенного режима существовал специальный программный интерфейс - шлюз. Все функции DOS были доступны, поэтому смысл дублировать все то же самое "зато на Форте" был нулевым.

vikt писал(а):
Можно найти старую материнку, старенькие, но исправные диски 40-80 гб и
собрать дома сетевой компьютер. Который может проснуться по таймеру, который
записан в смос и включить машинку для полива цветочков, используя
паралельный порт, к которому подсоеденино реле.


Это делается без ОС, на платформе начиная от ATTiny или младших STM32 с встроенным USB. Домашний компьютер сегодня нужен все же для задач другого уровня.

vikt писал(а):
И самое главное: Опубликовать статью на хабре в разделе DIY

Ооо, да, главное :))
Сообщение Добавлено: Вт июл 03, 2018 02:51
  Заголовок сообщения:  Re: Место форта в ФортОС на мой взгляд (мнение Victor__v)  Ответить с цитатой
По драйверам и библиотекам так думал:
Есть функция ядра по прерыванию она выдаёт значение на привилегированный сегмент доступный на чтение и исполнение в нём названия функций и код на вызов функций из другого привелигированного сегмента, который уже недоступен на чтение и исполнение.
При этом ядро также имеет свой сегмент с именами функций.
Надеюсь, не бред написал.
Сообщение Добавлено: Пн июл 02, 2018 15:20
  Заголовок сообщения:  Re: Место форта в ФортОС на мой взгляд (мнение Victor__v)  Ответить с цитатой
А что? Прекрасная идея! Только кто будет этим заниматься?
Удачно реализованная ОС, может пригодиться в учебных проектах,
а если повезет... Прекрасно работающая на ноутах и десктопах
Linux, в различных андроидах и всяких роутерах прямо скажем
не впечатлила.
Но важно
1) ОБЯЗАТЕЛЬНО работать с инструкцией halt.
Гонять процессор в цикле... За это надо развешивать
недопрограммистов на фонарях.
2) Сразу надо вводить понятие supervisor'a, даже если
его поначалу не надо будет реализовывать.
Иначе система останется игрушкой без всякого шанса на развитие.

Если первоначально решиться на некоторые компромисы, то можно
избавить себя от муторного написания разных драйверов.
Например, в реальном режиме можно читать секторы диска
используя прерывание BIOS. Я это делал самолично.
Возможно такие же функции BIOS есть и для сети.
На вскидку нагуглил. Как минимум есть технология PXE.
Есть еще другие сервисы, для работы с сетевой картой до загрузки OS
https://wiki.osdev.org/PXE
(внимательно не смотрел, но похоже то что нужно)
Надо только постоянно переключаться с защищенного в реальный режим,
что бы работать с bios. Это реально не страшно.
286 8 мегагерц 87 года прекрасно с этим справлялась, используя
286 dpmi борланд паскаля. Подтормаживала мышь чуть чуть.

Итак. Нужен 16 битный форт для дос
Эмулятор qemu, dosbox или что-нибудь еще
С его помощью проверяется работа с диском и сетью при помощи bios
Делается 16 битный форт для работы в реальном режиме уже в качестве ОС
Делается 32 битный форт для работы в защищенном режиме в качестве ОС

Переход в защищеный режим и обратно не сложен, я это тоже делал.
(По книге "асемблер Юров Хорошенко")
Да и в инете полно
https://wiki.osdev.org/Protected_Mode
https://wiki.osdev.org/Real_Mode

Для графики: очень легко программировать vesa режим, правда подзабыл немного.

То, что получилось, может совсем не мало! Работать с сетью например,
хоть и через задницу.

Можно найти старую материнку, старенькие, но исправные диски 40-80 гб и
собрать дома сетевой компьютер. Который может проснуться по таймеру, который
записан в смос и включить машинку для полива цветочков, используя
паралельный порт, к которому подсоеденино реле.
Или проснуть машинку с помощью технологии wakeOnLan, послав "магический"
пакет и использовать как файл сервер. Такая машинка загрузится за секунды,
так как компактная операционка.

И самое главное: Опубликовать статью на хабре в разделе DIY

https://habr.com/hub/DIY/
Если повезет, то в комментаторах отметится кто-нибудь из тех, кто копал
мобильные прошивки - может че и посоветует по поводу мобильных.
А вообще, есть вероятность заинтересовать проектом любителей DIY,
любителей самодельных операционок и кого-нибудь еще.
Сообщение Добавлено: Пн июл 02, 2018 02:01
  Заголовок сообщения:  Re: Место форта в ФортОС на мой взгляд (мнение Victor__v)  Ответить с цитатой
Ну мне просто хочется попробовать написать ОСь для какого-либо мобильника. При этом я не знаю ни как устроена ОС (книгу соответ. скачал, буду разбираться) ни ассемблер гипотетической архитектуры (можно выучить, с фортом не проблема свой ассемблер запилить).

Насчёт драйверов спасибо. Будет над чем подумать.

Цитата:
Если в системе нет JIT-компиляции и DSL, то где тут место Форту?

Цитата:
Начнём с конца.
От форта в форт-оси в конце останется только адресный интерпретатор и конвенция вызовов.

Тупо кодовая база.
Цель форта в данном случае простота портирования ОС и меньший размер ценою производительности.

И никаких красивых идей всё есть слово, словарь и пр. По обстановке будем думать
Сообщение Добавлено: Пт июн 08, 2018 15:47
  Заголовок сообщения:  Re: Место форта в ФортОС на мой взгляд (мнение Victor__v)  Ответить с цитатой
Эта тема уже неоднократно поднималась на форуме. Вопрос обычно состоит в том, что цель создания ФортОС оказывается выражена недостаточно четко. Из-за этого получается противоречивая картина с технической точки зрения.

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

Во-вторых, многие задачи, сводящиеся к вызову готовых функций, вполне приемлемо реализуются на bare metal. Послать СМС можно с GSM-модулем, который подключается даже к Arduino. Несложный интерпретатор консоли делается на огромном спектре языков. Если в системе нет JIT-компиляции и DSL, то где тут место Форту?
Сообщение Добавлено: Пт июн 08, 2018 14:41
  Заголовок сообщения:  Место форта в ФортОС на мой взгляд (мнение Victor__v)  Ответить с цитатой
Требования к ОС:
1) Портируемость
2) подключение уже имеющихся драйверов сделанных для других ОС
3) многозадачность при наличии ядер
4) ФС
5) наличие консоли
...

Требование к Форт-системе:
Прямой шитый код (возможно свёрнутый)
Компактность

Распространение:
Мобильники

Требования к архитектуре:
Любая 16 бит и разрядность выше

Память:
минимум: какой? (может 256 кб?)

Начнём с конца.
От форта в форт-оси в конце останется только адресный интерпретатор и конвенция вызовов.
Т.е. нет полей имени, связи, интерпретатора, флагов и прочего интересного.
Тупо коды примитивов и адресного интерпретатора, который тоже примитив.
И на этом базисе будет скомпилирована ОСь и работать на ней же.

Для портирования будет достаточно переписать форт-примитивы и перекомпилировать форт-ось.
Естественно, код оси должен быть только на форте.

Дополнительно, если другой производитель дров, то драйвера тоже портировать/копировать (надеюсь, это не очень сложно).

На уровне пользователя:
Хардкор :)
консоль ждущая ввода команды
Цитата:
Звонить Вассерман


Цитата:
SMS Зая
Жду тебя
SMS;


Короче, всё что мог, всё представил :lol:
Сообщение Добавлено: Чт июн 07, 2018 19:53

Часовой пояс: UTC + 3 часа [ Летнее время ]


cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB