Mesa 開發人員正在討論添加 Rust 程式碼的可能性

梅薩專案開發商 正在討論 能夠使用 Rust 語言開發 OpenGL/Vulkan 驅動程式和圖形堆疊元件。 討論由驅動程式開發人員 Alyssa Rosenzweig 發起 霜凍 適用於基於 Midgard 和 Bifrost 微架構的 Mali GPU。 該倡議正處於討論階段,尚未做出具體決定。

使用 Rust 的支持者強調其能夠提高記憶體效能並消除存取釋放後記憶體、空指標取消引用和緩衝區溢位等問題。 Rust 支援還允許 Mesa 包含第三方開發,例如軟體渲染系統 喀山 使用 Rust 編寫的 Vulkan 圖形 API 實作。

值得注意的是,由於在支援 WebGL 的瀏覽器中執行不可信程式碼時使用 OpenGL,提高驅動程式安全性的緊迫性最近有所增加,這使得驅動程式成為攻擊使用者係統的重要載體。 目前,Mesa 已經使用 ralloc 和靜態程式碼分析等工具來最大限度地減少記憶體問題,但它們的使用還不夠。

Rust 實施的反對者 相信Rust 的大部分有用功能都可以透過將開發轉移到現代 C++ 來獲得,考慮到 Mesa 的大部分都是用 C 編寫的,這看起來更有吸引力。 在反對 Rust 的論點中也提到了 並發症 組裝系統, 不渴望 綁定到貨物包裝系統,
擴大了對裝配環境的要求 需要包括 Rust 編譯器將其編譯成在 Linux 上建置關鍵桌面元件所需的組件相依性。

AMD 也觀察到了使用 Rust 進行開發的趨勢,最近該公司 開設了一個空缺職位 Rust 程式設計師開發與 Radeon GPU 3D 驅動程式相關的新工具。

來源: opennet.ru

添加評論