Predstavljen „Tyr“ – novi Rust drajver za Linux kernel i ARM Mali grafiku
U iznenađujućem saopštenju krajem juna, najavljen je Tyr, novi grafički drajver za Linux kernel, napisan u programskom jeziku Rust.

Tyr je novi open-source DRM drajver za “Gen10” i novije ARM Mali GPU-ove
Drajver je deo Direct Rendering Manager (DRM) subsistema i namenjen je savremenim ARM Mali GPU-ovima. Iako je ime “Tyr” (nordijski bog rata i pravde) povezano sa mitološkim temama koje ARM često koristi za kodna imena svojih GPU-ova (kao što su Bifrost i Midgard), mnogi u zajednici smatraju da je ime previše nejasno i nepovezano sa samim hardverom.
Šta je zapravo Tyr?
Tyr je novi open-source DRM drajver za “Gen10” i novije ARM Mali GPU-ove koji koriste CSF firmware (Command Stream Frontend). U suštini, ovaj drajver je Rust port postojećeg Panthor drajvera, koji je napisan u C-u. Cilj projekta je da Tyr vremenom zameni Panthor, zadržavajući isti korisnički interfejs (uAPI), ali uz benefite Rust jezika – veću sigurnost i moderniji razvojni model.
Daniel Almeida iz kompanije Collabora najavio je Tyr drajver i objasnio da je njegov razvoj zajednički poduhvat Collabora, ARM-a i Google-a. Očekuje se da će se drajver razvijati postepeno, kako Rust DRM okruženje bude sazrevalo.
Trenutne mogućnosti i ograničenja
Prva verzija drajvera je veoma ograničena:
- Implementira samo osnovni skup funkcionalnosti.
- Još uvek ne podržava pokretanje MCU-a (mikrokontrolne jedinice).
- Ne funkcioniše bez GPUVM apstrakcije, koja je još u razvoju (neophodna za mapiranje memorije u GPU virtuelni adresni prostor).
- Testirana je isključivo na RK3588 SoC-u, tako da verovatno neće raditi na drugim uređajima u ovoj fazi.
Cilj prve verzije jeste da posluži kao testiranje osnovnih Rust apstrakcija, naročito kodova vezanih za I/O memoriju (iomem). Podrška za VM_BIND funkciju biće dodata kasnije, nakon što se postignu dogovori oko GPUVM dizajna.
Poređenje i oslonac
Kod Tyr drajvera se oslanja na kodni osnov NOVA DRM drajvera, koji se razvija za otvoreni NVIDIA GPU podršku i koji je takođe napisan u Rustu. To pokazuje da Rust postaje sve relevantniji u razvoju drajvera za Linux kernel, naročito u oblastima koje zahtevaju visoku pouzdanost i sigurnost.
Kako to utiče na korisnike?
Za prosečne korisnike – za sada nikako. Ali za developere, integratore sistema i one koji se bave ARM baziranim uređajima (npr. u embeddovanim sistemima, Android razvoju, i sl.), Tyr predstavlja važan korak ka sigurnijem, modernijem pristupu drajverima. Rust kao jezik donosi niz prednosti u pogledu sigurnosti memorije i jednostavnijeg održavanja koda.
Više informacija i tehničkih detalja dostupno je preko Linux Kernel Mailing List (LKML) diskusija.
Izvor: Phoronix


