Page 2 of 20

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 3:06 pm
by maximYCH
Mario и вообщем то все:
Давайте примем за ответ на вопрос "Зачем?" следующее:
"Разработка KolibriOS ведется для личного самообразования, однако самообразование подразумевает собой в данном случае не только навыки программирования на языках и алгоритмах, но и получение навыков работы в команде и работы на продукт. При этом нельзя исключать возможность, что с появлением тех или иных наработок для данной системы, ориентация может свернуть в другое русло, к примеру, серверное или десктопное". Это означает, что для отдельных людей этот проект пишется для самообразования, однако каждый, кто участвует в разработке несет некоторую долю ответственности за свое поведение в проекте, за код и его качество, которое он внес и т.д. Естественно, по факту ответственности нет - однако, если человек матерится на IRC или пишет некачественный наразборчивый код и орет "А чего это тут не так?", то естественно, такого отношения быть не должно. Должны быть какие-то рамки. Ведь этот проект, считайте, пишется _действительно_ для самообучения - ну тогда извольте и учиться жить в программерском коллективе.
Относительно встроенного ядра. Собственно, я не вижу в этом проблемы. Текущее ядро человека, который этим занимается, устраивает. Что мешает ему самому над ним дальше работать, учитывая, что только ему это и интересно и все остальные думают в противоположном направлении (микроядро)? В branches и все. Тем более, что до окончания проектировки я чувствую, ой как много (к той же OS/2 проектировочной документации 700 листов). Понятно, что мы может ограничимся и меньшим объемом, но это важная работа.
Mario, пойми - как ты выразился, путь Linux нам не повторить. Путь Windows тем более. Во встроенных и без нас есть, ну а среди нас и так есть, кто занимается этими вопросами. Я больше не вижу коммерческих путей развития.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 3:18 pm
by tsdima
Мне кажется, что Колибри ОС - это прежде всего открытый проект. А фразы "открытый проект" и "получая взамен в реальной жизни", на мой взгляд, несколько не совместимы.

Однако мне вполне понятны и мнения известных на этом форуме ядерщиков, которые вариируются от сдержанно-пессимистичного до явно выраженного пессимистичного, потому что это именно те люди, которые реально представляют себе объём работ по переделке ОС с нуля (хотя бы и имея какие-то наработки в виде существующего кода). Не скрою, мысли о написании ОС с нуля на основе имеющейся в исходниках информации посещала и меня, но я ясно себе представляю, что в одиночку я с этим не справлюсь.

Но от участия в проекте нового ядра/ОС я бы не отказался.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 3:29 pm
by Serge
Mario

AT&T действительно ужасен. .intel_syntax помогает, но иногда с ним возникали сложности при компиляции.

Если под "Зачем?" подразумевается PROFIT то самообразование т.е. инвестиции в себя очень хороший вариант.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 3:44 pm
by maximYCH
Вообщем-то. Обсуждение, которое не относится к самой проектировке, по-моему:
1. Разрядность кода.
Так или иначе, но постепенно 32 битные процессоры уходят с арены. Это уже сейчас заметно, и это не прихоть - это уже почти веление времени. И дело не только в том, что сама по себе технология лучше, интереснее, и т.д. 32 битный режим, как можно помнить позволяет адресовать до 4 Гб памяти (с помощью PAE расширяется до 64 ГБ - там физический адрес 36 бит вместо 32, но ценой приличных извратов). А учитывая темпы развития техники (не ПО, а техники), этого мало.
2. Проектирование.
Ну, во первых, у меня есть мысль, что начинать проектирование нужно с API, только в широком смысле -- не просто описать набор функций, а описать достаточно подробно, что они делают, как связаны между собой и т.п. В частности, надо расписать управление памятью и процессами (как процессы могут разделять память друг с другом и т.п.). Это позволит сформировать четкую систему ввода/вывода. Кроме того, есть предложение - реализовывать это все на псевдоязыке или Pascal/Ada изначально, а только потом переносить на ассемблер. Для того, что бы отловить глюки логики работы, алгоритмов, неправильной проектировки.
Кроме того, я не знаю, насчет формата проектирования и обсуждения - подойдет ли для этих целей форум? Потому что, если да - куда это все запихнуть, если учесть, что микротемы теряются в ходе обсуждения? Выделять для каждой микротемы (Зачем, разрядность и т.д.) свою тему?
3. Прочие вопросы - инструменты, лицензии, и т.д.
Ну это потом уже.

