Page 2 of 11

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 16:34
by Максагор
По ЛЮБОМУ, который выдаст система. Релоцируемые программы с настройкой адресов при загрузке - давным давно не экзотика.


И я еще добавлю: Так как я обеими руками ЗА развитие NedoOS и прежде всего за развитие гибкой системы взаимозаменяемых драйверов, то считаю не грешным делом обратить внимание на тот же опыт iS-DOS, где система релоцируемых драйверов со стандартизированной струкрурой развита на отлично. Само собой, "автоматически" перенести систему с исдоса на недоос, так как в iS-системах ядро с динамической (растущей вних по мере накопления драйверов и резидентных задач) областью драйверов находится в основном поле памяти, а в недоос скрыто в "альтернативной" карте памяти. Но ориентироваться вполне возможно.Считаю, что система от этого только выиграет, если "прибитость гвоздями" драйверов будет ликвидирована.

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 16:44
by Максагор
2. Это сложно, а практической пользы не видно.


Реализовать как в Юникс сложно и не нужно, согласен. А вот "прибитость к конкретным буквам" не нужна, и от нее уйти как раз несложно.

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 17:41
by SfS
Максагор, пока авторы не скажут веского слова - ничего не сдвинется=)

Насчет "как в юниксе" и не надо. Я говорю, что достаточно корневой фс и монтирования к любому ее каталогу.
Зато можно драйвера устройств представить как файлы, что очень удобно. Именованые пайпы опять же... В общем много плюсов.

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 19:57
by alone
Ядро, драйверы, фс, БДОС и даже обработчик прерываний скрыты от пользователя. Они вообще не в пространстве пользователя. Пространство пользователя на Z80 - на вес золота.
Идея с JP интересна, но как узнать, сколько нужно программе? Если это компилятор, то может понадобиться в принципе бесконечное число параметров. По идее надо как-то их стримить, но я не придумал как. Может быть, специальный пайп?
Именованные пайпы можно сделать и без единой точки монтирования. Пайпы привязаны к диску Z:.
Главное в ОС - это приложения. Сколько было "замечательных ядер", которые никому не нужны, потому что бесполезны. Надо писать приложения. А ядро можно потом переделать как угодно, если приложения есть в исходниках, а не только в *.com. Наличие исходников также способствует тому, что не приходится изобретать одно и то же несколько раз - один написал, все использовали.
Для меня, в частности, важно удобство NedoOS для разработки игр, особенно сетевых игр и игр с большим объёмом ресурсов.
Зачем нужен "драйвер AY", которых к тому же может быть подключено два, я не представляю. Если для взаимозаменяемости с SAA или SID, то они не взаимозаменяемы.

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 21:00
by DimkaM
SfS wrote:Прошу принять мою критику не как претензии, а как вопросы, возникающие у стороннего человека к NedoOS.

я согласен со всеми пунктами. но не все они реализуемы малой кровью.

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

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 21:01
by SfS
Alone, я предлагаю программисту самому размер буферов выставлять для каждой своей программы. И ничего узнавать не надо.
Уж программист то знает сколько и каких параметров ему надо.

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 21:09
by SfS
DimkaM wrote:я согласен со всеми пунктами. но не все они реализуемы малой кровью


Не надо крови)
Напишите план для начала. Крупноблочный. И потом с ним сверяйтесь.

Типа такого:

1. Переработать передачу параметров.
2. Ввести переменные окружения.
3. Унифицировать интерфейс драйверов.
4. Сделать драйверы подгружаемыми.
5.......

Ну это пример. Вы по своему сделаете.
Зато потом четко видно что сделано и что нет

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 21:35
by lvd
alone wrote: Если это компилятор, то может понадобиться в принципе бесконечное число параметров. По идее надо как-то их стримить, но я не придумал как. Может быть, специальный пайп?

Кстати, очень хорошая идея. Передавать параметры в принципе быстро нет нужды, а в случае такого пипа можно это 'пайп' иметь вовсе файлом. Скорее даже не пайп, а файловый дескриптор, который может быть как пайпом, так и файлом.

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 21:36
by lvd
SfS wrote:Уж программист то знает сколько и каких параметров ему надо.

Знает ли разработчик GCC, сколько параметров ему надо? 64 килобайта? Мегабайт? Почему?

Re: Покритикую маленько...

PostPosted: 18 Nov 2020, 21:38
by lvd
SfS wrote:Релоцируемые программы с настройкой адресов при загрузке - давным давно не экзотика.


Ок. Научи делать такие программы при помощи ужасма.
Причём и для случая например такого:
Code: Select all
add a,(ADDR-1)%256
ld l,a
adc a,(ADDR-1)/256
sub l
ld h,a

и это я даже про выравнивание на 256 не заикнулся.