這幾天,由Linux基金會主辦的2022開源峰會如約而至。Linux之父LinusTorvalds也出席瞭會議。一個小插曲是,一張現場傳來的他本人的照片讓不少網友和粉絲感嘆:Linus真的老瞭!
不過,53 歲的 Linus 在和老朋友 Cardano 基金會的首席開源官進行的一番暢談中卻表示,自己仍然充滿瞭幹勁。同時,他還透露瞭一個大驚喜:
下一個版本的 Linux 內核主線,可能就會合並用 Rust 語言提交的 PR 分支瞭。
對 Linux 的熱情 30 年未減
Linux 誕生於 1991 年,現在已經有 31 年歷史。
作為全球三大操作系統之一,Linux 已經成為雲、邊緣技術、嵌入式和物聯網等技術不可或缺的支撐基礎。
作為最大的開源操作系統,Linux 由開源社區的貢獻者維護,每 6-10 周(也就是 1-2 個月)發佈一個新的內核版本。當然,這其中大部分更新都是由 Linus 本人發佈的。
2005 年的時候,Linus 發明瞭 Git,讓包括 Linux 在內的開源項目的開發變得更加有效率。
從此開始,在過去的至少 15 年裡,Linux 內核的開發流程和發佈規律一樣一直保持著相對不變的節奏。
Linus 稱,看起來維護 Linux 這一工作很平淡、枯燥甚至無聊,但我想這正是大傢所需要的。因為一個穩定的更新流程可以讓使用者們感到安心。
事實上,Linus 認為,他最開心的是,Linux 這個項目盡管已經有 30 多個年頭,仍沒有變得死氣沉沉。
(原話:we’re not a dead project。)
他說,Linux 身上仍然會湧現出讓我感到驚訝和欣喜的新事物,其中還不乏創新。因此,這讓他對 Linux 仍然充滿瞭幹勁。
下一個內核版本可能支持 Rust
自 2016 年以來,Rust 每年都被 Stack Overflow 開發者調查評為“最受歡迎的編程語言” 。
許多人也開始呼籲在 Linux 內核中增加 Rust 語言的支持,由此還誕生瞭一個叫做“Rust for Linux”的組織。
出現這一現象最主要的原因是用 Rust 編寫會帶來更高的計算內存資源利用率,以及更安全。
比如在 2019 年召開的 Linux Security Summit 安全峰會上,有人就提出用 Rust 就可以通過其 type system 和 borrow checker 提供的 API,來避免掉 Android 和 Ubuntu 中 2/3 的內存安全問題。
那麼,Rust 有沒有可能成為 Linux 內核中除 C 之外的第二種官方語言呢?會上,Linus 也談到瞭這個問題。
比較驚喜的是,他表示,大傢都以為我們一直在規避風險,但其實我們一定會把它加進來的,也許就從下一個版本開始!
也就是說,官方終於決定把擁抱 Rust,把 Rust for Linux 的 PR 合並到 Linux 內核的主線瞭。此舉贏得瞭現場觀眾陣陣掌聲,Linus 用瞭好大功夫才平息住大傢的興奮。
要知道,此前光是 Rust 的支持補丁就已發佈到第七版瞭。
不過,Linus 緊接著也提醒道,目前隻會以非常有限的方式來嘗試。畢竟 25 年前想換 C++ 進行一些內核補丁操作時就失敗瞭。
(意思用 Rust 重寫 2500 萬行 C 代碼肯定是不可能的咯。)
接著有趣的一幕出現瞭。Linus 稱自己其實是很願意相信參與每一個參與 Linux 維護的開發者的,但前提是他們沒有把事情搞砸。
一旦搞砸,Linus 表示大傢都懂得,自己會“口出不遜”。但自己又意識到這樣很不禮貌,隻好事後再道歉。
Linus 不好意思地說,這種情況已經不是一回兩回瞭,“所以現在,請允許我先給寫 Rust 的這幫程序員道個歉。”(手動狗頭)
壓力現在來到瞭 Rust 這邊。
“開源永遠不能保證 100% 安全”
最後,話題轉到瞭開源安全上。
最近,Linux 基金會的 OpenSSF(開源安全基金會)就透露,他們將支出 1.5 億美元用於對開源軟件的安全防護。對此,Linus 稱,任何開源項目包括 Linux 內核在內,都不能奢望做到 100% 安全和 100% 無 bug。
“bug 不出現在硬件就會出現在軟件,不出現在你的程序就會出現在別人的程序。” (手動狗頭)
“唯一的辦法就是建立多層防護(layers of security)。”
他進一步解釋稱,Linux 內核隻是整個應用程序堆棧的一層。在內核內部,進程的不同部分已經已經具備多層安全性。對於負責構建整個堆棧的開發人員來說,最重要的是對堆棧中的任一層出現安全漏洞時應該怎麼處理都有一個概念。
One More Thing
目前 Linux 內核最新版本為 5.19,Linus 口中的下一個版本叫 5.20 還是 6.0 也引起瞭很多網友的討論。
多數人認為該叫 6.0 瞭 ——
不僅是因為這一版終於可能會合並 Rust 這一重大更新,另一點別忘瞭,Linux 的版本號向來不愛往“大數”堆,比如此前 3.19 版本結束後就直接跳到瞭 4.0~
你覺得呢?
參考鏈接:
https://venturebeat.com/2022/06/21/linus-torvalds-after-30-years-linux-is-not-a-dead-project/