标签 内核 下的文章

Linux 5.18 再次尝试默认启用 -Werror

去年,在 Linux 5.15 中,内核尝试默认启用 -Werror,将所有编译器警告视为错误。其动机是为了确保编译器警告被开发人员认真对待,并让新代码不会引入任何新的警告。这一变化给 Linux 内核带来了很多构建时的痛苦,因此这次努力以失败而告终。在今天结束 Linux 5.18 合并窗口前,又送来了一批 “x86/紧急” 更新,其中默认启用了 Linux x86/x86\_64 上的 CONFIG\_WERROR 开关。

老王点评:想必经过了几个版本的准备,这次可能能够顺利执行下去。

微软开始通过 HTTPS 连接提供 Windows 更新

据消息,有人在试图下载微软 Windows 的一个更新时发现,更新文件包的 URL 从 HTTP 换成了 HTTPS。之前,用户可能遇到的一个问题是,他们无法再在浏览器中下载更新,因为微软只通过 HTTP 链接提供下载,而现代浏览器开始阻止 HTTP 下载链接,甚至微软自己的 Edge 浏览器最近也开始阻止从该公司的更新目录网站下载。

老王点评:这很令人意外,居然还一直在用 HTTP。

基于 Rust 的 Coreutils 实现发布新版本

据消息,Uutils 是一个基于 Rust 的 Coreutils 实现,它已经足够好,至少在基本功能方面 以及可以构成一个可工作的 Debian Linux 系统。上周末发布了一个新版本 0.0.13,为 cpdddfsplittr 等工具带来了许多改进,以及增加了不同工具支持的各种参数以提高 GNU 兼容性。

老王点评:期待看到 Rust 逐渐取代这些用 C 语言开发的基础工具,所带来的安全和性能改进。

Linux 内核 5.17 已经发布,它具有更好的硬件支持和核心模块改进。下面是对新功能的简要介绍,并附有下载和安装细节。

Linux 内核 5.17 带来了更多的硬件兼容性

Linux Torvalds 宣发了 Linux 内核 5.17,这是 2022 年第二个稳定版主线内核。这个版本的内核模块中引入了对新处理器、显卡、存储和其他硬件组件的支持。

比内核 5.16 发布后的时间表稍有延迟,Linux 主线内核 5.17 现在可供下载了。这些更新包括对 AMD Zen 系列设备的温度支持;长期存在的软盘挂起错误,几个 ARM/SoC 支持以及各个子系统的性能改进。

我们已经在第一个候选版本发布时介绍了大部分变化,下面是对 Linux 内核 5.17 新特性的快速回顾。

Linux 内核 5.17 的新内容

处理器

Linux 内核中的 ARM64 架构现在包括了 内核并发净化器 Kernel Concurrency Sanitizer (KCSAN)。KSCAN 是一个竞争条件检测器,已经支持了其他架构。而现在 ARM64 也在支持名单上了。另外, 可扩展矩阵扩展 Scalable Matrix Extensions (SME)的初始工作有望为矩阵操作提供更好、更快的支持。

AMD 带来了 基于 k10temp 的 CPU 温度监控,用于 AMD Zen 系列第 19 代 CPU 型号。

一组广泛的 Arm/SoC 支持 进入了 Linux 内核 5.17 中。其中主要包括新的 Snapdragon 8 Gen 1 和 X65 平台。其他 SoC 包括恩智浦 i.MX8ULP、德州仪器 J721S2 和瑞萨 R-Car S4-8。

CPU 的重大变化之一是加入了 AMD 的 P-state 驱动,这是与 Valve 为 Steam Deck 合作开发的。这将提供更好的电源效率,因为透过 ACPI 协作处理器性能控制 Collaborative Processor Performance Controls (CPPC)支持,可以更加细化的控制电源。

这个内核中另一个重要的 RISC-V 变化是支持 sv48,提供了 48 位虚拟地址空间。这使得内核可以对高达 128TB 的虚拟地址空间进行寻址。

