在 GCC 中,他們批准了 RUST (gccrs) 的實施

最近有消息說 GCC 指導委員會已批准納入 gccrs 實施 (GCC Rust) 來自 GCC 核心中的 Rust 編譯器。

有了它 GCC (GNU 編譯器集合) 已經有 Rust 的後端,通過 Antoni Boucher 創建的名為 rustc_codegen_gcc 的項目。 它仍被描述為一項正在進行的工作,但它已於 2021 年 XNUMX 月合併到主要的 Rust 存儲庫中。

對於那些不懂語言的人 銹, 他們應該知道是什麼e 專注於安全內存管理 並提供了實現高工作並行性的方法。 安全內存處理,排除錯誤,例如在釋放內存區域後訪問內存區域、取消引用空指針和緩衝區邊界溢出,在 Rust 中通過檢查引用、跟踪對象所有權、考慮對象的生命週期(作用域)在編譯時實現),並在代碼執行期間評估內存訪問的正確性。

還提供整數溢出保護,需要在使用前初始化變量,更好地處理標準庫中的錯誤,默認強制執行引用和不可變變量的概念。

集成接口後,在標準 GCC 中,它可以用於編譯 Rust 程序,而無需安裝使用 LLVM 構建構建的 rustc 編譯器。

自 2020 年 XNUMX 月以來,我一直在 GCC 的 Rust 前端全職工作,這要感謝 Open Source Security, Inc 和 Embecosm。 因此,我寫信給這個郵件列表是為了儘早從這裡的集體經驗中尋求反饋,以計劃將前端上傳到 GCC 的路徑。

這個項目的重要性在於它對 Linux 的重要性,它通常使用 GCC 構建,出於內存安全原因,計劃允許 Rust 與 C 一起用於內核代碼,正在不斷向前發展。

這意味著 Rust 編譯器, rustc,可以與 GCC 後端一起使用, 後端是代碼生成器,它支持比 LLVM(Rust 常用的後端編譯器)更多的 CPU 架構,儘管存在一些限制,例如需要修補版本的 GCC。

另一種方法是擁有一個完整的 GCC 工具鏈。 2021 年 XNUMX 月,Linux 內核強化版 Grsecurity 的製造商 Open Source Security, Inc 表示,它將資助 Rust 的 GCC 接口的“公共開發工作”,理由是它提高了安全性。混合不同的編譯器。

從我作為這個前端領導者的角度來看,我們目前 在大量開發中,所以這意味著大量的代碼輪換 然而,在我們成功編譯之前,我看不到這種變化 今年晚些時候的 libcore 盒子。 雖然很想見面 合併到 GCC 13,我想確保這個項目是成功的 全部,這可能意味著回滾到下一個發布窗口 確保這是可管理的,以產生高質量的前端 一起 給別人。

該公司引用了一篇論文,該論文展示了“如何通過引入用 Rust 或其他編譯器不提供相同二進制級安全性的語言編寫的代碼來降低運行時環境的整體安全性。”

鼓勵 gccrs 開發人員開始與審查團隊合作 和 GCC Change Release 以最終確定和批准補丁,以滿足添加到 GCC 的代碼的技術要求。

假設 gccrs 的開發按計劃繼續進行並且沒有發現不可預見的問題, Rust 語言前端將集成到計劃於明年 13 月發布的 GCC XNUMX 中. GCC 13 中的 Rust 實現將處於 beta 狀態,默認情況下尚未啟用。

終於 如果您有興趣了解更多信息 關於該項目,您可以在 以下鏈接。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   奎特里特 他說:

    太好了,我希望這個實現對許多程序員有用。