经过两个月的开发, Linus Torvalds 发布 Linux 内核 5.14 版本 而在这个新版本中最显着的变化,例如新的 quotactl_fd() 和 memfd_secret() 系统调用, 删除 ide 和原始驱动程序,新的 cgroup 的 I/O 优先级驱动, SCHED_CORE 任务调度模式,用于创建 BPF 验证程序加载器的基础结构。
新版本从开发者那里收到了 15883 个修复 2002 补丁大小:69MB(更改影响了 12,580 个文件, 添加了 861501 行代码,删除了 321,654 行).
Linux 5.14中的主要新闻
在这个新版本中 cgroup 的新 I/O 优先级驱动程序 -rq-qos,可以 控制对块设备的处理请求的优先级 由每个 cgroup 的成员生成。 对新的优先级控制器的支持已添加到 mq-deadline I/O 调度程序中。
另一个重要的变化是 ext4,它现在实现了一个新的 EXT4_IOC_CHECKPOINT ioctl 命令 这会强制将所有挂起的日志事务及其相关缓冲区下载到磁盘,并覆盖日志使用的存储区域。 改变 是作为防止文件系统信息泄漏计划的一部分而准备的。 还 对 Btrfs 进行了性能优化 在 fsync 执行期间删除不必要的扩展属性的日志时, 具有扩展属性的密集操作性能提升至 17%.
而且 添加了 quotactl_fd() 系统调用,它允许您不通过特殊的设备文件来管理配额,而是通过指定与应用配额的文件系统关联的文件描述符。
还 具有 IDE 接口的块设备的旧驱动程序已从内核中删除,早已被 libata 子系统取代。 对旧设备的支持完全保留,更改仅涉及使用旧驱动程序的可能性,当使用名为 /dev/hd* 的单元时,而不是 /dev/sd*。
Task Scheduler 有了新的 SCHED_CORE 调度模式 该 允许您控制哪些进程可以在同一个 CPU 内核上一起运行. 可以为每个进程分配一个标识 cookie,该 cookie 定义进程之间的信任范围(例如,属于同一用户或容器)。
添加了 memfd_secret() 系统调用该 允许您在地址空间中创建私有内存区域 隔离,仅对专有进程可见,不反映在其他进程中,内核无法直接访问。
管理程序 KVM for ARM64 系统增加了使用 MTE 扩展的能力 在来宾系统上,允许您将标签绑定到每个内存分配操作并组织检查 正确使用指针来阻止漏洞的利用 由访问已释放的内存块、缓冲区溢出、初始化前调用以及在当前上下文之外使用引起。
ARM64 提供的指针认证 现在可以为内核和用户空间单独配置。 该技术允许使用专门的 ARM64 指令来验证使用数字签名的返回地址,这些数字签名存储在指针本身未使用的高位中。
对于英特尔 CPU, 从 Skylake 家族开始,到 Coffee Lake 结束, 使用英特尔 TSX (事务同步扩展) 默认情况下是禁用的, 这提供了一种通过动态消除不必要的同步操作来提高多线程应用程序性能的方法。 由于可能进行 Zombieload 攻击,这些扩展程序被禁用。
还 继续与 MPTCP 集成 (多路径 TCP), 在新版本中,添加了一种机制来为 IPv4 和 IPv6 设置您自己的流量哈希策略,这使得在计算确定数据包路由选择的散列时,可以从用户空间确定将使用哪些数据包字段,包括封装字段。
控制器 amdgpu 实现了对新的 AMD Radeon RX 6000 系列 GPU 的支持, 开发代号为“Beige Goby”(Navi 24)和“Yellow Carp”,并改进了对 Aldebaran GPU(gfx90a)和 Van Gogh APU 的支持。 添加了同时使用多个 eDP 面板的功能。
至 APU Renoir,支持在视频内存中使用加密缓冲区, 而对于之前的 Radeon RX 6000 (Navi 2x) 和 AMD GPU,默认情况下启用主动状态电源管理 (ASPM) 支持,以前仅对 Navi 1x、Vega 和 Polaris GPU 启用。
对于 AMD 芯片,添加了对共享虚拟内存的支持 (SVM) 基于异构内存管理子系统 (HMM),它允许使用具有自己的内存管理单元 (MMU) 的设备,这些设备可以访问主内存。 即使借助 HMM,也可以在 GPU 和 CPU 之间组织一个联合地址空间,GPU 可以在其中访问进程的主内存。
在其他突出的变化中:
- 添加了对 AMD Smart Shift 技术的初始支持,该技术可动态更改配备 AMD 芯片组和显卡的笔记本电脑的 CPU 和 GPU 功耗,以提高游戏、视频编辑和 3D 渲染的性能。
- 添加了使用 UEFI 固件或 BIOS 提供的 EFI-GOP 或 VESA 帧缓冲区进行输出的 simpledrm 图形控制器。
- 添加了对 Raspberry Pi 400 的支持。
- 对于 Lenovo 笔记本电脑,添加了 WMI 接口以通过 /sys/class/firmware-attributes/ 更改 BIOS 设置。
- 扩展了对 USB4 的支持。
我在西班牙裔博客圈中读到的最好的新闻摘要,完整、解释性和详细,但不会让人不知所措。 所以它应该总是如此。 谢谢!