Vývojáři Mesa diskutují o možnosti přidání kódu Rust

Vývojáři projektu Mesa diskutovat schopnost používat jazyk Rust k vývoji ovladačů OpenGL/Vulkan a komponent grafického zásobníku. Diskusi iniciovala Alyssa Rosenzweig, vývojářka ovladačů panfrost pro GPU Mali založené na mikroarchitekturách Midgard a Bifrost. Iniciativa je ve fázi projednávání, žádná konkrétní rozhodnutí zatím nepadla.

Zastánci používání Rust zdůrazňují schopnost zlepšit výkon paměti a eliminovat problémy, jako je přístup k paměti po uvolnění, dereference nulového ukazatele a přetečení vyrovnávací paměti. Podpora rzi by také umožnila Mesa zahrnout vývoj třetích stran, jako je systém vykreslování softwaru Kazan s implementací grafického API Vulkan napsaného v Rustu.

Je třeba poznamenat, že naléhavost zlepšení zabezpečení ovladačů nedávno vzrostla ve světle použití OpenGL při spouštění nedůvěryhodného kódu v prohlížečích, které podporují WebGL, což z ovladačů dělá důležitý vektor pro útoky na uživatelské systémy. V současné době Mesa již používá nástroje jako ralloc a statickou analýzu kódu k minimalizaci problémů s pamětí, ale jejich použití nestačí.

Odpůrci implementace Rust zvážit, že většinu užitečných funkcí Rustu lze získat převedením vývoje do moderního C++, který vypadá atraktivněji vzhledem k tomu, že většina Mesa je napsána v C. Mezi argumenty proti Rust je také zmíněn komplikace montážní systémy, ne touha vázat se na systém nákladu,
rozšíření požadavků na montážní prostředí a potřeba zahrnout Kompilátor Rust do závislostí sestavení potřebných k sestavení klíčových komponent desktopu na Linuxu.

Pohyb směrem k použití Rust pro vývoj je také pozorován u AMD, které nedávno otevřel volné místo Rust programátor k vývoji nových nástrojů souvisejících s 3D ovladači pro GPU Radeon.

Zdroj: opennet.ru

Přidat komentář