在Linux Plumbers 2020會議之前,一位內核開發(fā)人員建議該會議討論一些在Linux上支持Rust的主題,Linus Torvalds對此做出了回應。
去年就有開發(fā)者詢問 Linux 內核穩(wěn)定版維護者 Greg Kroah-Hartman “Linux 有沒有想法擁抱 Rust”,Greg 表示愿意接受用 Rust 開發(fā) Linux 內核的驅動程序,但前提是:
1、以可選的方式存在,而不是默認啟用,這樣其他開發(fā)者就不需要使用 Rust 去構建內核
2、Rust 驅動需要體現(xiàn)出比 C 驅動具有優(yōu)勢,比如針對內核 API 的安全封裝器
此次 Linus 關于 Linux 支持 Rust 的回應看上去正是針對這第 1 個條件。
Greg 希望 Linux 中的 Rust 支持是以可選的方式存在,而不能全面默認啟用,類似于在一個大的系統(tǒng)配置項里還要單獨開啟一個針對 Rust 的小選項,但 Linus 則認為應該在默認情況下可以有效地啟用支持,以確保進行廣泛的測試,而不是只有某些開發(fā)者孤立地在進行瘋狂/錯誤的使用,因為沒有人關注,問題會被掩蓋。
同時,Linus 還用 Kconfig 的使用指令舉例,表示 Rust 支持需要足夠簡潔,類似“config RUST_IS_AVAILABLE……”,Linus 認為如果在系統(tǒng)上檢測到 Rust 編譯器,則 Kconfig 將啟用 Rust 支持,并繼續(xù)構建任何假定的 Rust 內核代碼,以至少查看其是否正確構建。“我希望以如此簡單的格式引入第一個 Rust 驅動程序(或其它任何驅動程序),以使故障顯而易見且簡單?!?