Rust будет принят в состав ядра Linux 6.1. Создан Rust-драйвер для Ethernet-чипов Intel

На мероприятии Kernel Maintainers Summit Линус Торвальдс объявил, что, если не всплывут непредвиденные проблемы, патчи для поддержки разработки драйверов на языке Rust будут включены в состав ядра Linux 6.1, релиз которого ожидается в декабре.

Из преимуществ появления поддержки Rust в ядре называется упрощение написания безопасных драйверов устройств за счёт снижения вероятности совершения ошибок при работе с памятью и мотивирование новых разработчиков включаться в работу над ядром. «Rust — это одна из тех вещей, которые, как я думаю, привлекут новые лица… мы стареем и седеем» сказал Линус.

Линус также объявил что в версии ядра 6.1 будут улучшены некоторые самые старые и фундаментальные части ядра, такие как функция printk(). Кроме того Линус напомнил, что несколько десятилетий назад компания Intel пыталась убедить его, сто будущее за процессорами Itanium, но он ответил «Нет, этого не произойдёт, поскольку для него нет платформы для разработки. ARM делает всё правильно».

Другой проблемой Торвальдс обозначил разнобой в производстве ARM процессоров: «сумасшедшие компании по производству оборудования из Дикого Запада, делающие специализированные чипы под различные задачи». Он добавил, что «это было большой проблемой когда появлялись первые процессоры, сегодня существуют достаточно стандартов для того, чтобы сделать простым портирование ядер на новые ARM процессоры».

Дополнительно можно отметить публикацию начальной реализации драйвера rust-e1000 для Ethernet-адаптеров Intel, частично написанного на языке Rust. В коде пока остаётся прямой вызов некоторых привязок на Си, но ведётся постепенная работа по их замене и добавлению Rust-абстракций, необходимых для написания сетевых драйверов (для доступа к PCI, DMA и сетевым API ядра). В текущем виде драйвер успешно проходит ping-тест при запуске в QEMU, но пока не работает с реальным оборудованием.

Источник: opennet.ru