Rust официально стал частью ядра Linux после завершения эксперимента Обложка: Skyread

Rust официально стал частью ядра Linux после завершения эксперимента

Новости
Главное:

  • Эксперимент по внедрению языка программирования Rust в ядро Linux признан успешным и официально завершён.
  • Rust становится официальным языком разработки ядра Linux наряду с C, хотя поддержка Rust пока неактивна по умолчанию.
  • Несмотря на сопротивление некоторых ветеранов и технические сложности, интеграция Rust в ядро продолжится по инициативе Линуса Торвальдса.

Ведущий разработчик Rust для Linux, Мигель Охеда, представил новый патч, который удаляет из документации ядра предупреждение о экспериментальном статусе поддержки Rust. Это символизирует официальное завершение эксперимента по внедрению Rust в ядро Linux, начатого в 2022 году с выходом версии 6.1. Эксперимент, в котором приняли участие 173 разработчика, признан успешным, и теперь Rust закреплён в проекте как постоянный язык программирования наряду с традиционным языком C.

Rust уже применяется в производственной среде: некоторые популярные дистрибутивы Linux поддерживают Rust, а миллионы устройств с Android интегрируют компоненты ядра, написанные на этом языке. В ядро включены абстракции для разработки драйверов различных подсистем, включая GPU, файловые системы, блочные устройства и сетевые адаптеры. Среди заметных проектов – реализация IPC Binder и драйверы для GPU Nvidia, Apple AGX, ARM Mali, а также real-time подсистема RROS. При этом поддержка Rust по умолчанию отключена и не является обязательной частью сборочной системы ядра.

Несмотря на достижения, процесс адаптации Rust в ядре сопровождается сложностями. Линус Торвальдс ранее выражал разочарование медленной интеграцией, объясняя это низкой мотивацией разработчиков, привыкших к C, осваивать новый язык, отличающийся по парадигмам и особенностям. В начале 2024 года лидер проекта по внедрению Rust покинул команду из-за внутреннего конфликта, что отражает сложности работы над интеграцией.

Противники внедрения Rust, включая сопровождающего ядра Кристофа Хеллвига, критикуют новый язык за фрагментацию кода, нечеткие языковые правила и добавленную нагрузку для мейнтейнеров. Тем не менее, Линус Торвальдс однозначно намерен продолжать интеграцию Rust, даже несмотря на возражения сообщества, подчёркивая, что решение принимает он как руководитель проекта.

Ключевым преимуществом Rust остаётся безопасность памяти, позволяющая снижать количество ошибок и уязвимостей, что является важным аспектом для ядра операционной системы. Несмотря на сохраняющиеся проблемы и необходимость длительной работы по развитию инфраструктуры, эксперты сходятся во мнении, что Rust станет значимой частью Linux в перспективе.

Tagged