本文经AI新媒体量子位授权转载(公众号ID:QbitAI),请转载转载请联系出处。这几天,由Linux基金会主办的2022开源峰会如期而至。Linux之父LinusTorvalds也出席了会议。一个小插曲是,一张自己在现场的照片让不少网友和粉丝感叹:Linus真的老了!不过,53岁的Linus在与老朋友Cardano基金会首席开源官的聊天中表示,他仍然精力充沛。同时,他还透露了一个很大的惊喜:下个版本的Linux内核主线可能会合并用Rust语言提交的PR分支。30年来,对Linux的热情从未减退。Linux诞生于1991年,至今已有31年的历史。Linux作为世界三大操作系统之一,已经成为云、边缘技术、嵌入式、物联网等技术不可或缺的支撑基础。作为最大的开源操作系统,Linux由开源社区的贡献者维护,每6-10周(即1-2个月)发布一个新的内核版本。当然,这些更新大部分都是Linus自己发布的。2005年,Linus发明了Git,让包括Linux在内的开源项目的开发更加高效。从那时起,至少在过去的15年里,Linux内核的开发过程一直保持相对稳定,发布的规律性也是如此。Linus说维护Linux的工作看起来枯燥、枯燥甚至乏味,但我想这才是每个人都需要的。因为稳定的更新过程才能让用户安心。事实上,Linus认为他最高兴的是Linux项目尽管已经有30多年了,但还没有死掉。(原话:we'renotadeadproject.)他说,Linux上还会出现新的东西,让我惊喜和欣喜,其中不乏创新。因此,这让他对Linux仍然充满热情。下一个内核版本可能会支持Rust自2016年以来,Rust每年都被StackOverflow开发者调查评为“最受欢迎的编程语言”。许多人也开始呼吁在Linux内核中加入对Rust语言的支持,一个名为“RustforLinux”的组织诞生了。出现这种现象的主要原因是用Rust编写会带来更高的计算内存资源利用率,更安全。例如,在2019年举行的Linux安全峰会上,有人提出使用Rust可以通过其类型系统提供的API和借用检查器来避免Android和Ubuntu中2/3的内存安全问题。那么,Rust有没有可能成为Linux内核中除C之外的第二个官方语言呢?在会上,Linus也谈到了这个问题。意外的是,他说大家以为我们是在规避风险,其实我们肯定会加的,说不定从下个版本开始!也就是说,官方最终决定拥抱Rust,将RustforLinux的PR合并到Linux内核的主线中。这一举动赢得了全场的掌声,林纳斯费了好大劲才平息了大家的激动。要知道,Rust单独的支持补丁已经发布到第七个版本了。不过Linus随即提醒,目前只会以非常有限的方式进行尝试。毕竟,25年前,当我尝试切换到C++进行一些内核补丁操作时,我失败了。(这意味着用Rust重写2500万行C代码是绝对不可能的。)然后有趣的一幕出现了。Linus表示,他其实愿意相信每一个参与Linux维护的开发者,但前提是他们不把事情搞砸。一旦搞砸了,林纳斯说谁都知道他会“说坏话”。但我意识到这样很不礼貌,事后我只好道歉。Linus尴尬地说,这种情况不是一次两次了,“所以现在,请允许我向写Rust的程序员道歉。”(手动狗头)现在压力都在Rust身上了。《开源永远无法保证100%的安全》最后,话题转到了开源安全上。近日,Linux基金会旗下的OpenSSF(OpenSourceSecurityFoundation)透露,他们将斥资1.5亿美元用于开源软件的安全保护。对此,Linus表示,包括Linux内核在内的任何开源项目都不能期望100%安全和100%无错误。“如果bug没有出现在硬件上,它就会出现在软件上。如果它没有出现在你的程序中,它就会出现在别人的程序中。”(手动狗头)“唯一的办法就是建立层层安全保障。”他进一步解释说,Linux内核只是整个应用程序堆栈的一层。在内核内部,进程的不同部分已经有了多层安全保护。对于负责构建整个堆栈的开发人员来说,最重要的是要了解如果堆栈中的任何层发生安全漏洞该怎么办。OneMoreThing的Linux内核最新版本是5.19,而Linus的下一个版本是5.20或者6.0,这也引起了很多网友的讨论。大多数人认为它应该被称为6.0——不仅因为这个版本可能最终包含Rust的主要更新,而且不要忘记Linux的版本号一直是“大数字”,比如之前的版本3.19.之后就直接跳到4.0了~大家觉得呢?
