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

...
Google Search
Forth-FAQ Spy Grafic

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




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

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

Обзор темы - оригинальные решения в различных операционных системах.
Автор Сообщение
  Заголовок сообщения:  "Компания Microsoft закроет Windows?"  Ответить с цитатой
"Компания Microsoft закроет Windows?"
http://news.bbc.co.uk/hi/russian/sci/tech/newsid_7541000/7541471.stm
Код:
Компания Microsoft приступила к разработке новой операционной системы, которая, возможно, в будущем сменит устаревающую Windows.

Программное обеспечение под кодовым названием Midori, рационализирующее ресурсы, не похоже на все предыдущие продукты Microsoft.

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

Информация о том, что Microsoft разрабатывает новую систему, появилась некоторое время назад, но получила подтверждение только на этой неделе, когда журналистам продемонстрировали внутренние документы компании, в которых содержалось описание технологии.

"Midori - один из многих проектов, над которыми мы в настоящий момент работаем. Пока он находится на очень ранней стадии разработки", - сказали представители Microsoft в интервью Би-би-си.

Новый подход

Философия операционной системы Windows создавалась, когда интернет не имел такого значения, как сейчас. Тогда рост производительности компьютера достигался увеличением мощности процессора и вместительностью жесткого диска.

"Операционная система загружалась на жесткий диск компьютера, там же хранилась вся информация пользователя, что ставило человека в зависимость от возможностей определенной машины", - говорит Дэйв Остин, директор европейского отделения компании Citrix.

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

Дэрен Браун, эксперт консалтинговой фирмы Avanade, говорит, что удаленные приложения делают эффективной работу и пользователей, и разработчиков: пользователи экономят память компьютера, а разработчикам легче обновлять программы и защищать свои продукты.

"Грубо говоря, существенная экономия заключается в том, что приходится иметь дело с меньшим количеством компьютеров", - говорит Браун.

Новый подход позволяет также решить проблему несовместимости программ.

Перестройка бизнеса

Майкл Сильвер, вице-президент по разработкам компании Gartner, сказал, что разработка системы является огромным шагом для Microsoft. По его словам, компании придется перестроить свой бизнес.

"Сейчас 80% доходов Microsoft получает от программного обеспечения, которое продается вместе с новыми компьютерами. Ни для кого не секрет, что с появлением интернет-приложений стоимость того, что производит сейчас компания, снижается. А она задалась целью быть на острие прогресса", - говорит Сильвер.

В Microsoft пока не называют сроков выхода новой операционной системы и не обсуждают коммерческих перспектив Midori.
Сообщение Добавлено: Пн авг 04, 2008 23:24
  Заголовок сообщения:   Ответить с цитатой
Из обсуждений на Хабрахабре (не про ОСи) - хорошо сказано:
Код:
У компа центральный процессор уже не занимается попытками отстроить звуковую волну (это делает оборудование звуковой карты и модема), каждую точку трёхмерного изображения — для этого существуют и развиваются процессоры 3d-графики (даже программы для визуализации , как 3d studio могут основываться на работе видеопроцессора вместо центрального при помощи специальных рендеров типа Gelato)


Кароче: ОС уже не "Хозяин", ОС - "Менеджер"

PS Большая коллекция книжек по Microsoft Windows:
http://www.zipsites.ru/?n=15/8/1/
а также *nix, FreeBSD, Novell Netware:
http://www.zipsites.ru/?n=15/8/2/
Сообщение Добавлено: Сб июл 26, 2008 12:07
  Заголовок сообщения:   Ответить с цитатой
http://stimul.freepascal.ru/index.html

OS Stimul - это проблемно-ориентированная ОС на Паскале, предложенная во время, когда OpenSource, по существу, стал стандартом. Мы разрабатываем систему, способную успешно работать как на PC, так и на процессорных платах для систем управления, аналогичную по функциям АСУ и УЧПУ. Главный принцип - легкость пересоздания. В любой момент каждый сможет определить какие именно сервисы, функции и программы нужны от ОС и собрать её под конкретную задачу.

Основные моменты:
- Микроядро - обеспечивает низкое время отклика на внешние и внутренние сигналы и прерывания
- 32-битный защищённый режим процессора, страничная модель памяти
- Самая свободная из всех лицензий - BSD
- Поддержка новых взглядов на функционирование ОС
- По возможности, мы стараемся обеспечить совместимость с DOS и UNIX системами
- Структура микроядра для максимального быстродействия разрабатывается на ассемблер

