Можно ли быть немножко беременным, или Российское проклятье Open Source

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Ровно два года назад, в апреле 2019 года, произошло знаменательное событие для всех сторонников свободного и открытого ПО, которые следят за Российскими новостями. АО «МЦСТ» "опубликовало" ОС Эльбрус для свободного скачивания. И несмотря на некоторые сложности в самом начале из-за возникшего ажиотажа, этот дистрибутив остается в свободном доступе по сей день и даже продолжает периодически обновляться.

На текущий момент доступны для скачивания версии «Эльбрус Линукс» 6.0.0 на базе ядра Linux 5.4 и версии 5.0-rc3 и 4.0.4 на базе ядра Linux 4.9.


Я специально написал слово «опубликован» в кавычках, т.к. на тот момент исходные тексты дистрибутива Эльбрус Линукс в свободном доступе отсутствовали. Два года назад в разговоре с CNews директор по маркетингу МЦСТ Константин Трушкин сообщил, что
… исходные коды на продукты компании пока недоступны ни для самостоятельного скачивания, ни по запросу, но в скором времени компания намерена их открыть.

Разные пакеты ПО выпускались МЦСТ под различными открытыми лицензиями, и под ними же будет происходить распространение исходных кодов.

Раскрывая исходные коды, компания преследует маркетинговые цели, связанные с продвижением продуктов МЦСТ, а также стремится расширить комьюнити разработчиков ПО под ОС «Эльбрус».

Так где можно получить исходники «Эльбрус Линукс»?

Если кратко — нигде. «Обещать не значит жениться» и по прошествии двух лет, исходные коды «Эльбрус Линукс» так и не были опубликованы и не предоставляются по первому запросу, как того требует условия использования кода под GPL лицензией.

Как написали в комментариях к одной из новостей про новую версию «Эльбрус Линукс»,
Ну, и с чисто прагматической точки зрения, несоблюдение GPL российскими компаниями на данный момент скорее всего не имеет никаких юридических последствий, тогда как несоблюдение требований товарища майора грозит неиллюзорными уголовными сроками. Причём договориться о публикации исходников можно, например, с майором ВС, а придёт за тобой майор ФСБ, который не является правообладателем, но чутко бдит.

Конечно хорошо, что хоть некоторые разработчики осознают, что данные действия нарушают условия с GPL лицензии, но и сделать с этим они ничего не могут, т.к. одно дело — чьи-то права там, а ведь ты сам и твоя семья тут.

Поэтому вот так и выходит, нарушение GPL лицензии вроде бы как немножко есть, но и стыдить за это АО «МЦСТ» при таких обстоятельствах бессмысленно, т.к. нарушение происходит не по своей воле и объясняется строгостью защиты государственной тайны.

Правда, говорят, что под грифом секретности находятся не сами исходные тексты «Эльбрус Линукс», а только набор инструкций микропроцессора «Эльбрус», но это отнюдь не упрощает публикацию исходников ОС, которые все так же передаются только юридическим лицам с лицензиями от регуляторов и под подписку о не разглашении.

Набор разработчика «Эльбрус Линукс» (PDK)
Комплект исходных текстов, патчей и инструментов сборки прикладных пакетов дистрибутива «Эльбрус Линукс».
  • ТВГИ.00333-02 «Система программирования и окружение сборки» — Кросс-компилятор, необходимые библиотеки и заголовочные файлы для сборки программных пакетов на x86-компьютерах для архитектур Эльбрус, SPARC, x86.
  • ТВГИ.00333-03 «Патчи» — Инструкции для автоматизированной корректировкии исходного кода программных пакетов (ТВГИ.00333-05) для совместимости с системой программирования платформы Эльбрус.
  • ТВГИ.00333-04 «Инструменты сборки» — Кросс-платформенная система сборки Any.
  • ТВГИ.00333-05 «Оригинальные исходные тексты» — Авторские варианты исходных текстов прикладных программных пакетов, которые корректируются патчами (ТВГИ.00333-03) в ходе автоматизированной сборки.


Набор исходных текстов прикладных пакетов (ТВГИ.00333-05) и набор патчей (ТВГИ.00333-03) по составу и номерам версий соответствуют той версии дистрибутива «Эльбрус Линукс» (ТВГИ.00333-01), вместе с которой выпущен набор разработчика.

Ядро Linux, система программирования и математическая библиотека EML не входят в набор прикладных пакетов (ТВГИ.00333-05) и набор патчей (ТВГИ.00333-03). Их исходные тексты можно получить только по отдельному официальному запросу (кроме компилятора — его исходные тексты не выдаются).


