Files
kernel_new_features/README.md
2022-01-22 16:08:20 +08:00

31 KiB
Raw Blame History

🔰 深挖 Linux 内核的新功能特性,以 io_uring, cgroup, ebpf, llvm, kvm, ceph, fuse 为代表,包含开源项目,代码案例,文章,视频,架构脑图等

🔥 io_uring

—— 2019 年 Linux 5.1 内核首次引入的高性能 异步 I/O 框架,能显著加速 I/O 密集型应用的性能。

文档

开源项目

文章

视频(提取码1024)

🔥 cgroup

—— 限制、控制与分离一个进程组的资源如CPU、内存、磁盘输入输出等

文档

开源项目

  • containerd/cgroups: 用于创建、管理、检查和销毁cgroup。cgroup上设置的资源格式使用这里找到的OCI运行时规范。
  • mhausenblas/cinf: 一个查看命名空间和cgroups的命令行工具
  • flouthoc/vas-quod: 用Rust编写的一个极小的容器运行时
  • poelzi/ulatencyd: 使用cgroups最小化linux系统延迟的守护进程
  • haosdent/jcgroup: jcgroup是JVM上的cgroup包装器。您可以使用这个库来限制线程的CPU共享、磁盘I/O速度、网络带宽等。
  • kinvolk/traceloop: 使用BPF和可重写的环形缓冲区跟踪cgroup中的系统调用
  • tianon/cgroupfs-mount: 挂载cgroupfs (v1)层次结构的简单(过时)脚本特别是用于Debian打包的结构化脚本
  • francisbouvier/cgroups: 一个库来管理cgroups Linux内核特性
  • bpowers/mstat: 这个工具运行在Linux上利用cgroups内核API(也被Docker等容器基础设施使用)来记录一组进程随时间的内存使用情况。

文章

视频(提取码1024)

🔥 ebpf

—— Linux 内核中顶级子模块

文档

开源项目

  • cilium/cilium: 用于提供、保护和观察容器工作负载之间的网络连接——云原生并由革命性的内核技术eBPF提供支持,https://cilium.io/
  • BPF Compiler Collection (BCC): BCC -基于bpf的Linux IO分析、联网、监控等工具
  • bpftrace: Linux eBPF的高级跟踪语言
  • Falco: 一种行为活动监视器旨在检测应用程序中的异常活动。Falco在ebp的帮助下在Linux内核层对系统进行审计。它通过其他输入流(如容器运行时度量和Kubernetes度量)丰富了收集到的数据,并允许持续监视和检测容器、应用程序、主机和网络活动。
  • Katran: 高性能的四层负载均衡器
  • LLVM Compiler: 一个模块化和可重用的编译器和工具链技术的集合。
  • microsoft/ebpf-for-windows: 运行在Windows上的eBPF实现
  • aquasecurity/libbpfgo: 一个用于Linux ebbpf项目的Go库。
  • aquasecurity/tracee: Linux的运行时安全和取证工具。
  • libbpf/libbpf: libbpf是一个基于C/ c++的库作为上游Linux内核的一部分进行维护。它包含一个eBPF加载器它接管处理LLVM生成的eBPF ELF文件以便将其加载到内核中。
  • libbpf/libbpf-rs: Rust生态系统的最小和固执的epf工具
  • foniod/redbpf: Rust库用于构建和运行BPF/eBPF模块
  • aya-rs/aya: 一个用于Rust编程语言的eBPF库其构建的重点是开发人员的体验和可操作性。
  • cilium/hubble: 使用eBPF的Kubernetes网络、服务和安全可观测性
  • kubearmor/KubeArmor: 一个云本地运行时安全强制系统,它在系统级别限制容器和节点的行为(如进程执行、文件访问和网络操作)。
  • iovisor/kubectl-trace: 使用kubectl在kubernetes集群上调度bpftrace程序
  • iovisor/ply: 一款基于eBPF的Linux动态跟踪软件。

文章

视频(提取码1024)

🔥 llvm

—— 模块化、可重用的编译器以及工具链技术的集合

文档

开源项目

文章

视频(提取码1024)

🔥 kvm

文档

  • 官方文档:
  • 其他文档:

开源项目

文章

视频(提取码1024)

🔥 ceph

文档

  • 官方文档:
  • 其他文档:

开源项目

文章

视频(提取码1024)

🔥 fuse

文档

  • 官方文档:
  • 其他文档:

开源项目

文章

视频(提取码1024)