:)
Сообщение Добавлено: Пт июл 18, 2008 14:55
  Заголовок сообщения:   Ответить с цитатой
avl писал(а):
Что-то это мне напоминает ;-)

Синтаксис там тоже кажется чем-то знакомым. :shuffle; Ядро тоже практически Forth-ready. :)
Сообщение Добавлено: Вт июл 15, 2008 14:58
  Заголовок сообщения:   Ответить с цитатой
Операционнная система :
http://www.memetech.com/
Код:
oiu

Первый принцип: oiu - не unix 
Второй принцип: Нам не нужны никакие файлы
Третий принцип: Нам также не нужны никакие редакторы связей 
Принцип четвертый: Есть одно дерево, ............................................
Принцип пятый: Документация - код


Что-то это мне напоминает ;-)
Сообщение Добавлено: Вт июл 15, 2008 12:13
  Заголовок сообщения:   Ответить с цитатой
В Oberon3 в любом месте рабочего стола выделением прямоугольника появляется новое окно в котором можно писать текст на Oberon-е же (не на sh как в UNIX с KDE). И вот новая программа готова! И никому не надо отказываться от графического режима.
Сообщение Добавлено: Ср июл 09, 2008 16:03
  Заголовок сообщения:   Ответить с цитатой
mOleg писал(а):
а это один из новых проектов ОС 3OS

Все проекты новых Осей отмечают всё те же недостатки у уже существующих ...
Сообщение Добавлено: Чт июн 26, 2008 00:56
  Заголовок сообщения:   Ответить с цитатой
а это один из новых проектов ОС 3OS
Сообщение Добавлено: Ср июн 25, 2008 23:23
  Заголовок сообщения:   Ответить с цитатой
заметка для изучения: ос на основе экзоядра
Сообщение Добавлено: Ср июн 25, 2008 21:53
  Заголовок сообщения:   Ответить с цитатой
Kamikaze писал(а):
OS Inferno (Fourth Edition)

действительно интересно!
Сообщение Добавлено: Ср июн 25, 2008 20:14
  Заголовок сообщения:  Inferno  Ответить с цитатой
OS Inferno (Fourth Edition): http://www.vitanuova.com (угу, просто Fourth-редакция, а никак не Forth!)

Некоторые особенности архитекруры:
(взято с http://www.habrahabr.ru/blog/os_inferno/12905.html)
Код:
Один из краеугольных камней архитектуры Inferno - юниксовая идея с файлами-устройствами доведена до предела: в Inferno файлами представлено абсолютно всё. Например, в Inferno нет понятия "сокет".
В Inferno файлами представлены не только устройства (аналог /dev/) и процессы (аналог /proc/), но и такие вещи как DNS resolver, сокеты и переменные окружения (environment) (список не полный :)).

Код:
С переменными окружения работа идёт аналогично - есть каталог /env/, файлы в котором это имена переменных, а содержимое файлов - значения переменных. Соответственно создание/удаление файла это создание/удаление переменной окружения.
Для доступа к информации по процессам используется каталог /prog/. Причём абсолютно все операции выполняются через его подкаталоги и файлы - в том числе отладка (т.е. не нужен сискол POSIX ptrace) и получение информации о статусе процесса (т.е. не нужны сисколы wait/waitpid).
Работа всех этих виртуальных файлов обеспечивается разными средствами - например /net/tcp/ и /env/ реализованы через драйвера Inferno, а DNS ресолвер /net/cs реализован обычным приложением.

Код:
Такой подход позволил упростить множество вещей:

    * для работы с сетью достаточно обычного файлового API, отдельные функции POSIX (socket, connect, bind, listen, etc.) стали не нужны
    * аналогично, нет специального API для работы с переменными окружения (clearenv, putenv, setenv, getenv, etc.)
    * поскольку протокол Styx позволяет расшаривать файлы по сети, то можно делать, например, следующие трюки:
          o если машина в локальной сети, не имеющая реального IP-адреса, подмонтирует себе каталог /net шлюза в инет, то она получит прямой выход в инет без необходимости настраивать на шлюзе штуки типа NAT или маскарада
          o если на удалённый сервер подмонтировать по сети файлы /dev/cons, /dev/keyboard и /dev/pointer с рабочей станции, то на сервере можно будет запускать графические приложения которые будут управляться с терминала рабочей станции - и всё это без специального протокола а-ля X-Window!.. плюс получаем встроенную (в Styx) авторизацию, аутентификацию и шифрование
          o если на локальную машину подмонтировать каталог /prog (аналог /proc) с удалённого сервера, то можно будет локальным отладчиком отлаживать процессы выполняющиеся на удалённой машине - и отладчик об этом даже знать не будет, потому что он просто работает через файлы в /prog