这个版本带来了很多笔记本电脑、平板电脑的驱动更新。这里 有一个列表,主要内容是:

  • 为华硕 ROG 笔记本电脑增加了自定义风扇曲线支持。
  • 增加了对 通用手写笔计划 Universal Stylus Initiative (USI)和 NVIDIA Tegra 平板电脑的支持。
  • 对基于 AMD 的笔记本电脑的一些性能改进和修复,涉及到睡眠和声音驱动。

显卡

英特尔的 Alder Lake P 显卡经过前一年的多次迭代,现在已经在主线内核上稳定了。这个内核引入了 对 Raptor Lake S 显卡的首批支持补丁

英特尔的 Gen Icelake 显卡家族 获得了 可变刷新率/自适应同步支持。

一些较新的笔记本电脑带来了内置的隐私屏幕,预计更多的 OEM 厂商会效仿。另外,值得注意的是,GNOME 桌面和其他公司正计划在之后使用这一隐私功能。所以,为了这个以隐私为中心的功能,最初的架构和代码工作都已经包含在这个内核版本中了。

你可以在 这里 找到一个很好的显卡驱动更新列表。

存储

在内核的每个版本中都会对所有主要的文件系统和存储技术进行增量更新。这个版本也会有一些:

  • 主要的更新包括流行的 EXT4 文件系统使用新的 Linux 挂载 API。
  • 像往常一样,F2FSBtrfsXFS 的性能得到改善。
  • FS-Cache 和 CacheFiles 模块 做了 重大重写。

杂项硬件更新

今天谁还在使用软盘?我相信仍然有一些特定的商业用例仍在使用软盘。所以,这就给我们带来了这个特定的补丁,在这个内核版本中。内核中存在一个长期的错误:当系统试图读取一个坏掉的软盘时可能会挂起。所以,这个老毛病终于在这个版本中得到了解决,我希望能让少数仍然使用这种古老存储介质的人为此驻足一下。

其他值得注意的杂项硬件更新包括:

  • 任天堂 GameCube/Wii/Wii U 实时时钟 驱动
  • 一个通用的 USB GNSS( 全球导航卫星系统 Global Navigation Satellite System )驱动程序。
  • Cirrus CS35L41 高清音频编解码器 驱动
  • 许多英特尔 Wi-Fi 驱动程序 改进
  • 英特尔 Alder Lake N 音频 支持。

如何下载和安装 Linux 内核 5.17

我们总是建议不要在你的稳定系统中安装最新的主线内核,除非你拥有特定的新硬件或想做实验。对于普通用户来说,最好是通过你的 Linux 发行版(如 Ubuntu、Fedora)的官方部署渠道等待内核的更新。

如果你仍然想安装,请按照下面的说明来安装 Linux 内核 5.17。

访问 主线内核页面

有两种类型的构建可供选择:通用的和低延迟的。对于标准的系统,你可以下载通用的构建,大部分时间都可以工作。对于音频录制和其他需要低延迟的设置,请下载低延迟的。

通过终端下载以下四个通用软件包并安装:

wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.17/amd64/linux-headers-5.17.0-051700-generic_5.17.0-051700.202203202130_amd64.deb
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.17/amd64/linux-headers-5.17.0-051700_5.17.0-051700.202203202130_all.deb
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.17/amd64/linux-image-unsigned-5.17.0-051700-generic_5.17.0-051700.202203202130_amd64.deb
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.17/amd64/linux-modules-5.17.0-051700-generic_5.17.0-051700.202203202130_amd64.deb

安装完毕后,重新启动系统。

低延迟和其他架构(ARM)的安装指令是一样的。替换上述 wget 命令中的软件包名称。你可以在主线内核页面找到它们。

对于 Arch Linux 用户来说,预计 Linux 内核 5.17 发布包将在 2022 年 4 月第一周的 Arch .iso 月度刷新中到达。

随着这个版本的发布,合并窗口将为接下来 Linux 内核 5.18 打开。


via: https://www.debugpoint.com/2022/03/linux-kernel-5-17/

作者:Arindam 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

三星 Tizen 应用商城已永久关闭

