Компьютеры с российскими процессорами получили поддержку языков Rust и Go

Процессор
Процессор

Набор разработчика для операционной системы (ОС) Эльбрус Линукс получил поддержку системных языков программирования Rust и Go, заявил сотрудник компании АО «МЦСТ» Антон Аникин 16 февраля на конференции Elbrus Tech Day.

Поддержка появилась в рамках набора разработчика «Эльбрус Линукс» (PDK) в опытном режиме. Набор поставляется отдельно от самой ОС. Сейчас он ориентирован на использование ядра Linux 5.4 в стабильной версии и 5.10 в экспериментальной.

«Помимо стандартных C и C++ сейчас мы систематически улучшаем поддержку системных языков нового поколения, а именно Rust и Go. Rust изначально спроектирован под использование инфраструктуры LLVM. И, в принципе, для нас это хорошо, потому что LLVM хорошо подходит для сочетания разных фронтендов и бэкендов», — заявил Аникин.

«Мы реализовали бэкенд из оптимизирующего компилятора. То есть это все тот же компилятор (фирменный компилятор LCC — прим. ИА Красная Весна), но оформленный в виде .so библиотеки. Он подключается бэкендом к модифицированному LLVM. Это дает также возможность использовать Rust в данный момент. Основная версия — 1.38. С LLVM 9 вместе. Следующий шаг будет из сороковой серии, судя по всему, 46-й (Rust 1.46 — прим. ИА Красная Весна). Для этого потребуется 11-й LLVM», — добавил он.

Поддержка языка программирования Go реализуется с помощью компилятора gccgo 9, а также экспериментально посредством LLVM.

Напомним, LLVM (Low Level Virtual Machine) — программная инфраструктура, реализованная на языке C++ и служащая для создания компиляторов и сопутствующих инструментов разработки.

Фронтендами для LLVM выступают различные языки программирования, в том числе высокого уровня. Бэкендом также могут являться различные компиляторы. Таким образом, появляется возможность генерации машинного кода под различные аппаратные платформы.

Возможности PDK реализуются в рамках работы над Эльбрус Линукс, однако позже стабильные наработки передаются разработчикам ОС Альт Линукс, Астра Линукс, QNX Neutrino, БагрОС-4000. Также осуществляется взаимодействие и поставка инструментов для разработчиков QP OS и МСВС (ОС вооруженных сил РФ).