之後 已經發生的事件 在 Linux 核心開發者社群中,由於關於將 Rust 引入核心的討論, 不同的開發商 他們已經表明了他們的 方向定位 該項目正在進行中。
格雷格·克魯亞·哈特曼著名的 Linux 核心穩定分支維護者站出來為 Rust 辯護, 已表示支援使用 Rust 語言 新核心部件的開發。
格雷格 提到 在過去的15年中, 一直是主要資訊來源之一 關於核心中的錯誤和漏洞,並聲稱其中許多問題源於 C 語言中未記錄的怪癖。
Rust 在內核的優勢
對於格雷格 UNO 主要優勢 將 Rust 整合到核心開發中 消除常見的記憶體管理錯誤。存取釋放的記憶體、部分緩衝區溢位、執行失敗後資源的錯誤釋放以及返回程式碼中跳過驗證等問題將大大減少。這些改進將使核心維護人員能夠專注於更相關的問題,例如競爭條件和邏輯問題,而不是浪費時間修復可避免的錯誤。
現有的 C 代碼不會被替換, 但有可能 用 Rust 編寫新的控制器和子系統將有助於提高品質 未來的軟體。此外,使用這種語言 將允許重組核心的內部 API,使其更易於理解和安全,透過確保其正確使用,將大大減輕維護人員的負擔。隨著 Rust 中包裝器的發展,核心設計可以優化,讓 Rust 開發人員和繼續使用 C 的開發人員都受益。
格雷格·克魯亞·哈特曼 明確指出 Rust 並不是一個神奇的解決方案 這將解決所有核心問題, 但它是一種很有價值的工具 這將改善發展的多方面。還 指出 這 核心內部使用多種語言並不代表難以克服的障礙。 Linux 開發者社群過去已經解決過更為複雜的挑戰,而 Rust 的加入只是朝著長期加強專案邁出的又一步。
Kees Cook 加入了此討論,前 kernel.org 首席系統管理員和 Ubuntu 安全團隊負責人。 庫克強調,目的不是重寫程式碼 存在於 Rust 中, 但提供使用它來開發新組件的選項。這種策略不僅可以減少記憶體錯誤的數量,還可以加快開發過程,因為 Rust 可以在軟體進入測試階段之前,在編碼過程的早期階段檢測到錯誤。
它 提到這項策略的可行性已被證明 先前由 Google 提供 在Android上。 新代碼已被證明是安全問題的主要來源,因此從一開始就提高其品質是當務之急。實際上, 據觀察,舊程式碼的漏洞密度較低 隨著時間的推移。例如,五年前編寫的程式碼與最近的程式碼相比,安全漏洞平均減少 3.4 倍。
因此,Rust 整合到 Linux 核心被認為是提高安全性、開發效率和系統穩定性的重要進展。這不是 C 程式碼的替代品,而是一種進化,以便將來可以編寫更安全、更可靠的軟體。
最後,如果您有興趣了解更多,可以查閱詳情 以下鏈接。