膜拜大神!Linux之父家中停电6天,竟然还码出新版Linux内核还是来了

机器之心报道

编辑:张倩、蛋酱

既然是冬天停电的时候诞生的,那就叫它「冰冻荒原」吧。

上个月,受恶劣天气影响,美国多个地区出现大规模断电,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,我绝对想买一个。」

参考链接:

https://www.zdnet.com/article/linus-torvalds-battles-power-cuts-to-keep-linux-releases-rolling-out/

https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.12-rc1-Released

近期热门文章

### 如何在 Linux 下编译 Qt 5.14.2 以生成静态库和动态库 为了在 Linux 环境下构建 Qt 5.14.2 静态库和动态库,可以按照以下方法操作: #### 准备工作 首先需要下载并解压 Qt 的源包。如果尚未获取到源,则可以从官方站点或其他可信资源处获得完整的源代压缩包[^3]。 #### 构建环境配置 确保系统已安装必要的依赖项,例如 `g++` 编译器、`make` 工具以及一些基础的开发库(如 OpenGL 和 X11 支持)。可以通过执行如下命令来安装这些依赖: ```bash sudo apt-get update && sudo apt-get install build-essential libgl1-mesa-dev libxkbcommon-x11-0 ``` #### 创建独立目录用于构建 建议创建单独的工作目录来进行构建过程,这样可以避免污染原始源树。 ```bash mkdir ~/build_qt_static_dynamic cd ~/build_qt_static_dynamic ``` #### 配置选项设置 通过调用 `configure` 脚本来指定不同的参数组合分别完成静态库与动态库的构建任务。 对于 **动态库** 的构建,通常不需要额外特殊设定,默认情况下即会启用此模式: ```bash ../path_to_source/configure -prefix /opt/qt514dynamic -release -shared \ -nomake examples -no-feature-relocatable -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg \ -openssl-linked -confirm-license -skip webengine ``` 上述命令中的 `-shared` 参数指定了要生成共享对象形式的目标产物;其他部分则控制具体特性开关状态等细节[^4]。 而对于 **静态库** 来说,则需显式加入相应标志位: ```bash ../path_to_source/configure -static -prefix /opt/qt514static -release \ -nomake examples -no-feature-relocatable -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg \ -openssl-linked -confirm-license -skip webengine ``` 这里的关键区别在于增加了 `-static` 这一项,它指示整个体系结构切换至完全基于静态链接的方式运作。 #### 同步进行两种类型的编译流程 由于每次 configure 只能针对单一目标类型做初始化准备动作,因此若想同时得到两类版本的结果集的话,就需要重复上面提到过的两套不同参数序列下的预处理阶段,并各自分配好专属的目的存储路径以防混淆覆盖彼此的数据成果物。 接着,在每一个经过适当调整后的子环境中依次启动实际制造环节: ```bash make -j$(nproc) sudo make install ``` 利用多核处理器加速运算效率的同时也完成了最终部署安置工序。 --- ### 总结 以上介绍了如何在 Linux 中为 Qt 5.14.2 设置双重性质——既包含动态又涵盖静态成分在内的全面解决方案概述。需要注意的是,鉴于工程规模庞大复杂度较高,整个过程中可能会遇到各种潜在障碍挑战,务必保持耐心细致的态度逐一排查解决可能现的各种状况问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值