Linux内核5.0发布

将主要版本数量增加到 5 个并不意味着任何重大更改或兼容性故障。 它只是帮助我们亲爱的莱纳斯·托瓦兹 (Linus Torvalds) 保持内心的平静。 以下是一些变化和创新的列表。

核心核心:

  • ARM 等非对称处理器上的 CFS 进程调度程序的工作方式有所不同 - 它首先加载低功耗且节能的内核。
  • 通过 fanotify 文件事件跟踪 API,您可以在打开文件执行时收到通知。
  • 集成了 cpuset 控制器,可用于根据 CPU 和 NUMA 节点的使用情况来限制进程组。
  • 支持以下 ARM 设备:Qualcomm QCS404、Allwinner T3、NXP/Freescale i.MX7ULP、NXP LS1028A、i.MX8、RDA Micro RDA8810PL、Rockchip Gru Scarlet、Allwinner Emlid Neutis N5 等。
  • ARM子系统的改进:内存热插拔、Meltdown和Spectre保护、52位内存寻址等。
  • 支持 x86-64 的 WBNOINVD 指令。

内存子系统:

  • ARM64 平台上的 KASAN 工具可进行低内存消耗的测试标签替换。
  • 内存碎片已显着减少(高达 90%),从而使透明大页机制工作得更好。
  • mremap(2) 在大内存区域上的性能提高了多达 20 倍。
  • KSM机制中,jhash2被xxhash替代,因此KSM在64位系统上的速度提升了5倍。
  • ZRam 和 OOM 的改进。

块设备和文件系统:

  • 具有多级请求队列系统的 blk-mq 机制已成为块设备的主要机制。 所有非 mq 代码已被删除。
  • 改进了 NVMe 支持,特别是在网络上的设备操作方面。
  • 对于 Btrfs,实现了对交换文件的完全支持,并且无需重写元数据即可更改 FSID。
  • F2FS 中添加了 ioctl 调用,用于通过 fsck 延迟检查 FS。
  • 集成 BinderFS - 用于进程间通信的伪 FS。 允许您在同一环境中运行多个 Android 实例。
  • CIFS的多项改进:DFS缓存、扩展属性、smb3.1.1协议。
  • ZRam 可以更好地与未使用的交换设备配合使用,从而节省内存。

安全和虚拟化:

  • 添加了由俄罗斯联邦 FSB 开发的 Streebog 哈希函数 (GOST 34.11-2012)。
  • 支持 Google 为低功耗设备开发的 Adiantum 加密算法。
  • 包括 XChaCha12、XChaCha20 和 NHPoly1305 算法。
  • seccomp 调用的处理现在可以移至用户空间。
  • 对于 KVM 来宾系统,实现对 Intel 处理器跟踪扩展的支持,同时将性能下降降至最低。
  • KVM/Hyper-V 子系统的改进。
  • virtio-gpu 驱动程序现在支持虚拟显示器的 EDID 模拟。
  • virtio_blk 驱动程序实现了丢弃调用。
  • 基于 Intel DSM 1.8 规范实现了 NV 内存的安全功能。

设备驱动程序:

  • 对 DRM API 进行更改,以完全支持自适应同步(DisplayPort 标准的一部分)和可变刷新率(HDMI 标准的一部分)。
  • 包含显示流压缩标准,用于对发送到高分辨率屏幕的视频流进行无损压缩。
  • AMDGPU 驱动程序现在支持 CI、VI、SOC2 的 FreeSync 15 HDR 和 GPU 重置。
  • 英特尔视频驱动程序现在支持 Amber Lake 芯片、YCBCR 4:2:0 和 YCBCR 4:4:4 格式。
  • Nouveau 驱动程序支持 Turing TU104/TU106 系列显卡的视频模式。
  • 适用于 Raspberry Pi 触摸屏、CDTech 面板、Banana Pi、DLC1010GIG 等的集成驱动程序。
  • HDA 驱动程序支持“jack”按钮、LED 指示灯、Tegra186 和 Tegra194 设备。
  • 输入子系统已学会在某些 Microsoft 和 Logitech 鼠标上进行高精度滚动。
  • 网络摄像头、电视调谐器、USB、IIO 等的驱动程序发生了很多变化。

网络子系统:

  • UDP 堆栈支持零复制机制,用于通过套接字传输数据,无需中间缓冲。
  • 那里还添加了通用接收卸载机制。
  • 改进了存在大量 xfrm 策略时的搜索性能。
  • VLAN 驱动程序中添加了卸载隧道的功能。
  • 对 Infiniband 和无线网络的支持进行了多项改进。

来源: linux.org.ru

添加评论