А также, о проектах и вообще кстати Фредерик П.Брукс. Мифический человеко-месяц или как создаются программные системы

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 4:07 pm
by Mario
maximYCH
При этом нельзя исключать возможность, что с появлением тех или иных наработок для данной системы, ориентация может свернуть в другое русло, к примеру, серверное или десктопное".
Мне вот интересно - это как гадание на кофейной гуще?
однако каждый, кто участвует в разработке несет некоторую долю ответственности за свое поведение в проекте, за код и его качество, которое он внес и т.д. Естественно, по факту ответственности нет - однако, если человек матерится на IRC или пишет некачественный наразборчивый код и орет "А чего это тут не так?", то естественно, такого отношения быть не должно. Должны быть какие-то рамки. Ведь этот проект, считайте, пишется _действительно_ для самообучения - ну тогда извольте и учиться жить в программерском коллективе.
От людей можно что-либо требовать лишь поставив их в зависимость - например ЗП, наличие определенных привилегий, можно еще к затылку приставить пистолет, т.е. угрозой расправы, других способов человечество не придумало.

tsdima
А фразы "открытый проект" и "получая взамен в реальной жизни", на мой взгляд, несколько не совместимы.
Здрасте! А все объяснения что free вообще то свобода, а не бесплатно - в топку?
Не скрою, мысли о написании ОС с нуля на основе имеющейся в исходниках информации посещала и меня, но я ясно себе представляю, что в одиночку я с этим не справлюсь.
Каждый из нас ярый индивидуалист и нет цементирующих факторов. Цементирующим фактором была-бы коммерческая выгода, но при таком подходе (полное отрицание), конечно все будет бесполезным.

Serge
Про AT&T - это наверное все-таки к Андрею?
PROFIT то самообразование т.е. инвестиции в себя очень хороший вариант.
Я все это понимаю, но участие в проекте обеспечивает только базовый уровень. Итого имеем человек придя в проект немного поковырявшись получил базовый уровень, устроился на работу - а там с него требуют этот базовый уровень и плюсом нечто совершенно отличающееся, в результате человек уже проектом не занимается. И так повторяется много, много, много раз. Дальше в проекте остаются в лучшем случае единицы - нету стимула продолжать работу. При наличии поддержки люди могли бы заниматься исключительно проектом и с них можно было бы что-либо спрашивать. Не было бы ситуации когда человек работает, что-то ломает, а потом сматывает удочки и через полгода все начинают орать что не работает. Епть - ответственность хоть какая-то была бы. А так как был бардак, так и останется.

З.Ы. Ребята вы можете сколько угодно проектировать и писать код, но поезд далеко не уедет пока не будут определена целевая ниша. Ладно походу я опять без всякой пользы ввязываюсь в малополезную (по крайней мере для меня ) дискуссию. Делайте как знаете, но я в таком проекте участвовать не буду.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 4:10 pm
by maximYCH
Mario, ну так предлагай. Я пока не вижу ничего кроме того, что я высказал про самообразование (тогда и целевая ниша автоматом).

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 4:14 pm
by Mario
Ну, да это ведь это я очередной раз начал тему: как все плохо и надо все менять и разумеется я предлагаю философские камни и панацею в огромных количествах. :twisted:
Максим ты не обижайся, но ты политик, тебе менеджером по продажам работать - вот там реальные успехи пошли бы.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 4:20 pm
by maximYCH
Mario, ну ты не первый, кто так говорит. Но я занимаюсь олимпиадным программированием. Я занимаюсь web разработками. Я занимаюсь изучением теории ОСестроения. Но _реализация таких вещей_ - да, в этом я откровенно слаб.
Собственно, почти все в этой теме высказались про "как все плохо и надо все менять и разумеется я предлагаю философские камни и панацею в огромных количествах", только в разных объемах и в разных областях.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 4:51 pm
by tsdima
Mario wrote:Делайте как знаете, но я в таком проекте участвовать не буду.
Ну и какой тогда был смысл отвечать в этой теме?

Пора переименовывать тему в "Споры о целесообразности нового ядра" и поместить её в "Разное".

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 5:05 pm
by Mario
tsdima wrote: Ну и какой тогда был смысл отвечать в этой теме?
Рассчитывал на добавление и этой задачки в общую диспозицию. Но к сожалению до некоторых вещей надо доходить самому. Раньше я тоже не принимал в расчет такие факторы и это было ошибкой.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 5:46 pm
by andrew_programmer
Размышления на тему,"KolibriOS и коммерция"....

