Новости Пятничный сюрприз: Rust убивает последний оплот C в графических драйверах Linux

NewsMaker

I'm just a script
Премиум
19,406
40
8 Ноя 2022
Код из Rust может вскоре заменить большую часть существующих реализаций.


qd5ri77398lc5gpdau07zn3ahijxsgse.jpg


В пятницу вечером неожиданно был представлен Tyr — новый графический драйвер для ядра Linux, написанный на языке Rust. Он предназначен для работы с современными графическими процессорами Arm Mali и использует интерфейс Direct Rendering Manager. Название Tyr может сбивать с толку, ведь оно никак явно не указывает на поддержку Mali. Вероятно, это отсылка к германо-скандинавской мифологии, в духе прежних названий архитектур Arm, таких как Bifrost и Midgard.

Драйвер Tyr будет поддерживать те же версии Mali, что и существующий драйвер Panthor, то есть графику поколения Gen10 и новее. Оба драйвера используют прошивку Command Stream Frontend (CSF), необходимую для взаимодействия с GPU. Новый проект развивается параллельно с развитием Для просмотра ссылки Войди или Зарегистрируйся и в будущем должен полностью заменить реализацию Panthor, написанную на C.

Объявление о создании Tyr сделал Даниэл Алмейда из компании Collabora. По его словам, текущая версия реализует лишь часть возможностей, так как для дальнейшего развития необходимы недостающие абстракции, включая GPU-виртуализацию и привязку виртуальной памяти. Пока драйвер тестировался только на однокристальной системе Rockchip RK3588. На других чипах он, скорее всего, пока не будет работать.

Несмотря на ограничения, цель выпуска этой версии — протестировать базовые механизмы, включая работу с памятью через iomem-платформу. В будущих обновлениях появится поддержка механизма VM_BIND, когда завершится работа над абстракцией GPUVM. Появление новых Для просмотра ссылки Войди или Зарегистрируйся значительно упрощает работу с видеооборудованием в современных дистрибутивах Linux.

Код Tyr основывается на структуре другого драйвера на Rust — NOVA, который разрабатывается для поддержки видеокарт NVIDIA с открытым исходным кодом. Над проектом совместно работают инженеры Collabora, Arm и Google. Дополнительную информацию можно найти в Для просмотра ссылки Войди или Зарегистрируйся ядра Linux.
 
Источник новости
www.securitylab.ru

Похожие темы