4 个仓库
Abstractions for interacting with kernel-level data structures from user space.
Distinct from eBPF Tooling: Focuses on the API abstractions for maps and ring buffers, not just the underlying tooling.
Explore 4 awesome GitHub repositories matching operating systems & systems programming · Kernel Interfaces. Refine with filters or upvote what's useful.
This project is a Go library and runtime for loading and managing eBPF programs and maps. It provides a bytecode loader and kernel interface to inject instructions into kernel hooks for system-level execution and observability across both Linux and Windows operating systems. The library features a relocation engine and tooling to ensure program compatibility across different kernel versions and distributions. It supports portable deployment by embedding compiled objects for multiple CPU architectures into a single binary and provides the ability to load signed system drivers on Windows. The
Offers abstractions for interacting with kernel maps, ring buffers, and global variables from user space.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Describes syscalls, virtual filesystems, ioctl, mmap, ptrace, Netlink, and eBPF for user-kernel interaction.
Keepalived 是一个高可用性管理器和虚拟 IP 故障转移工具,确保服务的持续可用性。它使用虚拟路由器冗余协议(VRRP)协调浮动 IP 地址在主节点和备份节点之间的迁移,以管理路由器冗余和无缝故障转移。 该项目的特点在于与 Linux 内核 IPVS 模块集成,作为传输层负载均衡器运行。它使用各种调度算法和转发方法(如 NAT、直接路由或隧道)在后端服务器之间分配网络流量。 该系统包括使用 TCP、HTTP 和双向转发检测(BFD)协议的网络健康监控功能,可在毫秒级识别故障。它进一步支持通过执行自定义脚本、SMTP 管理警报以及跨多个实例同步路由路径来实现自动化故障转移编排。 该软件提供了一个支持模板化、网络命名空间隔离以及通过 SNMP 导出系统指标的配置界面。
Translates user-space configuration into Linux kernel IP Virtual Server rules for high-performance transport-layer load balancing.
FRRouting 是一个互联网路由套件,包含一组实现标准 IPv4 和 IPv6 路由协议的守护进程。它为 BGP 提供协议引擎,包含 EVPN 网络虚拟化器和 MPLS 标签管理器,以及用于使用 YANG 模型进行程序化配置和数据检索的 gRPC 路由接口。 该套件通过 Lua 脚本框架实现扩展,可在内部钩子处执行自定义脚本以修改路由行为。它还具有事务性配置模型,使用独立的候选数据库和运行数据库,以确保系统设置的原子提交和回滚。 该项目涵盖了广泛的内部和外部网关协议,包括 OSPF、IS-IS、EIGRP 和 RIP。它支持通过分段路由 (Segment Routing) 和 SRv6 进行高级流量工程,通过 VRF 隔离和 L3VPN 进行网络虚拟化,并通过 SNMP 和 BGP 监控协议进行全面监控。 该软件可通过源码编译、跨架构工具链或预构建的 Docker 容器镜像进行部署。
Synchronizes routing tables and network state between the protocol suite and the underlying system kernel.