去年 6 月,三星公司关闭了 Tizen 应用商城的注册,并使商店只对现有用户开放,他们只能获得以前下载的应用程序。在 2021 年 12 月 31 日之后,Tizen 应用商店 永久关闭,不再对新用户和现有用户开放。最后一部运行 Tizen 的手机是三星在 2017 年发布的 Z4 手机。Tizen 公布于 2012 年 2 月,是英特尔 MeeGo 系统与三星 LiMo 系统的混合体。2016 年,Tizen 曾一度是全球第四大手机操作系统。由于三星电视全球巨大的出货量,Tizen 目前仍旧是 第一大电视操作系统

老王点评:又一次反抗 iOS 和安卓统治的努力宣告失败。

TIOBE 宣布年度最佳编程语言是 Python

TIOBE 发布公告宣布了这一消息,该奖项被授予在一年内获得最高评级增长的编程语言。2021 年初,Python 从 TIOBE 指数的第 3 位开始,把 Java 和 C 都甩在身后,成为了 第一名。TIOBE 指数是基于一种编程语言在流行搜索引擎中的搜索结果数量的指数,并不表明最好或最有效率的编程语言,也不衡量整个互联网上用一种语言编写的代码量,并且不考虑非英语语言。

老王点评:这是一个趣味性排行榜,你不应该用这个来指导你学习哪种编程语言。

“快速内核头文件”项目 V2 进一步将构建速度提高了 88%

之前我们 报道过,“快速内核头文件” 项目会清理内核头文件依赖关系,大大加快 Linux 内核的构建速度。它可能会成为 2022 年最伟大的 Linux 内核功能之一。周末,该项目发布了 V2 版本,根据 Linux 5.16-rc8 上游状态进行了重构。值得注意的是,现在也支持用 LLVM Clang 编译器进行编译,这使得内核构建过程加快了 88%! 而之前使用 GCC 编译提升了 77%。

老王点评:积极关注这个项目,就是不知道内核社区对它的看法如何?毕竟牵涉太大了。

新的插件可以防止从网上复制代码

JetBrains 发布了一个 AntiCopyPaster 开源插件,可以防止复制和粘贴代码。研究人员观察到,虽然“复制和粘贴构成了编写代码的一个重要部分”,但这样做会导致代码维护、安全问题和许可证问题。由于开发者倾向于抄袭,有很多重复的代码在四处飘荡。截至 2017 年,GitHub 上约有 70% 的代码 来自复制的文件。AntiCopyPaster 会监控 IDE 中的粘贴代码,并扫描目标文件中的 Java 方法以找出重复的内容。该插件在粘贴操作后会等待一段时间,以允许对复制的代码进行编辑。只有当克隆的代码没有被改变时,该插件才会继续检查粘贴的片段是否原样复制的代码。

老王点评:看来以后 ICP 程序员难混咯。

阿里巴巴为 Linux 内核调度器提出组平衡器概念

越来越多的组织为了发展云计算等业务而配置他们的服务器在应用程序之间共享 CPU 核心/资源,而不是将某个 CPU 核心专门分配给单个应用程序/任务。阿里巴巴为 Linux 内核调度器提出一个新的“组平衡器”概念,以提升系统资源利用。这个平衡器的重点是在各组 CPU 核心之间平衡各组任务。这是一种缓解共享模式下冲突的方法,使组尽可能地排他,以获得性能和资源效率。在一台 128 核 CPU 服务器上的基准测试发现,与标准共享模式相比,Redis 在组平衡器模式下可以提升 2~10% 的性能。

老王点评:现在越来越多的看到了中国开发者在内核前沿做出更深入的探索和研究。

夸大其词的 CleanCache 补丁将在十年后从 Linux 内核中删除

CleanCache 是由 Oracle 开发的,在推出时他们宣称它是“非常酷的东西,有巨大的潜力超级优化运行的虚拟机的性能,是相当多的研究和实验的结果。”它有可能在许多环境中以可忽略的成本大幅提高许多工作负载的页面缓存效率。十年后的今天,CleanCache 已经没有任何内核代码在使用它们了,因此,它很可能在 Linux 5.17 中 被主线移除

