Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) (Новая страница: «;{{SpeakerInfo}}: {{Speaker|Михаил Шигорин}} <blockquote> </blockquote> {{VideoSection}} {{vimeoembed||800|450}} {{youtubelink|}} {{SlidesSection}…») |
StasFomin (обсуждение | вклад) |
||
;{{SpeakerInfo}}: {{Speaker|Михаил Шигорин}} <blockquote> Патчи, или правки исходных текстов для собираемости и работоспособности на платформе «Эльбрус», успели обрасти целым рядом мифов, будучи под неразглашением. Поскольку летом 2024 года большая часть патчей была опубликована, разберём обстановку — и мифы. </blockquote> {{VideoSection}} {{vimeoembed||800|450}} {{youtubelink|}} {{SlidesSection}} [[File:Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024).pdf|left|page=-|300px]] {{----}} == Thesis == === До 2014 === Не погружаясь в историю семидесятых годов прошлого века и далее, начнём с века нынешнего. К его началу в МЦСТ применяли Sun Solaris, а эксперименты с Linux пошли в ранних нулевых — соответственно часть образовавшейся культуры явно идёт ещё от Sun с её смесью жёсткой проприетарности и более поздней поддержкой СПО. Практика работы с МО РФ также способствовала укоренению принципа «как бы чего не вышло», существенно препятствующего инициативной публикации несекретных наработок. При этом минимальный патч на binutils был предложен в апстрим ещё в 2008 году. === 2014—2024 === С 2014 года наработки МЦСТ стали в принципе доступны на «гражданке», но лишь организациям: купить оборудование могли только юридические лица, а для получения документации и исходных текстов требовалось подписание соглашения о неразглашении. При этом стоит отметить, что с поставляемыми вычислительными комплексами «Эльбрус» в комплекте предоставлялись и ОС «Эльбрус» с компилятором lcc — для их получения, вопреки одному из мифов, подписание NDA не требовалось. В это время патчи из МЦСТ стали попадать в более широкий круг апстримов: cmake, meson, flashrom, zstd... Но основной массив правок оставался закрытым — стоит заметить, что за информацией по e2k и впрямь охотились на Западе; так, осенью 2019 года на IRC-канале \#altlinux прозвучали невинные вопросы насчёт реверс-инжиниринга бинарника для e2k в рамках соревнований CTF с упоминанием имеющегося кроссового тулчейна. При этом в мае 2021 года было опубликовано Руководство по эффективному программированию на платформе «Эльбрус»<ref name="elbrus_prog">Руководство по эффективному программированию на платформе «Эльбрус» [http://mcst.ru/elbrus_prog]</ref>, частично документирующее систему команд. В 2022 году произошёл ряд утечек исходного кода через нерадивых партнёров МЦСТ, одна из которых документирует систему команд полностью. === 2024 === 3 июля 2024 года произошло событие, которому и посвящён этот доклад: компания МЦСТ объявила о состоявшейся публикации исходных текстов e2k-портов ядра Linux и системной библиотеки glibc, а также массива патчей для прикладных программ и библиотек — и запуске сайта Разработка на платформе Эльбрус<ref name="devmcst">Разработка на платформе Эльбрус [http://dev.mcst.ru/]</ref>. Заметного влияния на сообщество это событие оказать ещё не успело, поскольку у партнёров исходные тексты и так в наличии, у сообщества — утечки; необходимо дальнейшее формирование инфраструктуры обмена текущими наработками. === Нужное === В дальнейшем, как упоминалось на этой конференции в 2023 году, потребуется отход от сложившейся практики, включая архивы вместо гитов и форки вместо соучастия — и переход к известной обкатанной технической инфраструктуре<ref name="producingoss">Создание Свободного Програмного Обеспечения [http://producingoss.com/ru/technical-infrastructure.html]</ref>: # репозитории разработки кода (git); # чат для быстрых обсуждений (telegram); # почтовые рассылки для обсуждения по существу (mailman); # отслеживание конкретных ошибок (bugzilla); # накопление и систематизация опыта (wiki). для уменьшения затрат времени и сил на постоянно идущий процесс обмена исходными текстами при разработке силами МЦСТ и партнёров, а также дальнейшего развития и более широкого вовлечения сообщества энтузиастов в деятельность по переносу, оптимизации, обновлению, исправлению и созданию программ. {{----}} [[File:{{#setmainimage:Патчи для Эльбруса (Михаил Шигорин, OSSDEVCONF-2024)!.jpg}}|center|640px]] {{LinksSection}} <!-- <blockquote>[©]</blockquote> --> <references/> * [http://mcst.ru/open-sourcing Открытие исходных текстов ПО для платформы Эльбрус] * [http://altlinux.org/Эльбрус/upstream#МЦСТ Wiki ALT Linux о МЦСТ] * [http://ixbt.com/cpu/e2k-spec.html Эльбрус Бабаяна и Pentium Пентковского] * [http://mcst.ru Официальный сайт МЦСТ] * [http://ineum.ru Официальный сайт ИНЭУМ] * [http://unipro.ru Официальный сайт Новосибирского центра информационных технологий УНИПРО] * [http://git.mentality.rip/OpenE2K Исходные коды Эльбруса] * [http://github.com/ilyakurdyukov/e2k-ports Патчи Ильи Курдюкова для e2k] * [http://gitflic.ru/user/erthink Проекты Леонида Юрьева] * [http://gitflic.ru/project/e2khome/lccrt Проект lccrt] * [http://0x1.tv/2a9-lets-cross-forks-shigorin Скрестим вилки, доклад Михаила Шигорина, на Application Developers Days 2011] [[Категория:OSSDEVCONF-2024]] [[Категория:Open-source projects]] [[Категория:Draft]] |
Версия 14:25, 23 октября 2024
- Докладчик
- Михаил Шигорин
Патчи, или правки исходных текстов для собираемости и работоспособности на платформе «Эльбрус», успели обрасти целым рядом мифов, будучи под неразглашением. Поскольку летом 2024 года большая часть патчей была опубликована, разберём обстановку — и мифы.
Содержание
Видео
Презентация
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]:
- репозитории разработки кода (git);
- чат для быстрых обсуждений (telegram);
- почтовые рассылки для обсуждения по существу (mailman);
- отслеживание конкретных ошибок (bugzilla);
- накопление и систематизация опыта (wiki).
для уменьшения затрат времени и сил на постоянно идущий процесс обмена исходными текстами при разработке силами МЦСТ и партнёров, а также дальнейшего развития и более широкого вовлечения сообщества энтузиастов в деятельность по переносу, оптимизации, обновлению, исправлению и созданию программ.
Примечания и ссылки
- ↑ Руководство по эффективному программированию на платформе «Эльбрус» [1]
- ↑ Разработка на платформе Эльбрус [2]
- ↑ Создание Свободного Програмного Обеспечения [3]
- Открытие исходных текстов ПО для платформы Эльбрус
- Wiki ALT Linux о МЦСТ
- Эльбрус Бабаяна и Pentium Пентковского
- Официальный сайт МЦСТ
- Официальный сайт ИНЭУМ
- Официальный сайт Новосибирского центра информационных технологий УНИПРО
- Исходные коды Эльбруса
- Патчи Ильи Курдюкова для e2k
- Проекты Леонида Юрьева
- Проект lccrt
- Скрестим вилки, доклад Михаила Шигорина, на Application Developers Days 2011