Дайджест по итогам 2015 года

    Мы решили поздравить всех читателей блога с наступившим Новым годом и подвести итоги прошедшего. Конец 2015 года ознаменовался круглыми числами — 6000-й билд в SVN и 5000-й участник группы https://vk.com/kolibri_os социальной сети ВКонтакте.



    Материал дайджеста подготовлен W__W при моем скромном участии.



    Изменения были почти по всем направлениям:
    • приходили и уходили разработчики;
    • дополнялось API операционной системы;
    • улучшались программы, драйверы и библиотеки;
    • появились новые средства разработки;
    • проводились акции и конкурсы.


    Разработчики

    В 2015 году к нам присоединились несколько программистов, из которых особую активность проявили Pathoswithin и pavelyakov. Pathoswithin занимался улучшением поддержки файловых систем, в том числе NTFS (удаление и создание файлов и папок, запись и перезапись файлов без изменения их размеров), масштабируемыми шрифтами, исправлениями программ — всего 58 ревизий. pavelyakov занимался созданием библиотек для языка C--, исправлениями программ — всего 66 ревизий. Также он разрабатывал интерпретатор высокоуровневого ассемблера и визуальный редактор интерфейса программы с последующей трансляцией в код языка С--.

    Проект покинули или ушли в длительный отпуск:
    Mario — человек, стоявший у истоков KolibriOS, и один из ведущих разработчиков ядра, драйверов и программ.
    SoUrcerer — разработчик, портировавший множество программ и написавший тестовый драйвер для принтеров.
    yogev_ezra — PR-менеджер, организатор конкурсов, программист для процессоров семейства Vortex86.

    API и возможности ядра KolibriOS

    Отметим следующие достижения:
    Pathoswithin — повышение скорости работы с IDE-дисками.
    Pathoswithin — улучшение поддержки файловой системы NTFS. Комментарий к первой версии кода 7мая
    … В общем, дело идёт гораздо медленнее чем я ожидал, но всё-таки, обществу с отсутствующей ответственностью для осторожного тестирования представляется код с ограниченными возможностями. Поддерживается создание (копирование) файлов если есть место в файловой таблице и в узле каталога, иначе вежливо отправляет дописывать. Также, карта раздела кэшируется кусками по 32кб, что эквивалентно 1гб дискового пространства (не тестировалось)...
    Текущие возможности
    Создание файлов/папок, если есть место в файловой таблице и в узле папки.
    Удаление, если индекс файла в папке не указывает на подузел.
    Редактирование/перезапись без изменения размера.

    Pathoswithin — новый системный шрифт с возможностью масштабирования.
    Pathoswithin — новые события мыши.
    Serge — поддержка HPET.
    Serge — ускорение загрузки ядра.
    GerdtR — функция сделать окно поверх всех, позади всех или на уровне рабочего стола (самый нижний «слой»).
    hidnplayr — работа с любой из поддерживаемых сетевых карт, а не только с первой обнаруженной.

    Новые функции и подфункции:
    Функция 18.19.6 — получить задержку для двойного нажатия мышью;
    Функция 18.19.7 — установить задержку для двойного нажатия мышью;
    Функция 18.25.1 — узнать положение окна относительно других окон;
    Функция 18.25.2 — установить положение окна относительно других окон;
    Функция 26.10 — получить значение высокоточного счётчика времени;
    Функция 37.3 — состояния и события кнопок мыши;
    Функция 48.9 — узнать режим сглаживания шрифтов;
    Функция 48.10 — установка режима сглаживания шрифтов;
    Функция 48.11 — узнать размер шрифта;
    Функция 48.12 — установить размер шрифта;
    Функция 74.4 — узнать указатель на сетевое устройство;
    Функция 74.6 — узнать значение счётчика пакетов TX;
    Функция 74.7 — узнать значение счётчика пакетов RX;
    Функция 74.8 — узнать значение счётчика байтов TX;
    Функция 74.9 — узнать значение счётчика байтов RX;
    Функция 74.10 — узнать статус соединения;
    Функция 76 — настройки и статистика сетевых протоколов.

    Программы, драйверы и библиотеки

    Переработан файл macros.inc, который используется во многих программах.

    Создан файл KOSfuncs.inc с именами функций и констант, позиционируемыми как стандартные и рекомендуемые к использованию в программах, написанных на FASM.
    Предыстория.
    Начинающий разработчик ALEXS1983 11 декабря создал тему «Названия системных функций» для обсуждения нечисловых, а буквенных названий функций, которые бы стали в дальнейшем стандартом. ALEXS1983 предложил несколько вариантов, которые активно обсуждались. Далее Pathoswithin 18 декабря предложил вариант, рассматриваемый как кандидат на утверждение. Данный вариант был принят с некоторыми поправками и 22 декабря был сделан коммит, который как нельзя лучше подходил юбилейному числу — 6000.
    Далее по плану будет утверждение имен функций для ЯВУ и Style Guide для С--.

    Из новых программ отметим следующие:
    "@open" (разработчик e-andrew) — системная утилита, служащая для открытия файлов по ассоциации. Это был первый шаг от избавления зоопарка файлов ассоциаций у файловых менеджеров и других программ. С ревизии 5396 программа в составе ночных сборок.

    image

    «Pixie Player» (разработчик Leency) — музыкальный плеер (фронтэнд для MiniMP3).

    image

    «FB2 Reader» (разработчик akron1) — читалка fb2-книг

    image

    Средства разработки

    В конце года большой интерес вызвали проекты участника pavelyakov:

    Интерпретатор программ на высокоуровневом ассемблере

    image

    Визуальный редактор интерфейса приложения с последующей трансляцией в С--



    Акции и конкурсы

    18 января были подведены итоги конкурса игр:

    Победители конкурса:
    1. LaserTank — разработчик ZblCoder. Язык программирования: C++. Компилятор: MSVC (VS2013). image

    2-3. N-sider — разработчик eugene455. Язык программирования: C. Компилятор: TinyC / GCC. image

    2-3. Dungeons of Augastes — разработчик Anton_K. Язык программирования: Assembler.
    Компилятор: FASM. image

    4. 21days — разработчик igevorse. Язык программирования: C++. Компилятор: GCC. image

    21 февраля начат конкурс «Нарисуй или улучши иконку Колибри»

    4 мая открыт приём материалов для блога компании на Хабрахабре. Пишите Punk_Joker о предполагаемых темах статей для координации работы над ними и составления графика публикаций.

    Статистика юбилейных ревизий:
    билд 6000 — 22 декабря 2015 — Pathoswithin — 523 дня
    билд 5000 — 17 июля 2014 — Clevermouse (на Хабре CleverMouse) — 281 день
    билд 4000 — 9 октября 2013 — Mario79 (на Хабре Mario_Z) — 339 дней
    билд 3000 — 4 ноября 2012 — Leency (на Хабре Leency) — 486 дней
    билд 2000 — 7 июля 2011 — Mario79 (на Хабре Mario_Z) — 893 дня
    билд 1000 — 25 января 2009 — diamond (на Хабре grechnik) — 1207 дней
    билд 1 — 6 октября 2005 — halyavin (на Хабре halyavin) — начало использования SVN

    Последняя тысяча далась тяжелее, чем предыдущие, из-за смены поколений участников проекта и длительного отпуска Сlevermouse.

    В заключение скажем, что в прошедшем году было анонсировано начало работ над несколькими программами, в том числе над двумя браузерами, выпуска которых мы вместе с вами ожидаем в 2016 году.

    Счастливого 2016 года!
    KolibriOS Project Team 67,38
    Быстрая операционная система для бизнеса и хобби
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 21
    • +9
      Вот так неожиданно в один день обнаруживаешь себя автором первой ревизии. А я всего лишь настроил SVN сервер и убедил Mario79 его использовать.
      • +4
        Внедрение чего-то, это не такая уж и мелочь.
      • 0
        Удачи вам!
        А что планируется в этом году?
        • 0
          Особых планов пока нет. Но точно будет полноценная запись на NTFS, и надеюсь появится браузер (сейчас в этом направлению ведется более активная работа)
          • +1
            А кто работает над браузером? С нуля пишут или портируют что-то? Помниться sourcerer пытался браузер написать, но об этом два года ни слуху, ни духу.
            • 0
              Leency решил переписать свой браузер с нуля. И hidnplayr пишет свой тоже с нуля…
              • 0
                Leency hidnplayr
                А реально ли в одиночку написать браузер, на котором можно беспроблемно просматривать все (ну или хотя бы большинство) современные сайты? Тем более на ассемблере.
                Или упор будет сделан на легкость аля Links?
                • +2
                  Привет,

                  Нет. На данный момент самостоятельно написать браузер не реально. Кто-то пошутил, что любая программа в процессе своего развития стремиться стать операционной системой. Современные браузеры подошли к этому очень близко.
                  Над ними работают десятки и сотри программистов. Исходники Chromium несколько лет назад «весили» 300 Мб, сейчас уже 2,2 Гб.
                  2,2 Гб, Карл!!!

                  > Leency решил переписать свой браузер с нуля.
                  Основной дистрибутив Колибри — это img образ размером 1.44 Мб. Сейчас в нем есть браузер WebView, который был одной из моих первых программ для Колибри, потому код в нем не ахти. Я делаю попытку исправить ошибки прошлого и переписать его, т.е. сделать тот же текстовый браузер, но уже с хорошим кодом. Мне это просто интересно, ничего более.
                  Грустная история WebView http://kolibri-n.org/inf/webview/webview
                  Другие мои программы имеют более веселую судьбу.

                  Один наш друг из Индии занимается портированием Netsurf, пожелаем ему удачи.
                  • 0
                    Вопрос был скорее риторический. Очевидно, что крупный софт в одиночку написан быть не может. Успеха в любом случае.
              • 0
                Что касается порта NetSurf, то это был один из частично успешных проектов GSoC 2014 года. Индус, который был в GSoC студентом, время от времени заходит и обещает им снова заняться. Вот текущее состояние github.com/ashmew2/netsurf-kolibri
                • 0
                  Помимо выше сказанного, один из студентов GSoC 2014, Ashmew2, продолжает работу над Netsurf. Сейчас он работает над нативным для Колибри интерфейсом, и внедрением наработок по портированию в основное дерево проетка Netsurf, чтобы ядро браузера оставалось вктуальным, без особых усилий со стороны команды KolibriOS.
            • –3
              В golang, неплохо было бы, добавить поддержку KolibriOS.
              • 0
                Как пощупать визуальный редактор? Прочитал все 4 страницы форума и так и не нашел.
                • 0
                  Нагуглил compiler.esy.es, но работоспособность неизвестна.

                  • 0
                    Немного потестировал: в Firefox сайт грузит, но добавление компонентов неработает; в Chrome нормально добавляются компоненты, события компонентов (можно писать обработчики событий), можно менять текст, цвет и прочие параметры для компонентов, но с компиляцией проблемы. Можно скачать описание формы в неком формате *.kcm.
                  • 0
                    Он все еще в разработке, потому автор его и не выкладывал. Но сейчас у него времени поубавилось, в связи с тем, что сейчас он в армии.
                  • 0
                    Где достать стабильный релиз? Пробовал от 2009, но это, простите, совсем старый. Тот, что nightly вылетает с ошибкой в виртуалке.
                    • 0
                      Странно, у меня все отлично работает. Какая виртуалка? Настройки?
                      • 0
                        VirtualBox 5.0.8, Type:Other, Version:Other/unknown, образ как livecd подключен.
                        • 0
                          Какая ревизия? Попробуйте текущую последнюю сборку.
                          • 0
                            Можешь видео записать? Или скрин?
                            Кстати, если в синем экране спрашивает сохранить настройки, не сохраняй.

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

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