上游合併在即:開發者大幅精簡Rust for Linux v9補丁體量
本週早些時候發布的Rust for Linux v8 補丁,引入了諸多抽象、並將Rust 編程語言集成擴展到了內核中的更多部分。Phoronix 指出:v8 補丁的代碼總行數達到了43.6k,而今日新發布的“Rust for Linux v9”,僅引入了12.5k 的新代碼行。
Rust 有望作為C 語言的補充,作為支持Linux 內核驅動程序開發的新語言。
由於刪除了許多額外的功能和集成,Rust for Linux v9 較之前的補丁要小得多。通過堅持更初始的“最小化路線”,其有望為主線內核帶來更積極的變化。
除了增強集成與構建事務,它還允許對各種抽象和子系統的特定補丁,引來更多人參與代碼的審核與反饋工作。首席開發者Miguel Ojeda 評論道:
作為v8 補丁的’精簡版’,v9 為編譯一個最小的Rust 內核模塊提供了足夠的支持—— 以期率先得到’核心’支持,並開始逐步將其餘部分’上游化’。
內核模塊能夠創建一個’向量’,作為一種連續、可增長的數組類型,其能夠推送一些數字、並在卸下時使用’pr_info!’宏將之打印到內核日誌。
新補丁系列還可通過移除其中部分內容而變得更小,目前看來其取得了不錯的平衡。最終得來3% 的kernel crate 留存(減少到了500 行),60% 的alloc 和adapt alloc 提交(100 行),總體量從40k 精簡到了13k 行。
雖然大多數代碼已在linux-next 中存在數月,但我們還是不得不為減少一些內容而做微小的改動,最後歡迎大家積極反饋這一選項是否符合你的預期。
Phoronix 指出,随着 v9 补丁量的显著瘦身,其有望较之前更容易获得主线许可。
Linus Torvalds 一直希望盡快完成合併(下週的Linux 6.0 合併窗口),後續將觀察相關工作是否已經足夠良好。