3 dépôts
Extracting data from kernel maps using high-performance event interfaces and ring buffers.
Distinct from Data Mapping: Distinct from general data mapping: focuses on the specific mechanism of retrieving kernel events via ring buffers.
Explore 3 awesome GitHub repositories matching data & databases · Kernel Ring Buffer Retrieval. 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
Extracts data from kernel maps using specialized interfaces for performance events and ring buffers.
ProcMon-for-Linux est un outil d'observabilité système basé sur eBPF et un moniteur de processus pour Linux. Il fonctionne comme un traceur d'appels système et un journal d'activité, capturant les événements du noyau et de l'espace utilisateur en temps réel pour analyser le comportement du système d'exploitation. Le projet dispose d'une interface utilisateur textuelle pour inspecter les fichiers de trace enregistrés. Il sépare l'enregistrement d'événements haute performance sans interface de l'interface d'analyse pour éviter la perte de données lors de lourdes charges système. L'outil fournit des capacités de traçage d'appels système et de surveillance d'activité, incluant la possibilité de filtrer les événements par identifiants de processus ou types d'appels système spécifiques. Il prend en charge le débogage de processus bas niveau et l'analyse rétrospective de l'activité système.
Implements high-performance data transfer from the kernel to userspace using ring buffers.
Tokio-uring est un runtime asynchrone pour Rust qui fournit un framework pour des opérations d'entrée et de sortie non bloquantes haute performance. En s'intégrant directement à l'interface du noyau Linux, il permet aux applications de décharger les tâches de transfert de données lourdes vers le système d'exploitation, maintenant la réactivité tout en gérant les tâches concurrentes via un exécuteur asynchrone spécialisé. Le framework se distingue en utilisant des files d'attente de soumission et d'achèvement au niveau du noyau pour faciliter les transferts de données. Il emploie des techniques de « zéro-copie » et des pools de tampons mémoire pré-alloués, qui permettent aux données de se déplacer entre les espaces d'adressage du noyau et de l'application sans copie redondante. En regroupant plusieurs requêtes dans des transitions de noyau uniques, la bibliothèque minimise la surcharge généralement associée aux appels système fréquents. Au-delà de son modèle d'exécution fondamental, le projet fournit une gestion complète des ressources pour les descripteurs de fichiers et les connexions réseau. Il inclut des utilitaires pour le traitement de flux d'octets et prend en charge l'annulation explicite des opérations pour garantir que les ressources système sont libérées de manière sûre et efficace lors des opérations de données à haut débit.
Implements kernel-ring submission queues to pass I/O requests directly to the kernel, bypassing frequent system calls.