Re[2]: LUG [--Obscene--]
Hello Артём,
Saturday, February 7, 2004, 1:59:53 PM, you wrote:
>>АБ> Что вы понимаете под словами "нормальное микроядро"?
>>То, что из имеющихся ныне операционных систем на основе микроядра, ни
>>одна не конкурирует с такими операционными системами как Linux, BSD,
>>Solaris и др. Может быть слишком самоуверенное заявление...
АБ> Возможно, но, согласен, что только открытое ПО может быть "нормальным".
Б> Windows, да и Lindows туда не тянут.
A Mach 3.0 и Hurd - это самые что ни на есть открытые разработки, при
этом - микроядра...
>>Поэтому все и будут создавать дистрибутивы на основе нового микроядра,
>>воплощая новые информационные решения.
АБ> Еще раз определимся, что такое ядро.
> <...>
Что б не путаться в терминологии, потому как вышеприведенное
определение несколько многословно, скажем так: ядро - это
специализированная программа, работающая непосредственно с
аппаратурой и устанавливающая среду для выполнения различных
процессов.
АБ> Вряд ли мы сможем сделать какой-то прорыв в алгоритмической реализации
АБ> ядра.
Да ну... Конечно, не понятно ударение в фразе то ли на "мы сможем", то
ли "сделать какой-то прорыв". И если первое действительно "вряд ли",
то второе очень даже возможно.
АБ> То есть, если сейчас ядро напрямую не
АБ> поддерживает многозадачность (параллелизм), не поддерживает механизм
АБ> исключений, не поддерживает распределение памяти с автоматической
АБ> проверкой результата, не поддерживает классы, не поддерживает
АБ> автоматический контроль диапазона чисел, а делает все это только
АБ> посредством дополнительных, специально написанных функций, то можно все
АБ> это одновременно и элегантно получить, переписав его на языке
АБ> программирования Ada95.
Почему именно на Ada95?
АБ> Просто берем и реализуем на Ada те части,
АБ> которые раньше были сделаны на Cи, но очень некрасиво и нелогично (как
АБ> вспомогатальные функции).
Особено весело становится тогда, когда представляешь 5.5 млн. строк
кода, из которых надо выбрать те места, которые некрасиво написаны на
Cи, и их красиво переписать на Ada.
АБ> Многозадачность встроена в Ada, так что
АБ> специально делать ничего не надо, проверка диапазона и проверка памяти
АБ> тоже, исключения есть, классы тоже. Вот с этого и начать, что уже есть.
АБ> Сделать костяк на Ada, который можно назвать Microkernel.
На самом деле написание добротной архитектуры микроядра отнюдь не
тривиальная задача. ...даже на Ada...
АБ> Кто-то здесь хвалился, что может и имеет возможность переводить
АБ> документацию с английского. Так вот, лучше бы перевести руководство по
АБ> языку Ada95 на русский, т.к. такового (да и нормальных книжек) еще пока
АБ> нет. Это была бы неоценимая польза для русскоязычного ПО.
Кстати, хороший вопрос. А документация по Ada где-нибудь вообще
есть(на любом языке)? И можно ли почитать?
АБ> Далее. Если ядро было бы на языке Ada95, то интерфейс ядра можно было бы
АБ> сделать "адовский", что побуждало бы разработчиков ПО с целью наибольшей
АБ> эффективности создавать новое ПО на языке Ada.
АБ> Создана же целая ОС - AdaOS.
И как, пишут под AdaOS ПО?
>>АБ> Это не так сложно, как кажется. Конечно, есть разные принципы
>>АБ> разработки. Есть одно, другое, третье. Но, скажите, разве нельзя,
>>АБ> скажем, обойтись двумя графическими интерфейсами?
>Нет нельзя. Уже не получится...
АБ> Почему?
:)) Существует множество пользователей и разработчиков привыкших к
нескольким графическим интерфейсам. Поэтому это вызовет праведное
негодование тех, чей любимый интерфейс не будет использоваться дальше.
>>Да и конкуренция порождает развитие. Или нет?
АБ> Нам надо выбрать из всего то, что достаточно для наших задач. Зачем нам
АБ> много?
Дабы породить конкуренцию. Это нормальный механизм рынка. Вопрос
"Зачем нам много?" ведет к уменьшению роли обратной связи в разработке
программного обеспечения. В конечном итоге, мы можем получить
разомкнутую систему регулирования, выражаясь в терминах ТАУ, а это
ведет к уменьшению точности управляемого параметра. :))
АБ> Если, скажем, QT есть, то он, конечно, красив. Но ведь
АБ> возможности gtk ничуть не меньше. А QT ведь не распространяется по GPL.
А BSD тоже не распространяются под GPL. И всеми любиый Apache не
распространияется под GPL. И при этом никто и не подумает назвать эти
продукты несвободными. Это просто другое понимание свободы.
Использование или неиспользование GPL далеко не повод выносить оценку
проектам. Imho это не лучшая политика сообщества FSF, при всем моем
уважении к Столману...
>>Как сказал бы дюдюшка
>>Билл: разве нельзя обойтись двымя операционками, например, XP и Server
>>2003?
АБ> Да, он бы явно забыл о Linux... Но ведь gtk и tk мультиплатформенные!
АБ> Разрабатывай для любой ОС!
На самом деле смысл был другой: кому-то нравится один инструмент,
кому-то другой, и таких инструментов десять-двадцать, то это далеко не
повод отбирать у всех привычные инструменты, чтобы сократить число
оных до двух-трех, ибо "зачем нам больше".
Если инструмент создан, но не используется - он сам умрет, но если он
используется, значит - он нужен. Простая логика.
>>АБ> Один для компилируемых
>>АБ> языков, второй - для интерпретируемых. Например, gtk2 и tk?
>>И как ты собираешься это делать? Точнее какими способами?
АБ> Дать рекомендации писать только для этих GUI (а если кому-то эти GUI не
АБ> понравятся - предложить их улучшить), включать в дистрибутив по
АБ> возможности "правильные" интерфейсы.
Данная проблема решалась проще. Когда нексолько компаний (Digital, HP,
IBM и другие, сейчас не вспомню) объединились в Open Software
Foundation(OSF). И основной целью OSF стала разработка ОС, которая
могла составить конкуренцию разрабатывающейся в то же время SunOS
(на основе SVR4), и в то же время была свободна от лизензионных
ограничений AT&T. OSF распространила среди своих членов "Запрос на
технологии"(в оригинале, могу ошибится, "Request for Technology") и
выбрала из полученных технологий лучшие по ряду параметров. Кстати
сказать, после этого OSF выпустила небезизвестный Motif, а потом уже
OSF/1.
АБ> Да, про Assembler забыл. Но он используется редко (только для ядра и
АБ> утилит). Мы же говорим больше про приложения. И еще ошибка: PHP - не
АБ> универсальный язык.
Assembler не заменим и для прошивки микроконтроллеров, ПЗУ и вообще
аппаратных средств.
Но все равно набор языков достаточно спорен...
АБ> В России должен был властвовать царь. Но теперь, в силу исторических и
АБ> др. причин, сложно сказать какой из политических режимов лучше. Конечно,
АБ> в идеале, единоличная власть одного человека.
Ваши идеи, батенька, как в политике, так и в программировании очень
спорны.
>>Т.е. ты хочешь реализовать подобную схему: (а) собирается ядро и
>>минимально необходимый набор приложений, т.е. даже еще без X Window
>>System,
АБ> Ну, собраны они должны быть еще разработчиком дистрибутива, хотя,
АБ> впрочем, одним из заключительных этапов установки можно предусмотреть
АБ> самосбор всех используемых пакетов. А установка уже графическая! Если
АБ> пользователь не поставит XWindows - пусть не ставит, но предупреждение
АБ> об неустановленной графической среде будет выведено.
АБ> А чем .deb .rpm xfs или NTFS лучше? И какое название является, например,
АБ> более удобочитаемым?
Из вышеперечисленых - deb. :))
А что касаемо названия, тот же нелюбимый тобой Debian запоминается
лучше, нежели FTS. Попробуй кому-нибудь сказать FTSLinux, и через день
спросить "как я сказал?", я уверен 9 из 10 или не ответят, или
ошибутся. Но, в принципе, не так уж это и влияет на работоспособность
системы... Кстати, а что ж оно означает? Или это просто ты словарь в
призвольных местах открывал - вот и получилось...
АБ> Но вот кто-то хотел привести описание sysinstall.
Забей... это я так брякнул... немножко другое имел ввиду...
АБ> Еще
АБ> функция: иногда демон отслеживает (с помощью find) давно неиспользуемые
АБ> файлы пакета и предлагает и удалить.
А если я дату на год вперед случайно отодвинул, он мне и ядро
предложит удалить? Незнаю-незнаю подобная функция не очень-то и
полезна. Сильно раздражать будет.
>>А как будет с реализацией подобной схемы?
АБ> Еще пока неясно. А какие могут быть проблемы?
Я спрашивал не про проблемы, а про идеи реализации...
Не принимай уж сразу все так в штыки.