KolibriOS: Интервью с Сергеем Кузьминым (Wildwest)

    Встречайте корпоративного юзера блога KolibriOS. От имени этого юзера будут публиковаться статьи, написанные авторами-фрилансерами в рамках «Блог KolibriOS ищет авторов», а также участниками проекта, не имеющими пользователя на Хабре, либо не желающими по какой-либо причине публиковать статьи от своего имени.

    В качестве первой публикации, предлагаем Вашему вниманию интервью с Сергеем Кузьминым (ник Wildwest), одним из «старожилов» в проекте KolibriOS (на Хабре W__W).


    1. Расскажите о себе, кто Вы и откуда? Чем занимаетесь?

    Я преподаю в одном из вузов Санкт-Петербурга — веду лабораторные и практикумы, читаю лекции. В науке занимаюсь алгоритмами автоматического анализа видеоинформации для систем компьютерного зрения и прикладного телевидения. Написал больше 40 статей, в прошлом году стал соавтором монографии. С открытия Coursera (весна 2012) слежу за курсами по технике и ИТ: некоторые просто скачиваю в надежде когда-нибудь посмотреть, а на других учусь — получил сертификаты от трех профессоров в области компьютерного зрения — Jitendra Malik, Guillermo Sapiro, Irfan Essa.

    2. Как долго Вы в этом проекте?

    Я узнал о ней (MenuetOS — прим. редактора) из печатной версии статьи www.comprice.ru/articles/detail.php?ID=43137 во второй половине июля 2003 года.

    Через несколько недель я вышел в интернет, зашел на menuet.narod.ru, скачал разные дистрибутивы. Первым я решил запустить немецкий дистрибутив Gerschi (menuet.narod.ru/arch2003_3.htm). Выглядел он очень красочно.



    Когда через некоторое время я запустил официальный дистрибутив, то был неприятно удивлен – он выглядел менее ухоженным. Тогда у меня не было стабильного доступа в интернет, так что я мог лишь раз в несколько недель заходить на сайты проекта. В 2004 году с наступлением лета я начал участвовать в обсуждениях на русскоязычном форуме, с осени в обсуждениях на англоязычных форумах. Потом стал заниматься CPUID и прочими вещами, которые описаны далее.

    3. Чем занимаетесь в проекте КолибриОС?

    В проектах MenuetOS и KolibriOS я занимался теми программами, которые были на тот момент не доделаны, а также журналистской, рекламной, правозащитной деятельностью. Расскажу по порядку:

    В MenuetOS была программа для показа частоты процессора. Я решил её развить и постепенно появился CPUID — программа показа характеристик процессора. Вначале интерфейс программы постоянно менялся, но потом стабилизировался.



    В ходе разработки была обнаружена неточность в ядре ОС, и я попал в список разработчиков MenuetOS. Потом в дистрибутив вошла и программа (CPUID — прим. редактора). В 2006-2007 году это была уже очень солидная программа, сравнимая с CPU-Z. Судя по всему, это была первая программа для MenuetOS/KolibriOS, в которой интерфейс программы менялся в зависимости от детектированного железа. Для процессоров Intel был обычный интерфейс, а для AMD появлялись дополнительные элементы — кнопка для выбора частоты шины (еще не был сделан детект частоты системной шины) и надпись с рассчитанным рейтингом производительности (справа вверху на рисунке). Надо отметить, что много людей помогали тестировать эту программу и писали для нее код, помогали с дизайном (@Heavyiron, Leency, Mario_Z, Ghost_nsk, halyavin, grechnik). Интересный приём был связан с красивой кнопкой вызова второго окна – поверх кнопки нарисовано изображение, и если пользователь нажмёт на изображение, то получится клик по кнопке. Внешне это выглядело как кнопка со скином, но на самом деле это было два разных компонента.

    Потом был PCIDEV — проект, начатый американцем. Он просто выводил много цифр без расшифровки и класс устройства. Я занялся декодированием цифр в понятное описание — названия фирм, подробное назначение устройства. В этот процесс включились и другие разработчики. Сейчас это одна из самых полезных программ.



    Следующая доработанная программа — Тетрис, написанный итальянцем. Для него я сделал паузу, т.к. во время игры мне часто приходилось отвлекаться, и не хотелось терять очки. Паузу я делал быстро, поэтому просмотрел возникший чит: во время паузы можно вращать фигуру и двигать её вправо-влево. Кто пофиксит чит, тот будет молодец (надо поставить проверки на нахождение в режиме игры или паузы в цикл обработки клавиатуры).



    Еще был незавершённый проект SuperMP3 — заготовка для музыкального плеера mp3 файлов. В нём тоже участвовали другие разработчики, но в итоге всё остановилось, т.к. была еще плохая поддержка звуковых карт.



    Моя журналистская деятельность началась с того, что я вёл новости альтернативных операционных систем на своём сайте, и в них много внимания уделял KolibriOS. Также я комментировал эти новости, так что новостная страница в некотором роде была блогом. Я брал интервью у лидеров проекта: немного общался с финном Вилле Турьянмаа (основателем MenuetOS), англичанином Майком Хиббетом, поляком Ярославом Пельцаром, белорусом Михаилом Семеняко (aka mike.dld) и Маратом Закияновым (aka Mario79, aka Mario_Z, aka Mario_r4). Марат потом попросил удалить интервью с ним с моего сайта. Много внимания уделял переводам различных статей и истории Menuet/KolibriOS (самая большая статья).

    В рамках рекламы ОС опубликовал две статьи в печатном виде ( www.comprice.ru/articles/detail.php?ID=42992, samag.ru/archive/article/1742 ) и ещё одну в электронном. Когда был релиз ОС, то многие из нашей команды шли на компьютерные форумы и сайты, чтобы написать об этом.

    (Небольшое лирическое отступление упрятано под спойлер — прим. редактора)
    Краткая история отделения KolibriOS от MenuetOS
    Летом 2004 года Вилле готовился к переезду в Париж, и назначил руководителем проекта Хиббета. Хиббет через некоторое время пропал, и появилась необходимость сменить руководителя проекта. Надо отметить, что в 2003-2005 годах на нашем форуме регулярно выкладывались новые фиксы, драйверы и программы, в том время как на официальном форуме большинство разработок касалось интерфейса, перевода и прочего моддинга ОС. Часть из наших разработок анонсировалась на официальном форуме и форуме компилятора FASM, но в дистрибутив не попадали, т.к. сами дистрибутивы собирались довольно редко и, видимо, из того, что присылали руководителям проекта на почту.

    В это непростое время я, вместе с другими членами нашей команды (Sniper, Mario79), пытался донести до Вилле и англоязычного сообщества мысль, что большинство реальных разработчиков MenuetOS находятся в странах бывшего СССР, и надо назначить руководителем проекта человека, который хорошо знает английский и русский языки. В общем, защищал права «советских» разработчиков. Наша команда видела в этой роли mike.dld, у которого были хорошие отношения с Вилле, и он также был в нашей команде. Это так и не удалось сделать: руководителем был назначен Пельцар, потом голосованием на официальном форуме его кандидатуру многие поддержали. Потом Пельцар ушёл, и проект остался без руководителя вообще.

    Самого Вилле ситуация с Menuet32 в этот момент уже мало интересовала, т.к. он занимался Menuet64 и регулярно выкладывал новые скриншоты. Отсутствие руководителя и регулярных официальных релизов дало новый импульс развитию дистрибутивов, одним из которых и был Kolibri. (Были также другие русскоязычные дистрибутивы, из которых Menuet RE долгое время считался основным, но потом его разработчик Иван Поддубный исчез.)

    Когда, через некоторое время, Вилле снова объявился и сказал, что 32-х битная ветка закрывается, и всем надо писать программы для Menuet64, то большинство разработчиков его не поддержало. Наша команда несколько дней с ним спорила на форуме, а потом просто объявила о своей независимости и переименовании дистрибутива Kolibri в операционную систему KolibriOS. Вилле это не понравилось, и потом он ещё много раз писал, что мы украли его код, а также удалял темы о KolibriOS на контролируемых им форумах. В итоге было добавлено упоминание MenuetOS в загрузочный экран, и проставлены копирайты в файлах ядра. (Упоминание на загрузочном экране было убрано CleverMouse в ревизии #3759 4 июля 2013 г., спустя почти 10 лет после того, как оно было добавлено, так как, по её словам, "в Колибри осталось менее 20% функциональности Менуэта" — прим. редактора.)

    В мае 2006 года я начал заниматься своей программой анализа видеоинформации, активно писал статьи по компьютерному зрению. Постепенно времени на Kolibri оставалось всё меньше и меньше. В итоге, осенью 2007 года я прекратил для неё разрабатывать, но продолжал время от времени заходить на форум и вики проекта. Недавно меня попросили добавить в программу CPUID поддержку современных процессоров. Также попробую порыться на винчестерах: судя по всему, многие программы просто забыты, и в их числе скринсейвер с геометрическими фигурами – шедевр демосцены.



    4. Что Вас привлекает в нём? Почему?

    Когда я её увидел, то ощутил большой контраст с тогдашними дистрибутивами Линукса. Тот помещался на несколько компакт-дисков, требовал переразбиения жёсткого диска, программы зависели от кучи библиотек… MenuetOS в этом плане был компактен и неприхотлив. Потом очень понравилось сообщество. Я много Осей перепробовал, участвовал в некоторых сообществах (русская раскладка клавиатуры в Syllable появилась по моей просьбе) и могу сказать, что, по сравнению с ними, команды MenuetOS/KolibriOS были гораздо более активны, интернациональны и отзывчивы.

    Выпускалось много статей, FAQов, проводились конкурсы на создание логотипов и программ, потом стали выпускать электронные журналы. Программирование под эту ОС изначально было не очень привлекательным, но постепенно появились макросы и библиотеки виджетов. Они в несколько раз ускоряют разработку приложений. API всё ещё развивается — недавно появилась поддержка работы с USB-устройствами. Было разработано несколько эмуляторов API KolibriOS для запуска программ в других операционных системах. Относительно легко изменить любую часть операционной системы.

    5. Какое будущее Вы видите у этой ОСи?

    С концепцией ОС первоначально была проблема — Вилле сделал концептуальную ОС, и, после доказательства концепции, необходимость каких-то дальнейших действий по развитию, видимо, для него стала не так очевидна. Поэтому он с радостью стал заниматься 64-битной версией – появилась новая цель. Но в итоге тоже ничего особенного не вышло, в том числе и из-за закрытых исходников. В этом плане коллективная разработка часто оказывается более продуктивной, т.к. цели у всех немного разные и получается универсальный продукт. С другой стороны, растёт количество специализированных под промышленное применение дистрибутивов и форков. Это, в общем, тоже позитивный процесс, если найденные в этих дистрибутивах баги описываются на форуме проекта и исправляются в основном дистрибутиве. О конкуренции дистрибутивов на данном этапе говорить не имеет смысла, хотя она безусловно бы подстегнула развитие ОС.

    С лидером проекта у нас в последние годы проблема. После ухода diamond’a ( grechnik) так и не вышло ни одного дистрибутива. Есть только регулярно обновляемые ночные сборки. Но мне кажется, что он выйдет в ближайшие месяцы, т.к. скоро 1 миллион строк (не считая библиотек на C, из-за которых неверно отображается общее количество строк — прим. редактора), и завершается Kolibri Summer Of Code.

    Сообщество постоянно растёт, особенно после создания группы в социальных сетях (для англоязычных юзеров была создана группа в Facebook — прим. редактора). В проекте есть первоклассные программисты — два наших разработчика (hidnplayr, Mario79) постоянно фигурируют в топе «Recently Active Contributors» на Ohloh. По этой же ссылке видно, что проектов на ассемблере довольно много, и можно надеяться на приход новых людей.

    Касательно промышленного назначения ОС – я назову пять примеров (остальные описаны на нашем форуме):
    1. MenuetOS/KolibriOS ставили в банкомат, и, в принципе, вполне реально написать соответствующий банковский софт;
      Под спойлером - фото MenuetOS, работающего в банкомате
    2. использовали на заводе для SCADA-системы;
    3. проводили численное моделирование спектров для задач радиофизики (Мессбауэровская спектроскопия) и даже защищали диссертацию — vak2.ed.gov.ru/idcUploadAutoref/renderFile/80179 (программа CMspectra сперва была написана для KolibriOS, затем портирована в другие операционные системы — соавтор Андрей Игнатьев, aka andrew_programmer);
    4. использовали на сервере для картографического (ГИС) сервера (подробнее);
    5. на железнодорожном транспорте для автоматического контроля состояния рельсов (контактного кабеля — прим. редактора) на основании анализа видеоинформации с проезжающего поезда (подробнее описано в комментарии снизу, оригинал — на нашем форуме).

    (На фото ниже — использование на заводе для SCADA-системы)


    Достаточно долго обсуждается вопрос встраивания KolibriOS в BIOS, что даст определенные возможности как программистам, так и пользователям. (Хотя уже даже есть один рабочий пример — прим. редактора.)

    Таким образом, при наличии рук и знаний, KolibriOS можно приспособить под любые задачи.

    Напоследок — атмосферные картинки фанатов: моя и южноамериканца.


    KolibriOS Project Team
    72,12
    Быстрая операционная система для бизнеса и хобби
    Поделиться публикацией

    Похожие публикации

    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 36

      +4
      Uplink: The Game.
        +2
        4. использовали на сервере для картографического (ГИС) сервера;
        5. на железнодорожном транспорте для автоматического контроля состояния рельсов на основании анализа видеоинформации с проезжающего поезда.


        Можно подробнее о проектах?
          +4
          Цитирую одного из разработчиков art_zh:
          Встраиваемые системы — это не только роботы.
          Хотя и роботы тоже.

          Возьмем, к примеру, «одноглазого» робота, который движется по скоростной железной дороге со скоростью 200 км/ч и наблюдает за состоянием контактной электросети.
          Контактный кабель — стальной пруток диаметром 20мм, вихляющий над токоприёмником из стороны в сторону с амплитудой 50см. На этом кабеле надо разглядеть зазубрины размером не менее 0,5 миллиметра.
          При обнаружении такой зазубрины — сохранить её фотографию и запомнить время и место (чтоб ремонтники знали где ее искать), а если все нормально — сохранять только один кадр из тысячи.

          Элементарный анализ такой (реальной!) задачи ставит очень жесткое ТЗ: надо оцифровать 112тыс. строк в секунду, по 2048 пикселей в строке, 2байта на пиксель. Итого — 460Мбайт/с.

          Эти полгига надо успеть протолкнуть в память, провести первичную обработку (определить положение троса), найти зазубрины, отобразить 10 картинок на экране, посчитать силу натяжения троса (по частоте биений) и отправить отчет на сервер.
          В QNX задачу решить до сих пор не удалось — жуткие дыры в видеопотоке (возможно, что причина не в системе, а в говнокоде). В Колибри принципиальных проблем (почти) нет. Аппаратная часть готова, причем наладка и тестирование нового железа проведены исключительно средствами Колибри.
            +3
            Оригинал цитаты отсюда. Только не рельсов, а контактного кабеля.
            +3
            Два американца делали свой дистрибутив MenuetOS/KolibriOS www.wemakeitbig.com/meos/ и говорили, что один из их серверов работает на их дистрибутиве. Давали ссылку на страничку, сейчас пытаюсь найти. В общем там был обычный en.wikipedia.org/wiki/Image_map — карта какого-то штата США с наложенной сеткой, можно было нажать на клетку и грузилось увеличенное изображение этой клетки.
          +5
          узнаю свою картинку с птичкой
            +1
            Привет, goglus — видишь, картинка стала популярной :-)
              +2
              привет, а годы бегут
                +2
                А ты их запри, пусть не бегут. :-)
            0
            два наших разработчика (hidnplayr, Mario79) практически догнали Линуса Торвальдса

            Ага, по количеству коммитов за период between Aug 2013 and Oct 2013. И при том, что Торвальдс сейчас занят в основном координаторской деятельностью.
              +3
              Только тс-с-с! :)
                +4
                А вы думаете Линус родился таким ловким сразу? Вот прямо из чрева был исторгнут и принялся клепать ядро? Мы же занимаемся в свободное от работы время, это же хобби.
                  0
                  Я за, как бы это сказать, корректность подачи информации.
                  А вообще я, кажется, замечаю странную особенность колибристов — готовность воспринимать слишком многое как наезд.
                    0
                    Так ведь с волками жить. :-)
                      0
                      Ohloh, грубо говоря, не подходит для статистического анализа (там много неточностей). Но если уж пользоваться им, то можно, например, посмотреть период between May 2012 and Jul 2012 — там hidnplayr на 2 месте, Mario79 — на 14 месте, а Linus Torvalds вообще отсутствует. А если between Apr 2012 and Jun 2012 — то Mario79 вообще на первом.
                        0
                        Ну если уж на то пошло, то с технической стороны вообще непонятен смысл сравнения с Торвальдсом. Можно было бы с тем же успехом со Столлманом сравниться, а что: и имя громкое, и на ассемблере давно не пишет.
                          0
                          Столлман у нас в проекте не котируется так как котируется Линус.
                            0
                            А это действительно странно: Торвальдс-то написал ядро для ОС Столлмана. (:
                              +2
                              Отредактировал и выкинул Линуса, раз он Вам так мешает :-)
                              А вообще я, кажется, замечаю странную особенность фантомасов — придти покритиковать Kolibri, и уйти. Пишите статьи о своих ОС — мы тоже покритикуем :-)
                                0
                                Спасибо!
                                замечаю странную особенность фантомасов — придти покритиковать Kolibri, и уйти

                                Мне кажется, фантомасы здесь — не определяющий признак. Ну и в конце концов, не патчей же вы от нас ждёте?
                                  +3
                                  Нет — я жду, что Вы напишете статью на Хабре об одной из своих ОС (PhantomOS, например), потратите на это время и силы, а я приду, прочту Вашу статью, найду в ней какую-то (на Ваш взгляд) несущественную неточность, и буду язвить об этом в комментариях. Именно это и происходит сейчас, только с Вашей стороны.
                                +1
                                Ну, мне лично субъективно намного более симпатичен Линус.
                    0
                    Синий цвет в начале статьи — это как дань скриншотам?
                      +3
                      Нет — случайно совпало :-) Нужно было как-то выделить, зачем создали ещё одного юзера, когда своих полно. Красный — первое, что пришло в голову, но он слишком яркий и вызывающий, и скорее ассоциируется с модераторами. Вторым попробовал зелёный — на моём мониторе стало незаметно отличие от текста статьи. Третьим — синий, и вроде бы стало сбалансировано: с одной стороны, видно отличие от самой статьи, с другой — не так вызывающе, как красный. А как бы сделали Вы?
                        +1
                        Серый не пробовали? Всё-таки это не настолько важная информация, чтобы выделять её яркими цветами.
                          +2
                          Согласен, исправил.
                      0
                      На сайте написано:
                      Kolibri… оптимизированы под процессоры х86
                      Планируется ли портирование под Raspberry Pi (ARM)?
                        +4
                        нет
                          +2
                          Ох, ну Вы хоть уже заданные вопросы читайте иногда: habrahabr.ru/company/kolibrios/questions/
                          Без злости, а просто мы уже в 100500 раз на этот вопрос отвечаем…
                            0
                            К сожалению, у меня по ссылке habrahabr.ru/company/kolibrios/questions/ — страница 404

                            А вобще очень болею за КолибриОС, с удовольствием читаю все новости о ней. Жаль с Ассемблером не знаком, а две попытки выучить провалились в банальной нехватке времени. Успехов проекту.
                              +1
                              Да, куда-то пропала страничка, но архив.орг сохранил

                              http://web.archive.org/web/20130831151019/http://habrahabr.ru/company/kolibrios/questions/
                                0
                                Вы правы, действительно страница пропала (правда, уже после того, как я дал линк на неё). Но это не наша заслуга — администрация Хабра почему-то решила удалить эту функциональность (задание вопросов компаниям) у всех компаний, буквально через день после того, как я дал линк на нашу страницу вопросов :-(

                                Тогда процитирую из archive.org, пока не стёрли и там:
                                > Планируется ли создание версии для ARM?
                                Нет, так как это невозможно — KolibriOS написана на ассемблере FASM с использованием инструкций x86, и портирование её на ARM будет означать практически полное переписывание с нуля. Кроме того, есть компьютеры на x86 размером и стоимостью как Raspberry Pi, что делает портирование не только невозможным, но также и бесполезным.

                                P.S. Тема с портированием KolibriOS на ARM, видно, настолько популярна, что в нашей сегодняшней статье ей посвящена целая ветка комментариев (включая ещё более развёрнутые ответы, почему мы это не делаем): habrahabr.ru/company/kolibrios/blog/200172/#comment_6942062
                          0
                          Спасибо, только сегодня узнал об этом проекте, сразу скачал iso и загрузил в VB.
                          Шикарнейшая система.
                          Если бы браузер чуть лучше, я бы использовал на нетбуке.
                            0
                            Пробовали netsurf?

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое