Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт апр 19, 2024 23:53

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 69 ]  На страницу 1, 2, 3, 4, 5  След.
Автор Сообщение
 Заголовок сообщения: Модель памяти для ФортОС
СообщениеДобавлено: Пт май 18, 2007 09:23 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Я всё-таки спрошу.
Чем же плоха плоская модель пмяти для ФортОС?
Зачем сегментация (я могу говорить только про х86 процессоры, о других - не в курсе), и что собственно в Форте защищать?
В отличие от программ, сделанных на других языках, в Форте уже известно, где всё расположено, ничто и никуда не "прыгает" и чужих данных не трогает - я правильно понимаю? Можно расположить словарь (словари) в верхних адресах памяти, данные в нижних и пусть сближаются. Всё, что должна будет контролировать Форт-машина - это границу.
несколько провокационно, но ...
и какая гибкость - раз
совместимость с процессорами, где не слыхали о защищённых режимах, сегментах и страничной адрессации - два


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 09:32 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Вопрос на самом деле дико сложный. А что, уже вот так прямо прописывается защита памяти для Форт-ОС? ;) Мне просто очень интересно, в какой именно момент в этом проекте таки окажутся приняты два или более взаимоисключающих решений. А дело к тому идет... :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 10:16 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
нет мне просто пришло в голову, что модель памяти влияет на совместимость... :)

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 10:30 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Достаточно корректно иметь адресные пространства словаря и данных. От того, будут они в одном сегменте, или в разных, ничего не меняется. Можно работать как в модели ДОС с разнесенными сегментами, так и в плоской модели. За указателями может следить Форт, а может и процессор. Вопрос только в том, что при наличии аппаратной защиты перекрытие памяти невозможно, а при программной это зависит от программы :) Плоская модель, возможно, с разнесением кода и данных, лично мне весьма симпатична, поскольку не плодит лишних сущностей вида "указатель на сегмент активной задачи, имеющей право исполнять код из подчиненной библиотеки, загружаемой в дополнительное адресное пространство, выделяемое с правами, не большими прав задачи, которая будет исполняться .... (вобщем, понесло)"


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 11:00 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Хищник писал(а):
Достаточно корректно иметь адресные пространства словаря и данных. От того, будут они в одном сегменте, или в разных, ничего не меняется. Можно работать как в модели ДОС с разнесенными сегментами, так и в плоской модели. За указателями может следить Форт, а может и процессор. Вопрос только в том, что при наличии аппаратной защиты перекрытие памяти невозможно, а при программной это зависит от программы :) Плоская модель, возможно, с разнесением кода и данных, лично мне весьма симпатична, поскольку не плодит лишних сущностей вида "указатель на сегмент активной задачи, имеющей право исполнять код из подчиненной библиотеки, загружаемой в дополнительное адресное пространство, выделяемое с правами, не большими прав задачи, которая будет исполняться .... (вобщем, понесло)"
Вот-вот.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 11:11 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
вопрос писал(а):
что собственно в Форте защищать?
В отличие от программ, сделанных на других языках, в Форте уже известно, где всё расположено, ничто и никуда не "прыгает" и чужих данных не трогает - я правильно понимаю?


Мне кажется, что было бы наивно так думать...
Если исключить злой умысел, по которому можно любую ось сковырнуть, останется бо-ольшая куча неучтенных "программистских факторов", из-за котороых программа может начать делать все что ей на голову вместе с кирпичом упадет...

Это не значит, что от плоской модели надо сразу отказываться, но аппаратная защита лишней вряд ли будет.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 11:56 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
WingLion писал(а):
Это не значит, что от плоской модели надо сразу отказываться, но аппаратная защита лишней вряд ли будет.


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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 12:13 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
Mihail писал(а):
Система может быть многоуровневой.


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


Mihail писал(а):
Базовая ОС это просто Форт на голом железе (плоская модель, логические адреса совпадают
с физическими, никакой защита).


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

НА PC можно выделить хоть гигабайт за пределами физической памяти, и оно будет работать в виртуальной так, словно память есть. И для нашей ОС такое положение формально не будет отличаться от положения с вставленной в комп пачкой DDR-ов (быстродействие не в счет).

Mihail писал(а):
Базовая ОС может служить загрузчиком и ядром для ОС более высокого уровня.

Я так понял, оно уже где-то так реализовано? :)

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 12:48 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Кстати, Intel с выпуском 80386 был в достаточно интересной ситуации. Есть мощнейший процессор, в котором реализовано все - любые разумные виды адресации, многоуровневая защита, аппаратное блокирование доступа "не туда", система прав для задач и программ разного уровня, вида и сорта. И... никто не бросился пользоваться всем этим богатством! Только нещадно ругаемая Microsoft вбухала бешеные деньги в разработку Windows, сделав "глючный" продукт (впрочем, а где же были другие?). И с огромным скрипом вся эта система защиты, разделения задач, переключения и прочяя (и Великия, и Малыя, и Белыя) поползла эволюционировать к Win95, 98, NT (защита хорошая, вместе с ней куча проблем совместимости). И, собственно, ква? Не поставить ли задачку поскромнее? :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 13:11 
Не в сети

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
Mihail писал(а):
Базовая ОС это просто Форт на голом железе (плоская модель, логические адреса совпадают с физическими, никакой защита).