А самое интересное, что можно сколько угодно выпускать железо для оборонки, но если производитель все же хочет выходить на гражданский рынок (В России выпустили «гражданский» отечественный планшет на процессоре «Эльбрус»), то невыполнение условий GPL лицензии не только минусует ему карму в глазах СПО сообщества, но и является нарушением законодательства.

Тем не менее, недавно нашлись самоотверженные люди, которые путем реверс-инжиниринга системы команд процессора и с помощью доступной документации смогли подготовить набор патчей к QEMU и опубликовали раннюю версию неофициального эмулятора архитектуры Эльбрус 2000.
На данный момент эмулятор поддерживает только 64-битные программы, скомпилированные под Linux. Реализованы почти 80% набора инструкций Эльбрус-8С.

Может показаться, что это небольшой шаг вперед к раскрытию секретного набора команд процессора Эльбрус. Но мне кажется, что в данной ситуации очень большая удача уже в том, что ребятам не предъявлены обвинения в разглашении государственной тайны или в каком-нибудь неправомерном доступе к охраняемой информации. И причем информации не абы какой, а от которой зависит обороноспособность страны!

Но в этой ситуации странно немного другое. Совсем недавно на Хабре была статья, что китайская компания Loongson Technology разработала с нуля новую процессорную архитектуру.

По сути, китайский процессор Loongson, это аналог российского «Эльбруса». Конечно архитектура и система команд этих процессоров различаются, но они являются аналогами по своему прямому назначению — обеспечение технологической независимости страны от технологий потенциального противника.

Вот только в Китае не делают из этого государственной тайны! Как в комментариях к той статье написали:
В Китае уже формируют альянс «Автономных командных систем». Члены альянса смогут использовать набор инструкций LoongArch бесплатно. Члены альянса могут получить проекты ядра процессора Loongson бесплатно. А руководство по процессору Loongson 3A4000 на китайском лежит в открытом доступе.

Проверил, действительно лежат: www.loongson.cn/product/cpu/3/3A3000.html. Техническая спецификация на микропроцессор и руководство пользователя в двух частях (правда на китайском).

Неужели в Китае не понимают, что они открывают систему команд и для потенциального противника? Или может быть административные ограничения для получения технических спецификаций микропроцессора и передача исходников под NDA требуется не для защиты обороноспособности страны, а для каких-то других целей?

Ведь у любой медали есть две стороны. Последствия закрытости «Эльбруса» для разработчиков очень хорошо описаны на Хабре про российское импортозамещение на практике. Это своего рода плач Ярославны, смысл которого передается всего двумя абзацами:
Не буду повторяться в тысячный раз, что такое отечественное производство микропроцессоров, почему «Эльбрус», а не «Байкал» и т.д. Об этом были написаны уже километры текста. Речь пойдет о другом – почему так трудно перейти на «Эльбрус» и в чем заключаются эти сложности. Ну, помимо стоимости…
Подводя итог, могу сказать следующее: до тех пор, пока не будет разорван цикл «будут продажи – будет софт, будет софт – будут заказы», с мертвой точки ничего не сдвинется. Будут компании с долей госкапитала закупать «Эльбрусы», но приведет это лишь к тому, что ПАКи будут выполнять роль подпорок для столов и тумбочек, как это происходит сейчас. Они просто пылятся на складах, потому что закупившие их компании просто не понимают, что с ними делать.

Можно долго ссылаться на различные причины, которые мешают выполнить условия GPL лицензии. А можно хотя бы попытаться разрубить этот гордиев узел. Неужели нельзя с помощью профильных ИТ ассоциаций поднять вопрос на самый верх? Вдруг случится чудо и цифровизация экономики принесет реальную пользу в данном случае?
Источник: https://habr.com/ru/company/timeweb/blog/554858/


Интересные статьи

Интересные статьи

В данной пошаговой инструкции мы подробно опишем весь процесс получения доступа к WhatsApp Business API через официального партнера Facebook — сервис Gupshup и подключени...
Фрагмент комикса с простым объяснением, что такое числа с плавающей запятой Когда речь идёт о повышении квалификации программиста, мы часто говорим о тестировании, написании кода дл...
Что такое Terraform 12 и Terragrunt, и как это можно применять для Multi-Cloud инфраструктуры. Мы поговорим про IaC (Инфраструктура как код) влияние на современный мир и о том, как Ter...
Сегодня, когда всё популярнее становится трассировка лучей (ray tracing) выполняемая из «глаза» камеры, этот урок нужно усвоить заново: код становится лучше, а жизнь — проще, если цен...
Россия иррациональна. Есть правильные практики, есть сто раз ощупанные грабли, но всё равно с завидным постоянством случается что-то эпическое. Иногда по причине: «Ну уж меня-то точно пронесё...