既然是冬天停电的时候诞生的,那就叫它「冰冻荒原」吧。
上个月,受恶劣天气影响,美国多个地区出现大规模断电,Linux 之父 Linus Torvalds 所在的俄勒冈州波特兰地区也没有幸免。但比较励志的是,即使经历了六天的断电生活,Linus Torvalds 还是赶出了新一版的 Linux 内核(候选版本)——Linux 5.12 rc1。
由于诞生的过程过于坎坷,Torvalds 还给这版新内核取了个有纪念意义的名字:「Frozen Wasteland(冰冻荒原)」。这也是 Torvalds 在断电的家中完成的杰作,个中滋味想必已经隐藏在新名字里了。
据 Newsweek 报道,上周,受到暴风雪影响,美国西北部有 50 多万个家庭断电。在依然实行家庭办公的地区,断电对日常工作造成了极大的影响。对于 Torvalds 来说,他要面对的是来自 1000 多位贡献者提交的上万个更改。
美国得克萨斯州断电后在壁炉旁取暖的一家人。
「我们现在已经有了两个不同寻常的合并窗口:第一个是节日期间,但这一次,受到暴风雪的影响,波特兰地区有 25 万人断电。」Torvalds 在 Linux 5.12-rc1 的相关日志中写道。
Torvalds 曾说过,他现在的工作其实更多的是处理邮件,而不是编码。在停电之后,他也曾想过扩大合并窗口来确保一切就绪。但在电力恢复之后,他发现大家都非常善于发送拉取请求,一切井井有条,这让他的合并工作进展非常顺利。因此,Linux 5.12 rc1 才能那么快问世。
还有一点比较重要:5.12 是一个相对较小的更新。Torvalds 表示,该版本的内核只收集到了 1 万个左右的提交贡献,比通常的 1.2~1.3 万要少得多。但小也只是相对的,「尽管这次的合并窗口比之前的要小一些,但它仍然很大,我添加的只是我平常的合并日志,而不是 1500 多个人提交的 10982 个非合并 commit 的完整列表。」Torvalds 在日志中写道。
在谈到新版本的变化时,Torvalds 表示,「比较突出的一点是,这个版本做了大量的历史清理工作。但总的来说,增加的代码还是要多于被删掉的代码。在这次『春季大扫除』活动中,我们删除了对 OPROFILE 的支持(用户工具多年前就在用『perf』了),还删除了几个遗留的 SoC 平台以及过时的驱动。」
在新特性方面,Linux kernel 5.12 中新增了 Clang Link-Time 优化,以改进编译器性能。同时支持了 Intel 的 eASIC NX5 芯片(在边缘和云计算领域作为 FPGA 的替代方案)、支持骁龙 888 5G SoC 等。
Linux 5.12 新特性
Linux 5.12 是一个令人兴奋的内核版本,稳定的 Linux 5.12 发行版大概会在 4 月下旬或 5 月初发布,具体时间还要取决于最终的进展程度。从发行历史有 20 多年的 Nintendo 64 内核移植,再到索尼官方的 PlayStation 5 控制器驱动,Linux 5.12 提供了很多惊喜的附加功能。
总体来看,Linux 5.12 的亮点包括支持 Clang LTO(Link-Time Optimizations);IDMAPPED mount 在很多应用案例中表现优秀;KLeak 被添加为内核内存泄漏检测器;支持 Radeon RX 6800 系列显卡超频;此外还包括索尼 PlayStation 5 DualSense 驱动程序已配备等等。
有关 Linux 5.12 新特性的完整描述,请参见:https://www.phoronix.com/scan.php?page=article&item=linux-512-features&num=1
「Talk is cheap. Show me the code.」
提到 Linux 之父 Linus Torvalds,他本人的人生经历似乎更加有趣。
2000 年 8 月 25 日,在讨论关于内核线程优化问题时,一个人提出了自认为非常高效的方案。Linus Torvalds 认为这个方案不怎么样,就在回复邮件中写下了「传世名言」:
Talk is cheap. Show me the code.
Linus Torvalds 是当今全球最著名的程序员之一,喜欢「吐槽」甚至「炮轰」那些自己认为不靠谱的公司、人和事,比如 C++、Java、英伟达,他都毫不留情地批评。
去年接受公开采访时,Linus Torvalds 曾表示,自己的大部分时间花在邮件往来上,而不是编程。他的代码大多直接写在邮件内,不会专门编译和测试。
去年,Linus Torvalds 也是在邮件列表里发表了关于英特尔 AVX512 指令集的一段言论,并表示自己转投 AMD 了。
我希望 AVX512 去死,然后英特尔就可以开始去解决实际问题了——而不是试图去创造神奇的指令,然后围绕它寻找基准测试结果让它看起来很好。
他承认自己「脾气暴躁」,但不是无脑喷。
苹果发布搭载 M1 芯片的 Mac 之后,有人问 Linus Torvalds 怎么看,他说:「我一直在等待可以在 Linux 上运行很长时间的 ARM 笔记本,除了操作系统以外,新的 MacBook Air 几乎是完美的。如果它能运行 Linux,我绝对想买一个。」