LINUX.ORG.RU

История изменений

Исправление X512, (текущая версия) :

Я не нахожу в гугле подтверждений твоим словам.

https://en.wikipedia.org/wiki/Ceres_(workstation)

Точнее, я не нахожу ничего про линкер Оберона вообще.

Вот исходник динамического загрузчика: StdLoader. Вообще исходники и документация Оберона плохо гуглятся, потому что они в бинарном формате по типу *.doc у MS Word.

А если учесть, что по мере роста программы линейно увеличивается число модулей. использующих этот модуль, то получается O(N*M log(N)) — квадратичная сложность, что есть полный отсос.

Не знаю что у вас за расчёты, но у меня Оберон система с GUI и около сотни модулей запускается за миллисекунды. В разы быстрее многих поделок на C/C++.

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

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

Исправление X512, :

Я не нахожу в гугле подтверждений твоим словам.

https://en.wikipedia.org/wiki/Ceres_(workstation)

Точнее, я не нахожу ничего про линкер Оберона вообще.

Вот исходник динамического загрузчика: StdLoader. Вообще исходники и документация Оберона плохо гуглятся, потому что они в бинарном формате по типу *.doc у MS Word.

А если учесть, что по мере роста программы линейно увеличивается число модулей. использующих этот модуль, то получается O(N*M log(N)) — квадратичная сложность, что есть полный отсос.

Не знаю что у вас за расчёты, но у меня Оберон система с GUI и около сотни модулей запускается за миллисекунды. В разы быстрее многих поделок на C/C++.

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

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

Исходная версия X512, :

Я не нахожу в гугле подтверждений твоим словам.

https://en.wikipedia.org/wiki/Ceres_(workstation)

Точнее, я не нахожу ничего про линкер Оберона вообще.

Вот исходник динамического загрузчика: StdLoader.

А если учесть, что по мере роста программы линейно увеличивается число модулей. использующих этот модуль, то получается O(N*M log(N)) — квадратичная сложность, что есть полный отсос.

Не знаю что у вас за расчёты, но у меня Оберон система с GUI и около сотни модулей запускается за миллисекунды. В разы быстрее многих поделок на C/C++.

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

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