Поддержка Rust переведена из экспериментальных в основные возможности ядра Linux

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 748
Зарегистрирован: 20.08.2022

#

Поддержка Rust переведена из экспериментальных в основные возможности ядра Linux
Дата публикации:Wed, 10 Dec 2025 08:52:51 +0300

На проходящей в эти дни конференции Maintainers Summit состоялось обсуждение результатов эксперимента по добавлению в ядро Linux возможности разработки компонентов на языке Rust. Собравшиеся участники признали эксперимент успешным и решили перевести поддержку языка Rust в категорию основных частей ядра, сняв с неё метку экспериментальной функциональности.
Три года назад возможность разработки драйверов и модулей на языке Rust была добавлена в ядро 6.1. В тех пор в состав ядра были включены абстракции для разработки на Rust драйверов для GPU, ФС, блочных устройств, сетевых адаптеров и USB-устройств. На языке Rust развивается драйвер Nova для GPU NVIDIA, asahi для GPU Apple AGX, Tyr для GPU ARM Mali, rust_ext2 c ФС Ext2. В состав ядра принята написанная на Rust реализация IPC Binder. Проект RROS развивает real-time подсистему для ядра Linux, написанную на Rust. Поддержка Rust неактивна по умолчанию и не приводит к включению Rust в число обязательных сборочных зависимостей к ядру.
По мнению сторонников продвижения Rust, данный язык исключает появление большинства ошибок, выявляемых в ядре и вызванных особенностями языка Си (corner case), что позволяет при рецензировании сосредоточиться на логических ошибках и состояниях гонки. Rust помогает избавиться от таких проблем, как обращение к памяти после её освобождения, выход на границу буфера, некорректное освобождение ресурсов при обработке ошибок и забытые проверки возвращаемых кодов ошибок. Применение Rust для нового кода также даёт возможность сократить время разработки, благодаря снижению трудозатрат на отладку и наличию в языке строгих гарантий, выявляющих ошибки на ранней стадии написания кода.
Противники внедрения Rust я ядро считают недопустимым использование нескольких языков программирования в сложных проектах - смешанные кодовые базы усложняют работу мэйнтейнеров, так как ставят их в зависимость от кода на другом языке. Например, при наличии обвязок на Rust разработчики подсистем, написанных на Си, должны учитывать влияние изменений на продолжение работоспособности обвязок.

Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=64401

Жизнь за Нер'зула!

Ответить