不排除將 Rust 支持集成到 Linux 5.20 內核中的可能性

在 2022 年開源峰會上 這些天來,在常見問題解答部分,Linus Torvalds 提到了早期整合的可能性 在Linux內核中開發組件 Rust 中的設備驅動程序。

因此有人提到,支持 Rust 的補丁可能會在構成 5.20 內核組合的下一個更新日誌中被接受,該更新日誌計劃於 XNUMX 月下旬發布。

應該記住,自去年以來,Rust 已成為各種重要項目中最受歡迎的項目之一,並且在過去的時間裡,已經完成了與實現 Rust 支持相關的工作。

在自去年以來對 rust 感興趣的知名項目中,我們可以突出顯示,例如 Android,因為它對  因為它允許 實現接近 C 和 C++ 語言的性能,使其可以用於開發平台的低級部分以及與硬件進行交互的組件。

為了確保C和C ++代碼的安全性,Android使用沙箱隔離,靜態分析和模糊測試。 沙盒隔離功能是有限的,並且已經達到其功能的極限(從資源消耗的角度來看,進一步的流程碎片化是不切實際的)。

在使用沙箱的局限性中,他們提到由於需要生成新進程而導致的高開銷和較高的內存消耗,以及與使用IPC相關的額外延遲。

Rust-Android
相關文章:
Rust已經是Android開發的最愛

另一方面,我們不能忘記 Linus Torvalds的 還發表了他對 Rust 的看法,其中 花在審查實施上 在Linux內核中設置Rust語言驅動程序的可能性補丁 並提出了一些批評。

最大的投訴是由 逃生的潛力 錯誤情況下的“運行時故障恐慌”, 例如,在內存不足的情況下,包括內核操作在內的動態內存分配操作可能會失敗。

托瓦爾茲 指出,對內核的這種關注從根本上是不可接受的, 而且,如果您不了解這一點,則可以完全拒絕嘗試使用這種方法的任何代碼。 另一方面,補丁程序的開發者同意該問題,並認為可以解決。

Linus Torvalds的
相關文章:
魯斯特(Rust)不能免受萊納斯·托瓦爾茲(Linus Torvalds)的批評

但距離 Linus 給出反饋已經有幾個月了,並且已經努力改進實施。 像這樣, 目前尚未向 Torvalds 提交對核心的拉取請求, 但是補丁集被進一步修改,刪除了主題演講,在 linux-next 分支上測試了相當長的一段時間,並達到了適合在內核子系統之上構建抽象層、編寫驅動程序和模塊的狀態。

Rust 支持是一種選擇 默認情況下未啟用,並且不會導致 Rust 包含在內核所需的構建依賴項中。

提議的更改使使用 Rust 作為第二語言成為可能 開發驅動程序和內核模塊。 使用 Rust 開發驅動程序將使您能夠以最少的努力創建更好、更安全的驅動程序,而不會出現諸如釋放內存區域後訪問、取消引用空指針和緩衝區溢出等問題。

Rust 在編譯時提供內存安全性 通過檢查引用、跟踪對象所有權和對像生存期(範圍)以及評估代碼執行期間內存訪問的正確性。 Rust 還提供整數溢出保護,需要在使用前初始化變量,更好地處理標準庫中的錯誤,默認強制執行不可變變量和引用的概念,並提供強靜態類型以最大限度地減少邏輯錯誤。


發表您的評論

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

*

*

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