WingLion писал(а):
Это, в общем-то, более конкретно, вызывает некое сомнение только утверждение на счет совпадения логических и физических адресов.

А так сделать проще! :) Быстрее, меньше ошибок, больше возможностей отладки. Можно даже ДОС как задачу запустить со всеми прелестями... Потом можно переделать... :)
Хищник писал(а):
И с огромным скрипом вся эта система защиты, разделения задач, переключения и прочяя (и Великия, и Малыя, и Белыя) поползла эволюционировать к Win95, 98, NT (защита хорошая, вместе с ней куча проблем совместимости). И, собственно, ква?

У них тянула совместимость. Глюки в чужих программах они исправляли введением спец. режимов работы ОС!! Видел список совместимости? А кучу флагов совместимости?
Мы же можем сохранять совместимость только с исходниками... и то не со всеми! :) У нас - преимущество!! :)
Хищник писал(а):
Не поставить ли задачку поскромнее?

Можно. Сначала. Как промежуточную. Сделаем - пойдем на Главную... ;)

_________________
With best wishes, in4.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 13:21 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
in4 писал(а):
У них тянула совместимость.

Защищенный режим процессора 80386 было на тот момент не с чем совмещать. Потому что программ под него еще не было. ДОС-приложения запускались в режиме виртуальной машины V86.
in4 писал(а):
Мы же можем сохранять совместимость только с исходниками... и то не со всеми! Smile У нас - преимущество!! Smile

@ ! - к какой модели памяти они относятся?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 13:25 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
in4 писал(а):
А так сделать проще! Smile Быстрее, меньше ошибок, больше возможностей отладки. Можно даже ДОС как задачу запустить со всеми прелестями... Потом можно переделать... Smile


Два колеса тоже проще четырех!
Будем Мерседесы в велосипеды переделывать? :)

В PC память физически подключена через страничный/сегментный механизм процессора. Какой смысл при таких реалиях требовать прямого подключения физической памяти? Вот, чего я не понимаю.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 13:31 
Не в сети

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
Хищник писал(а):
Защищенный режим процессора 80386 было на тот момент не с чем совмещать. Потому что программ под него еще не было. ДОС-приложения запускались в режиме виртуальной машины V86.

Вот они и "совмещали" операционку, уделяя больше внимания ДОС-программам, а не нормальной работе в защищенном режиме. И "удобству" пользователя, а не программиста. Лучше бы сделали удобство для программистов - было бы больше программ... :)
Хищник писал(а):
@ ! - к какой модели памяти они относятся?

Простая реализация (это лучше, IMHO) - к плоской, но зависит... ;)

_________________
With best wishes, in4.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 13:39 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
in4 писал(а):
Вот они и "совмещали" операционку, уделяя больше внимания ДОС-программам, а не нормальной работе в защищенном режиме. И "удобству" пользователя, а не программиста. Лучше бы сделали удобство для программистов - было бы больше программ... Smile

Ничего подобного не заметил. Хорошо продуманная система защиты, четко ориентирующаяся на требования аппаратуры (а не представления программистов). К тому же все отключаемое - по меньшей мере, всегда можно перевести процессор в режим соответствия линейных адресов физическим, задать всем пределы 4 Гб, отменить запреты на доступ к портам.
in4 писал(а):
Простая реализация (это лучше, IMHO) - к плоской, но зависит... Wink

От чего? Гипотетические случаи - немного не то, что возникает в практической работе.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт май 18, 2007 13:45 
Не в сети

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
WingLion писал(а):
В PC память физически подключена через страничный/сегментный механизм процессора.
Если ты его будешь настраивать!
WingLion писал(а):
Какой смысл при таких реалиях требовать прямого подключения физической памяти? Вот, чего я не понимаю.

Это не требование! Это предложение упрощения на начальном этапе. Управление памятью - сложная штука, там можно использовать разные алгоритмы...
Если памяти много, больше 2Мб, то вполне можно запускать несколько Форт-программ.
И память для них брать из общей кучи, не виртуальной. Система получается ПРОЩЕ! Потом можно добавить и виртуальную память, и механизм оптимального управления ею, и подкачку... :) Но ПОТОМ!!
А так - если у тебя с программой глюки - выходишь в ОС и имеешь всю память программы и делай с ней, что хочешь!! Потом программу можешь поновой запустить... :)

* Если у тебя автомобиль на мотоциклетных колесах (считаем, они уже есть) поедет, можно потом и автомобильные (за которыми еще ехать надо) поставить. Но ездить он будет рааньше!!

_________________
With best wishes, in4.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 69 ]  На страницу 1, 2, 3, 4, 5  След.

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


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 37


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

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