老王点评:这种新陈代谢挺好,要不 Linux 内核越来越臃肿了。

Linux 内核 2021 年成绩总结

Linux 内核的代码仓库已经有 106 万次提交,来自约 24.3 万个不同的作者。源代码树目前由 3,220 万行组成,涉及 74,300 个文件。但仅从单纯的数据上来说,要比往年低一些。在 2021 年只有 7.37 万次提交;而 2020 年提交量为 9.02 万次,上一次低于 7.3 万次提交还要追溯到 2013 年,当时提交量为 7.09 万。2021 年内核增加了 320 万行,删除了 130 万行,也低于 2020 年的 400 万行和 150 万行。不过,从内核贡献者的邮件地址数量来看,2021 年,有 4421 个电子邮件,2020 年有 4603 个,2019 年有 4383 个,都大致相当。

老王点评:之所以数量降低,更多的原因应该是 2021 年只完成了 5 个主要版本,而其它年份往往有 6 个主要版本。主要版本发布会带来大量的代码行数和提交数量变化。

KDE 发布 2022 年路线图

KDE 2021 年的路线图已经顺利完成,现在发布了新的 2022 年路线图

  • Wayland 会话争取可以完全取代 X11 会话。
  • 对 Breeze 图标集进行大修。
  • 完善多显示器支持。
  • 15 分钟错误计划修复更多错误,“15 分钟错误”指用户在使用桌面的 15 分钟内容易遇到的小问题。
  • 系统设置区域中的语言和格式页面合二为一。

……等等。

老王点评:相比其它更大更闪亮的变化,我更重视这个 15 分钟错误计划。

Mozilla 创始人臭骂 Mozilla 基金会接受加密货币支付

Jamie Zawinski 是最初的 Netscape 开发者之一,因此也被视作 Mozilla 项目的创始人之一。在 Firefox 的开发者宣布他们接受狗狗币、比特币和以太坊等加密货币支付后,对 Mozilla 大骂:“(消音……)每个参与项目的人都应该为这个决定感到羞愧,因为他们与地球上的庞氏骗徒合作。”

老王点评:非常有个性的一位编程高手,但是我觉得对加密货币这个事情,现在下论断还太早。顺便说一句,昨天,1 月 3 日是比特币创始区块的挖出日期。

周易 AI 加速器因缺乏开源客户端而无法进入 Linux 内核主线

周易 AI 加速器是由 Arm 中国开发的,目前已经用在一些 SoC 中,如全志 R329。一位百度工程师发布了一个超过五千行代码的新内核驱动,实现了对它的支持。但是这个驱动目前只能进入暂存区,而无法进入 Linux 内核主线,因为 Arm 中国只是以二进制方式分发了用户空间组件(客户端),而没有提供它的源代码。甚至开发该驱动的开发者似乎也没有用户空间的源代码,而是要靠逆向工程来实现。

老王点评:这种闭源而小众的硬件,Linux 内核是不欢迎的。

开发了五年的新 Linux 随机数发生器仍然无法进入内核主线

LRNG 是 Linux 上的一个新的 /dev/random 实现,它已经开发了五年多。它采用与现有内核实现不同的设计,但是完全兼容现有的接口。由于加密处理的改进、大型并行系统更好的可扩展性、关键代码路径中高达 130% 的性能提升等等,这个实现更加出色。但是这个新的随机数发生器何时能进入 Linux 内核,目前还需要拭目以待。

老王点评:随机数的实现看似简单和基础,但是其实是整个安全系统的基石,所以内核对它非常慎重。

三分之一的暗网域名现在是 V3 洋葱网站

过去两年,Tor 匿名网络经历了一个重大变化,.onion 域名取消了被称为 V2 地址的 16 个字符长的域名,取而代之的是被称为 V3 的 56 个字符长的域名。据调查,目前 62% 是 V2 地址,38% 是 V3 地址。Tor 团队在 9 月自己的 V2-V3 分析中指出,预计 V2 网站将在未来一年内绝迹。

老王点评:V3 域名给对洋葱网络上的非法内容打击增加了困难。