Код:
"Правильная" программа в Inferno должна писаться не в стиле традиционных юниксовых утилит (читаем STDIN, пишем STDOUT), а в стиле файлового сервера Styx. Иными словами входом/выходом у такой утилиты должен быть не STDIN/STDOUT, а виртуальный файл или каталог с файлами а-ля /net/cs или /net/tcp/.
Это позволит очень легко строить распределённые системы. Например, предположим в нашем проекте есть модуль который что-то считает. Он реализован в виде отдельного процесса, который экспортирует файл ./calc, в который можно писать задания и считывать из него результат. Если возникает потребность ускорить вычисления перенеся эту подзадачу на отдельный, более мощный сервер, то достаточно двух шагов: запустить этот модуль на другом сервере; подмонтировать файл ./calc с этого сервера. И всё - остальная часть проекта даже не заметит что этот модуль выполняется на другом сервере!

Код:
Пространства имён (namespace) в Inferno аналогичны тем, которые используются во многих языках программирования... только в Inferno они применяются к файлам и каталогам.
Фактически привилегии и возможности программы под Inferno ограничены тем, к каким файлам (ибо любой ресурс = файл) она имеет доступ. Манипулируя namespace можно для каждого приложения создать свою, изолированную (а-ля chroot) среду, со своими устройствами в /dev (как выше в примере с удалённым терминалом), со своими сетевыми картами в /net (как выше в примере с NAT), etc.
К примеру, в винде есть такая фича - вы логинитесь с любого компа в сети и получаете СВОЙ рабочий стол и СВОЙ каталог "мои документы". В Inferno вы, залогинившись с любого терминала и имея доступ к своим ключам/сертификатам можете манипулируя namespace создать 100% ту же самую среду, которую вы имеете на своём основном компе. И для реализации этого никаких специальных "фич" в Inferno нет - обычные команды mount, bind и протокол Styx.
Сообщение Добавлено: Ср июн 25, 2008 17:25
  Заголовок сообщения:   Ответить с цитатой
Да, с блоками в этом плане проще...
Но файлы удобнее для использования - длина любая...
И неудобнее - поддерживать несколько частей исходника, накладные расходы файловой системы...

А вот если части исходника хранить в какой-то структуре данных - например, в БД - то не важно, как они выглядят для пользователя - хоть как словари и слова, хоть как папки и файлы... ;)

Заодно можно сделать кодирование и сжатие. А если хранить прекомпилированные исходники (как в ColorForth), то можно получить и увеличение скорости компиляции... ;)
Сообщение Добавлено: Ср июн 25, 2008 02:12
  Заголовок сообщения:   Ответить с цитатой
mOleg писал(а):
вопрос писал(а):
решения? Вот в юникс-подобных (FreeBSD и т.п.) опционально собирается ядро, для Форта, где всё из кусков - это легко

угу, не так уж и легко, так как нормального механизма для этого дела пока не существует, имеющиеся [IF] [ELSE] и т.п. не очень удобны, и не всегда применимы, нужно придумывать более удобные механизмы.

Можно некоторые слова просто не компилить или компилить их другие варианты а сценарий компиляции читать из файла
http://www.freebsd.org/doc/ru_RU.KOI8-R ... onfig.html
Сообщение Добавлено: Вт июн 24, 2008 20:39
  Заголовок сообщения:   Ответить с цитатой
ну, мне, например, нравится procfs, а так-же представление оконной "подсистемы" иерархией каталогов и файлов в plan9 (у них там смена парадигмы, вместо "всё суть файл" они перешли к "всё суть каталог"). или использование postscript в next в качестве стандартного дисплейного терминала.

как это всё применимо к форту - я не знаю.
Сообщение Добавлено: Вт июн 24, 2008 16:24
  Заголовок сообщения:   Ответить с цитатой
А у нас будут вложенные прерывания или последовательные?
Сообщение Добавлено: Чт июн 19, 2008 11:19

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


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