Необходимо решить задачи.
1)Какие сегменты рынка должна занимать операционная система.
2)За счёт чего инвестировать разработку и получать прибыль.
а)Имеется некая компания OAO "Kolibri systems", которая продвигает операционную систему. Прибыль идёт от адаптации системы под конкретного клиента, разработку драйверов и софта для конкретного клиента.
б)Система абсолютно открыта и доступна всем. Заинтересовываем крупные компании в инвестиции в систему с целью адаптации системы под конкретное оборудование этой компании. В результате компания продаёт оборудование с этой системой и не платит денег за лицензию.
3)Разработать саму систему, инструменты для разработки по неё, софт. Если не будет софта, демонстрирующего конкурентоспособность, нечего вообще говорить о какой-либо прибыли, финансировании.

А теперь насколько это всё реально... Продвигать почти никому не известную систему, когда уже имеется Linux, QNX - это мягко говоря, трудно. windows я не рассматриваю, потому что у KolibriOS на десктопе без поддержки производителей железа шансов конкурировать с windows - нет. Пока не будет реально работающей системы, имеющей достаточную известность в определённых кругах, практически никто не будет вкладывать деньги в систему(за редким исключением).

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 6:37 pm
by tsdima
andrew_programmer wrote:1)Какие сегменты рынка должна занимать операционная система.
Там, где существующие системы не подходят. На данный момент у Колибри лишь одно преимущество - она компактная и не требовательная к ресурсам. На ум приходит пока два варианта:
- старые компьютеры, к сожалению таких всё меньше и меньше ввиду ограниченного их ресурса
- бездисковые станции, терминалы
andrew_programmer wrote:2)За счёт чего инвестировать разработку и получать прибыль.
а)Имеется некая компания OAO "Kolibri systems", которая продвигает операционную систему. Прибыль идёт от адаптации системы под конкретного клиента, разработку драйверов и софта для конкретного клиента.
Маловероятно. Конкретному клиенту нужны конкретные преимущества над существующими ОС, а этих преимуществ пока мало.
andrew_programmer wrote:б)Система абсолютно открыта и доступна всем. Заинтересовываем крупные компании в инвестиции в систему с целью адаптации системы под конкретное оборудование этой компании. В результате компания продаёт оборудование с этой системой и не платит денег за лицензию.
Не реально.
andrew_programmer wrote:3)Разработать саму систему, инструменты для разработки по неё, софт. Если не будет софта, демонстрирующего конкурентоспособность, нечего вообще говорить о какой-либо прибыли, финансировании.
Вот это и есть наша реальность. На данный момент.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 6:46 pm
by <Lrz>
Размышления на тему,"KolibriOS и коммерция"....
При такой постановке задачи, необходимо будет отказаться от ассемблера, как основного инструмента разработки.

Основные критерии:
1) Портируемость под различные архитектуры.
2) Масштабируемость.
3) Гибридность.

Для десктоп систем уровень софта не тот. Возможно применение для встраиваемых систем или для узко специализированных серверов или АРМ(автоматизированное рабочее место).

В качестве аргумента против существующих систем должны выступать качества такие как:
1) Скорость выполнения.
2) Real-time (или мягкий режим) опционально.
3) Компактность.
4) Максимальное использование возможностей железа.
5) Стабильность.

P.S.
ИМХО, я не претендую на правильность суждения.

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 7:02 pm
by maximYCH
SII (22:01:23 26/01/2010)
"нишу" обсуждать есть смысл разве что применительно к тому, на что ось должна быть способна. Понятное дело, что в десктопах винду не сдвинешь, в серверах -- линух и солярис, во встраиваемых решениях -- ВинЦЕ, КНХ, ЛынхОС... т.е. бессмысленно ставить себе задачу потеснить кого-то из существующих, надо лишь определить, на что ось должна быть способна технически

Re: Новая ветка ядра

Posted: Tue Jan 26, 2010 11:24 pm
by Serge
<Lrz>

Лучше всего этим критериям отвечает микроядро.

Пишется набор сервисов - подсистем и каждый может конфигурировать систему по своему вкусу.
Для десктопа нужна POSIX подсистема и Х сервер. Тогда там сможет работать весь gnu софт и Gnome.
Для особо талантливых POSIX + X + Wine.
Для встроенных систем posix + rt расширения.
И для любителей идти своим путём есть native api ядра и самописные оконные менеджеры и файловые системы.