Разработка, портирование и тестирование СПО для платформы «Эльбрус» (Игорь Молчанов, OSSDEVCONF-2023)
Материал из 0x1.tv
- Докладчик
- Игорь Молчанов
В работе описывается текущая ситуация с наличием СПО для платформы «Эльбрус», приводятся примеры таких проектов, обсуждаются проблемы портирования ПО и поддержки его инфраструктуры, а также взаимодействие с апстримами проектов и роль энтузиастов в данных процессах.
Содержание
Видео
Презентация
Thesis
В последнее десятилетие в мире наблюдается тенденция повышения популярности свободного программного обеспечения (СПО). В частности, с января 2013 по январь 2023 года доля GNU/Linux среди операционных систем настольных компьютеров выросла с 0,88% до 2,91%.
Эта тенденция особенно важна для систем с архитектурами процессора, отличными от x86_64: ассортимент доступного программного обеспечения для них значительно меньше, чем для x86_64, в особенности для архитектур, не известных широко во всём мире. Поскольку возможность портирования проприетарного ПО на такие архитектуры
разработчиком этого ПО маловероятна. А разработчиком архитектуры — как правило, вообще невозможна. Однако возможность
использования ПО с открытым кодом, в частности, СПО, на таких архитектурах принципиальна.
При этом для стабильного развития культуры портирования СПО важно при работе с разработчиками и энтузиастами уходить от сложившейся в России практики нелицензионного использования такого СПО[1] (в частности, невыдачи исходного кода производного проекта по запросу пользователя или линковки свободных библиотек с несвободным кодом).
В работе обсуждаются некоторые такие проекты, портированные автором на платформу «Эльбрус», а также вспомогательные проекты, разработанные (полностью или частично) автором под данную платформу и не только, которые доступны под свободными лицензиями, и описываются проблемы, возникшие при разработке/портировании и способы их преодоления, в том числе с помощью тестирования, а также сложности интеграции описанного ПО в дистрибутивы существующих для платформы операционных систем.
В частности, в работе обсуждаются:
- CMake ([2]), meson ([3]) — системы сборки;
- Taisei Project ([4]), GZDoom ([5]), wadtools ([6]) и др. — игры, игровые движки и утилиты;
- LAL Suite ([7]), BOINC ([8]), Milkyway@home ([9]) — научное ПО;
- Koishi ([10]), SIMDe ([11]) — вспомогательные библиотеки;
- REIMU ([12]), mcst-fruid ([13]), kexec-e2k ([14]) — программы управления;
- nemuno ([15]) — система организации ssh-аккаунтов на серверной инфраструктуре;
- и другие утилиты, разработанные или адаптированные автором.
Также рассмотрены дополнительные вопросы, позволяющие разработчикам получить доступ к машинам на базе платформы
«Эльбрус» и участвовать в разработке и портировании ПО.