Mesa-udviklere diskuterer muligheden for at tilføje Rust-kode

Mesa projektudviklere diskuterer evnen til at bruge Rust-sproget til at udvikle OpenGL/Vulkan-drivere og grafikstakkomponenter. Diskussionen blev indledt af Alyssa Rosenzweig, driverudvikler panfrost til Mali GPU'er baseret på Midgard og Bifrost mikroarkitekturer. Initiativet er på diskussionsstadiet, og der er endnu ikke truffet konkrete beslutninger.

Tilhængere af at bruge Rust fremhæver evnen til at forbedre hukommelsens ydeevne og eliminere problemer såsom adgang til efterfri hukommelse, nul pointer-dereferencer og bufferoverskridelser. Rustunderstøttelse vil også give Mesa mulighed for at inkludere tredjepartsudviklinger, såsom et softwaregengivelsessystem Kazan med en implementering af Vulkan grafik API, skrevet i Rust.

Det bemærkes, at det haster med at forbedre driversikkerheden for nylig er steget i lyset af brugen af ​​OpenGL ved eksekvering af upålidelig kode i browsere, der understøtter WebGL, hvilket gør drivere til en vigtig vektor for angreb på brugersystemer. I øjeblikket bruger Mesa allerede værktøjer som ralloc og statisk kodeanalyse for at minimere hukommelsesproblemer, men deres brug er ikke nok.

Modstandere af Rust implementering overveje, at de fleste af de nyttige funktioner i Rust kan opnås ved at overføre udvikling til moderne C++, som ser mere attraktiv ud, da det meste af Mesa er skrevet i C. Blandt argumenterne mod Rust nævnes også komplikation samlesystemer, ikke lyst binde sig til fragtpakkesystemet,
udvidelse af krav til montagemiljø og skal medtages Rust compiler ind i de monteringsafhængigheder, der kræves for at bygge centrale desktopkomponenter på Linux.

Bevægelsen mod at bruge Rust til udvikling er også observeret hos AMD, som for nylig åbnede en ledig stilling Rustprogrammør til at udvikle nye værktøjer relateret til 3D-drivere til Radeon GPU'er.

Kilde: opennet.ru

Tilføj en kommentar