6.5.2. 内核

Control Group v2 在 RHEL 8 中作为技术预览提供

控制组 v2 机制是统一的层次结构控制组。控制组 v2 以分层方式组织进程,并以受控和可配置的方式在层次结构中分发系统资源。

与之前的版本不同,控制组 v2 只有一个层次结构。这个单一层次结构使 Linux 内核能够:

  • 根据拥有者的角色对进程进行分类。
  • 解决多个分级冲突策略的问题。

控制组 v2 支持大量控制器:

  • CPU 控制器规定了 CPU 周期的分布。这个控制器实现:

    • 常规调度策略的权重和绝对带宽限制模型。
    • 实时调度策略的绝对带宽分配模型。
  • 内存控制器规定了内存分布。目前,会追踪以下类型的内存用量:

    • Userland memory - 页面缓存和匿名内存。
    • 内核数据结构,如密度和内节点。
    • TCP 套接字缓冲。
  • I/O 控制器规定了 I/O 资源的分配。
  • 回写控制器与 Memory 和 I/O 控制器交互,并且特定于 Control Group v2

以上信息基于链接 :https://www.kernel.org/doc/Documentation/cgroup-v2.txt您可以参照同一链接来获取有关特定控制组 v2 控制器的更多信息。

(BZ#1401552)

kexec fast reboot 作为技术预览

kexec fast reboot 功能仍作为技术预览提供。由于 kexec fast reboot,现在重启速度显著加快。要使用这个功能,请手动加载 kexec 内核,然后重启操作系统。

(BZ#1769727)

eBPF 作为技术预览

Extended Berkeley Packet Filter(eBPF) 是一个内核中的虚拟机,允许在可访问有限功能的受限沙箱环境中在内核空间中执行代码。

虚拟机包含新系统调用 bpf(),它支持生成各种映射类型,同时还允许在特殊的装配类代码中载入程序。然后,代码被加载到内核,并使用即时编译方式转换为原生机器代码。请注意,只有具有 CAP_SYS_ADMIN 能力的用户(如 root 用户)才可以成功使用 bpf() syscall。详情请查看 bpf(2) 手册页。

载入的程序可附加到不同的点(套接字、追踪点、数据包)来接收和处理数据。

红帽提供的很多组件都使用 eBPF 虚拟机。每个组件处于不同的开发阶段,因此目前并不完全支持所有组件。所有组件都作为技术预览提供,除非有特定组件被显示为受支持。

以下显著的 eBPF 组件当前还作为技术预览提供:

  • The BPF Compiler Collection(BCC) 工具软件包,这是一组使用 eBPF 虚拟机的动态内核跟踪实用程序。BCC 工具软件包在以下架构中作为技术预览提供:64 位 ARM 架构、IBM Power Systems、Letle Endian 和 IBM Z。请注意,AMD 和 Intel 64 位架构完全支持 BCC 工具软件包。
  • bpftrace 是一个使用 eBPF 虚拟机的高级追踪语言。
  • eXpress Data Path(XDP)功能,是一种网络技术,它允许使用 eBPF 虚拟机在内核中快速处理数据包。

(BZ#1559616)