OberonCore
https://forum.oberoncore.ru/

Контейнер исполняемого кода (подсистем в ББ)
https://forum.oberoncore.ru/viewtopic.php?f=2&t=3683
Страница 1 из 1

Автор:  Роман М. [ Воскресенье, 20 Ноябрь, 2011 12:33 ]
Заголовок сообщения:  Контейнер исполняемого кода (подсистем в ББ)

Намедни пришла в голову мысль о реализации способа динамической загрузки модулей Oberon/F (БлэкБокса) посредством вызова из собранной динамической библиотеки наподобие libBBox.

В отличие от динамической загрузки (модулем StdLoader) из типичной в ББ структуры папок подсистем (Obx/Code/Hello1.ocf), загружать из:
  1. локального файла-контейнера, скомпонованного из набора (скомпилированных) модулей подсистем [ObxHello0.ocf, ObxHello1.ocf, ...], находящегося в любой папке на компьютере (по аналогии - небольшой чемоданчик);
  2. удалённого файла той же структуры, только позволяя скачивать его по сети и загружать оттуда необходимые модули.
И каждый такой контейнер может выступать как независимое приложение с собственной средой времени исполнения, виртуальной песочнице.
Загрузчик должен быть установлен в виде системной службы (как типичные системные программы современных ОС) и позволять загружать приложения, указав путь, по которому надо брать файл-контейнер. Контейнер также может быть сжат в потоке Z/LZMA и прочих, плюс с проверкой целостности.

Таким образом, требуется обдумать интерфейс обращения к контейнеру.

Автор:  Евгений Темиргалеев [ Воскресенье, 20 Ноябрь, 2011 12:37 ]
Заголовок сообщения:  Re: Контейнер исполняемого кода (подсистем в ББ)

Роман М. писал(а):
В отличие от динамической загрузки (модулем StdLoader) из типичной в ББ структуры папок...
Таким образом, требуется другая реализация StdLoader.

Автор:  Пётр Кушнир [ Воскресенье, 20 Ноябрь, 2011 12:54 ]
Заголовок сообщения:  Re: Контейнер исполняемого кода (подсистем в ББ)

Ну или некая обёртка для файловой системы, которая будет давать лоадеру содержимое кодовых файлов из указаных контейнеров. Пример HostPackedFiles

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/