5 repositorios
Low-level capabilities for accessing and manipulating memory buffers used by network protocols.
Distinct from Direct Memory Buffers: The candidates focus on filesystem access, GPU buffers, or editor plugins; this is about raw memory access for network protocol objects.
Explore 5 awesome GitHub repositories matching operating systems & systems programming · Memory Buffer Access. Refine with filters or upvote what's useful.
Este proyecto es una colección completa de materiales educativos de programación en Python, incluyendo tutoriales, ejercicios y muestras de código curadas. Sirve como un plan de estudios de aprendizaje y kit de herramientas de ingeniería de software, utilizando Jupyter Notebooks para combinar código ejecutable con texto educativo descriptivo. El repositorio proporciona guías de implementación prácticas para construir aplicaciones de modelos de lenguaje grandes, como sistemas de generación aumentada por recuperación, agentes de IA con estado y flujos de trabajo de aprendizaje automático. Se distingue por ofrecer un enfoque estructurado para flujos de trabajo de codificación agentica, cubriendo destilación de ventana de contexto, enrutamiento de modelos agnóstico al proveedor y salidas estructuradas forzadas por esquema. Los materiales cubren una amplia gama de capacidades de ingeniería de software, incluyendo programación asíncrona con colas de tareas distribuidas, desarrollo de aplicaciones web con API REST y flujos de trabajo de análisis de datos. También incluye recursos para dominar el diseño orientado a objetos, implementar tuberías de CI/CD y aplicar estándares profesionales de linting y formato.
Teaches how to use the buffer protocol to read internal object data and reduce memory overhead.
nghttp2 es un conjunto de librerías C de bajo nivel y herramientas diseñadas para implementar el protocolo HTTP/2. Proporciona una implementación eficiente en memoria de la lógica central del protocolo, incluyendo el framing, la multiplexación de flujos y el control de flujo. El proyecto incluye una librería dedicada para la compresión y descompresión de cabeceras HPACK para reducir el ancho de banda de red. También proporciona un conjunto de herramientas para analizar el tráfico de red y realizar benchmarks del rendimiento del servidor, incluyendo mediciones de throughput y latencia. Sus capacidades más amplias cubren la implementación de protocolos y la gestión de tráfico, incluyendo la negociación de conexión ALPN, la priorización de peticiones y la validación de componentes de cabecera. La librería admite extensiones de protocolo personalizadas a través de un sistema de eventos basado en callbacks e incluye utilidades para la gestión de memoria y la traducción de códigos de error. El proyecto incluye soporte de compilación y scripts de configuración para realizar compilación cruzada de binarios para la plataforma Android.
nghttp2 increments the reference count of a buffer to prevent it from being freed while other components require access.
Asterinas es un kernel de sistema operativo con seguridad de memoria diseñado para prevenir condiciones de carrera (data races) y corrupción de memoria. Funciona como un kernel compatible con la ABI de Linux, permitiendo la ejecución de binarios de Linux existentes y cargas de trabajo en contenedores mientras proporciona un modelo de distribución de sistema operativo declarativo. El proyecto se distingue por actuar como host de contenedores de máquinas virtuales y como SO invitado de computación confidencial, permitiendo su ejecución dentro de entornos de ejecución confiables (TEE) aislados por hardware como Intel TDX. Implementa una base de computación confiable mínima al aislar operaciones inseguras de bajo nivel y separa los mecanismos centrales del kernel de las implementaciones de políticas específicas. El sistema cubre una amplia gama de capacidades, incluyendo gestión de memoria física y virtual, multiprocesamiento simétrico y abstracción de hardware para varias arquitecturas de CPU. También incluye soporte para runtimes de contenedores seguros, un conjunto completo de primitivas de red y sockets, y una cadena de herramientas especializada para la compilación y emulación del kernel. El proyecto admite el despliegue en múltiples arquitecturas en plataformas x86-64, RISC-V 64 y LoongArch 64.
Provides safe interfaces for reading and writing raw, untyped byte buffers using volatile copy operations.
DPDK es un framework de procesamiento de paquetes y librería de red de bypass de kernel diseñada para acelerar el rendimiento del plano de datos de red. Proporciona una pila de red en espacio de usuario que mueve los datos de red directamente desde la tarjeta de interfaz de red al espacio de usuario, eliminando la sobrecarga del kernel del sistema operativo para lograr un alto rendimiento y baja latencia. El framework utiliza una arquitectura de controlador de modo de sondeo (poll mode driver) que reemplaza la red impulsada por interrupciones con un mecanismo de sondeo constante. Este enfoque permite la implementación de funciones y protocolos de red fuera del kernel. El proyecto cubre capacidades para el procesamiento de paquetes de alto rendimiento, virtualización de funciones de red y el desarrollo de dispositivos de red personalizados como firewalls y balanceadores de carga.
Implements hugepage-based memory allocation to improve memory access speed and reduce TLB misses for packet buffers.
Velox es un motor de ejecución de consultas en C++ de alto rendimiento y biblioteca de procesamiento de datos columnares. Sirve como un framework componible para implementar motores de consulta analíticos, proporcionando un evaluador de expresiones vectorizadas y un toolkit para sistemas de gestión de datos. El proyecto se distingue por su uso de ejecución columnar vectorizada y asignación de memoria basada en arena para procesar conjuntos de datos a gran escala. Cuenta con optimizaciones especializadas como caché de tablas de broadcast join, push-down de filtros dinámicos y codificación de diccionario para reducir la sobrecarga de memoria y acelerar las lecturas analíticas. El motor cubre una amplia gama de capacidades analíticas, incluyendo la implementación de hash, merge y semi joins, así como agregación paralela multietapa y cálculo de funciones de ventana. Proporciona primitivas para almacenamiento columnar en memoria, decodificación de datos Parquet e integración con almacenamiento en la nube. La extensibilidad se proporciona a través de un sistema de registro de funciones para funciones escalares y agregadas personalizadas, con bindings de alto nivel disponibles para conectar la lógica de C++ a Python.
Uses reference-counted buffers and memory pools to support zero-copy data views across the execution engine.