3 个仓库
Memory regions shared between the operating system kernel and user-space processes to eliminate data copying.
Distinct from Shared Memory Transports: Specifically addresses the kernel-to-userspace boundary rather than general inter-process communication
Explore 3 awesome GitHub repositories matching data & databases · Kernel-Userspace Shared Memory. Refine with filters or upvote what's useful.
该项目是一个教育资源,提供了一个全面的开发教程,用于在 Linux 内核中使用 C、Go 和 Rust 编写并加载 eBPF 程序。它作为一个技术指南,用于开发直接在内核中执行的自定义逻辑。 这些材料涵盖了专门的领域,包括内核可观测性和追踪、用于入侵检测的安全实现,以及用于包过滤和负载均衡的高性能网络工程。它还包括用于 Linux 内核追踪以及使用 kprobes、uprobes 和 tracepoints 的专用手册。 该项目涵盖了广泛的功能领域,如内核插桩、系统监控和可观测性、网络分析以及安全强制执行。它进一步扩展到 GPU 和驱动程序的硬件级调试,以及底层系统操作和资源管理。
Creates sparse memory regions shared between kernel and userspace to avoid expensive system calls.
该项目是一个 macOS 系统摄像头驱动程序和软件插件,将软件视频流暴露为硬件识别的摄像头输入。它作为 OBS 虚拟摄像头插件,允许将 OBS 的实时输出用作其他应用中的网络摄像头设备。 该工具支持将制作套件中的合成视频路由到 Zoom 或 Google Meet 等视频会议应用中。这允许流式传输处理后的场景,而不是原始的网络摄像头画面。 该系统使用内核级设备驱动程序和共享内存缓冲区传输与 macOS 集成,将视频帧从应用进程移动到操作系统。它利用 CoreMedia 框架处理视频流时序和元数据。
Uses a high-speed shared memory region to transfer raw video frames between user-space and the kernel driver.
liburing is a C library that provides a low-level wrapper for the Linux kernel io_uring interface. It serves as a programming interface for executing non-blocking disk and network operations and abstracts the system calls required to communicate with the Linux kernel. The library focuses on reducing system call overhead and context switching for high-throughput data processing. It implements mechanisms for shared ring buffers, zero-copy buffer registration, and fixed-file descriptor mapping to minimize internal lookup and reference counting overhead. The project covers asynchronous input and
Implements shared memory regions between user space and kernel space to exchange IO requests and completions without copying.