Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024)

Материал из 0x1.tv

Версия от 14:25, 23 октября 2024; StasFomin (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Докладчик
Михаил Шигорин.jpg
Михаил Шигорин

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

Видео

Презентация

Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf

Thesis

До 2014

Не погружаясь в историю семидесятых годов прошлого века и далее, начнём с века нынешнего. К его началу в МЦСТ применяли Sun Solaris, а эксперименты с Linux пошли в ранних нулевых — соответственно часть образовавшейся культуры явно идёт ещё от Sun с её смесью жёсткой проприетарности и более поздней поддержкой СПО. Практика работы с МО РФ также способствовала укоренению принципа «как бы чего не вышло», существенно препятствующего инициативной публикации несекретных наработок.

При этом минимальный патч на binutils был предложен в апстрим ещё в 2008 году.

2014—2024

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

В это время патчи из МЦСТ стали попадать в более широкий круг апстримов: cmake, meson, flashrom, zstd... Но основной массив правок оставался закрытым — стоит заметить, что за информацией по e2k и впрямь охотились на Западе; так, осенью 2019 года на IRC-канале \#altlinux прозвучали невинные вопросы насчёт реверс-инжиниринга бинарника для e2k в рамках соревнований CTF с упоминанием имеющегося кроссового тулчейна.

При этом в мае 2021 года было опубликовано Руководство по эффективному программированию на платформе «Эльбрус»[1], частично документирующее систему команд.

В 2022 году произошёл ряд утечек исходного кода через нерадивых партнёров МЦСТ, одна из которых документирует систему команд полностью.

2024

3 июля 2024 года произошло событие, которому и посвящён этот доклад: компания МЦСТ объявила о состоявшейся публикации исходных текстов e2k-портов ядра Linux и системной библиотеки glibc, а также массива патчей для прикладных программ и библиотек — и запуске сайта Разработка на платформе Эльбрус[2].

Заметного влияния на сообщество это событие оказать ещё не успело, поскольку у партнёров исходные тексты и так в наличии, у сообщества — утечки; необходимо дальнейшее формирование инфраструктуры обмена текущими наработками.

Нужное

В дальнейшем, как упоминалось на этой конференции в 2023 году, потребуется отход от сложившейся практики, включая архивы вместо гитов и форки вместо соучастия — и переход к известной обкатанной технической инфраструктуре[3]:

  1. репозитории разработки кода (git);
  2. чат для быстрых обсуждений (telegram);
  3. почтовые рассылки для обсуждения по существу (mailman);
  4. отслеживание конкретных ошибок (bugzilla);
  5. накопление и систематизация опыта (wiki).

для уменьшения затрат времени и сил на постоянно идущий процесс обмена исходными текстами при разработке силами МЦСТ и партнёров, а также дальнейшего развития и более широкого вовлечения сообщества энтузиастов в деятельность по переносу, оптимизации, обновлению, исправлению и созданию программ.

Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024)!.jpg

Примечания и ссылки

  1. Руководство по эффективному программированию на платформе «Эльбрус» [1]
  2. Разработка на платформе Эльбрус [2]
  3. Создание Свободного Програмного Обеспечения [3]