All Projects → 0voice → kernel_new_features

0voice / kernel_new_features

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

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to kernel new features

Kvm Kernel Example
Examples for: Learning KVM - implement your own kernel
Stars: ✭ 221 (-79.8%)
Mutual labels:  linux-kernel, kvm
bpfbox
🐝 BPFBox 📦 Exploring process confinement in eBPF
Stars: ✭ 93 (-91.5%)
Mutual labels:  linux-kernel, ebpf
Ipftrace2
A packet oriented Linux kernel function call tracer
Stars: ✭ 193 (-82.36%)
Mutual labels:  linux-kernel, ebpf
Ebpf exporter
Prometheus exporter for custom eBPF metrics
Stars: ✭ 829 (-24.22%)
Mutual labels:  linux-kernel, ebpf
ebpfkit-monitor
ebpfkit-monitor is a tool that detects and protects against eBPF powered rootkits
Stars: ✭ 80 (-92.69%)
Mutual labels:  linux-kernel, ebpf
virtblkiosim
Virtual Linux block device driver for simulating and performing I/O.
Stars: ✭ 30 (-97.26%)
Mutual labels:  linux-kernel, kvm
Polycube
eBPF/XDP-based software framework for fast network services running in the Linux kernel.
Stars: ✭ 217 (-80.16%)
Mutual labels:  linux-kernel, ebpf
ipftrace
[Deplicated] Now we have more sophisticated (and compact) implementation in ipftrace2 repository. Please check it as well.
Stars: ✭ 60 (-94.52%)
Mutual labels:  linux-kernel, ebpf
ebpfkit
ebpfkit is a rootkit powered by eBPF
Stars: ✭ 472 (-56.86%)
Mutual labels:  linux-kernel, ebpf
evcloud
EVCloud是一个基于ceph和libvirt的轻量级云主机管理平台,实用稳定,维护简易
Stars: ✭ 44 (-95.98%)
Mutual labels:  kvm, ceph
portablebpf
You came here so you could have a base code to serve you as an example on how to develop a BPF application, compatible to BCC and/or LIBBPF, specially LIBBPF, having the userland part made in C or PYTHON.
Stars: ✭ 32 (-97.07%)
Mutual labels:  linux-kernel, ebpf
metalnetes
Create and manage multiple Kubernetes clusters using KVM on a bare metal Fedora 29 server. Includes helm + rook-ceph + nginx ingress + the stock analysis engine (jupyter + redis cluster + minio + automated cron jobs for data collection) - works on Kubernetes version v1.16.0 - 1.16.3 was not working
Stars: ✭ 37 (-96.62%)
Mutual labels:  kvm, ceph
gentoo-on-486
Instructions on how to install modern Gentoo Linux on ancient 486-based PCs.
Stars: ✭ 56 (-94.88%)
Mutual labels:  linux-kernel
iovisor-ovn
IOVisor OVN integration
Stars: ✭ 62 (-94.33%)
Mutual labels:  ebpf
uno
Extremely fast, native C#-dialect and powerful tooling for mobile and desktop developers
Stars: ✭ 75 (-93.14%)
Mutual labels:  fuse
KubeArmor
Cloud-native Runtime Security Enforcement System
Stars: ✭ 434 (-60.33%)
Mutual labels:  ebpf
script
same script
Stars: ✭ 13 (-98.81%)
Mutual labels:  kvm
kvmd
The main Pi-KVM daemon
Stars: ✭ 125 (-88.57%)
Mutual labels:  kvm
linux-grsec
Arch Linux package for the Linux Kernel and modules with grsecurity/PaX patches.
Stars: ✭ 19 (-98.26%)
Mutual labels:  linux-kernel
p2pflow
Ethereum p2p traffic analysis with eBPF
Stars: ✭ 24 (-97.81%)
Mutual labels:  ebpf

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

所有数据来源于互联网。所谓取之于互联网,用之于互联网。

如果涉及版权侵犯,请邮件至 [email protected] ,我们将第一时间处理。

如果您对我们的项目表示赞同与支持,欢迎您 lssues我们,或者邮件 [email protected] 我们,更加欢迎您 pull requests 加入我们。

感谢您的支持!

🔥 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等容器基础设施使用)来记录一组进程随时间的内存使用情况。

文章

视频

🔥 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动态跟踪软件。

文章

视频

🔥 llvm

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

文档

LLVM命令指南

基本命令

命令 说明
llvm-as LLVM汇编器
llvm-dis LLVM反汇编器
opt LLVM优化器
llc LLVM静态编译器
lli LLVM字节码解释器
llvm-link LLVM字节码连接器
llvm-lib LLVM的与lib.exe兼用的库工具
llvm-lipo 用于处理通用二进制文件的LLVM工具
llvm-config 打印LLVM编译选项
llvm-cxxmap Mangled name重映射工具
llvm-diff LLVM 结构”diff”
llvm-cov 发出覆盖信息
llvm-profdata 配置数据工具
llvm-stress 生成随机的.ll文件
llvm-symbolizer 将地址转换为源代码中的位置
llvm-dwarfdump 转储并检验DWARF调试信息
dsymutil 操作存档文件中的DWARF调试符号文件
llvm-mca LLVM机器码分析器
llvm-readobj LLVM目标文件分析器

GNU bintils替代命令

命令 说明
llvm-addr2line addr2line的替代品
llvm-ar LLVM归档器
llvm-cxxfilt LLVM符合名称分析器
llvm-nm 列出LLVM字节码和目标文件中的符号表
llvm-objcopy 目标文件复制和编辑工具
llvm-objdump LLVM目标文件转储器
llvm-ranlib 库存档索引生成工具
llvm-readelf GNU风格的LLVM对象读取器
llvm-size 打印目标文件尺寸信息
llvm-strings 打印目标文件中的字符串
llvm-strip 目标文件去除调试信息工具

调试工具

命令 说明
bugpoint 自动测试用例缩减工具
llvm-extract 从LLVM模块中提取函数
llvm-bcanalyzer LLVM字节码分析器

开发工具

命令 说明
FileCheck 灵活的模式匹配文件验证程序
tblgen 目标描述到C++代码生成器
lit LLVM集成测试仪
llvm-build LLVM项目构建实用程序
llvm-exegesis LLVM机器指令基准
llvm-pdbutil PDB文件取证和诊断
llvm-locstats 计算DWARF调试位置的统计信息

开源项目

文章

视频

🔥 联系专栏

Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈

关注微信公众号【后台服务架构师】——【联系我们】,加小姐姐,获取【每天免费技术直播链接】以及更多Linux 内核源码学习资料!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].