5 Repos
Memory management techniques that use raw binary formats to avoid object overhead and garbage collection.
Distinct from Memory Management: Focuses on the memory layout and binary representation rather than just the allocation strategy.
Explore 5 awesome GitHub repositories matching operating systems & systems programming · Binary Memory Layouts. Refine with filters or upvote what's useful.
This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
Explains how to arrange objects in memory to maintain compatibility with binary APIs.
Rust-bindgen ist ein Build-Time-Generator für Foreign Function Interface (FFI)-Bindings und ein C-Header-Parser, der entwickelt wurde, um die Interoperabilität zwischen Sprachen zu automatisieren. Er fungiert als Tool, um Rust mit C-, C++- und Objective-C-Bibliotheken zu verbinden, indem er während des Kompilierungsprozesses plattformspezifische Deklarationen erstellt. Das Projekt zeichnet sich durch seine Fähigkeit aus, komplexe Sprachkonstrukte der C-Familie zu verarbeiten, einschließlich C++-Vererbung und -Methoden sowie Objective-C-Klassen und -Protokolle. Es stellt die binäre Kompatibilität über verschiedene Architekturen hinweg sicher, indem es zielspezifische Speicherlayouts berechnet und validiert, dass die generierten Strukturgrößen und Alignments mit den ursprünglichen Quelldefinitionen übereinstimmen. Das Tool bietet umfangreiches Typ-Mapping für C-Unions, Bitfields und flexible Array-Member, während nicht übersetzbare oder komplexe Standardbibliothekstypen auf opake Byte-Blobs abgebildet werden. Es enthält ein Konfigurationssystem zum Filtern von Bindings, zum Ersetzen komplexer Typen und zur Steuerung der Trait-Ableitung oder Feldsichtbarkeit. Generierte Bindings können extrahierte Dokumentationen aus System-Headern enthalten und werden durch einen Standard-Formatter verarbeitet, um ein konsistentes Code-Styling sicherzustellen.
Calculates structure padding and alignment by querying the target platform's compiler to ensure binary compatibility.
Ant ist ein modulares Game-Engine-Framework, das für den Aufbau interaktiver 3D-Erlebnisse entwickelt wurde. Es bietet eine Kern-Laufzeitinfrastruktur, die die Integration unabhängiger, wiederverwendbarer funktionaler Pakete zur Erweiterung der Engine-Funktionen unterstützt. Die Engine verfügt über eine spezialisierte Ahead-of-Time-Asset-Pipeline, die rohe 3D-Modelle, Texturen und Shader in optimierte Binärformate transformiert. Durch die Nutzung vorab berechneter, speicherabgebildeter Layouts minimiert das System den Laufzeit-Verarbeitungsaufwand und verbessert die Ladezeiten für Spiel-Assets. Die Entwicklung wird durch einen skriptbaren World-Editor unterstützt, der die Szenenzusammenstellung und Objektkonfiguration über eine visuelle Oberfläche ermöglicht. Dieser Arbeitsbereich ist erweiterbar konzipiert und ermöglicht benutzerdefinierte Tool- und Schnittstellenkonfigurationen über eine Skriptschicht. Das Framework enthält zudem integrierte Debugging-Tools für die Inspektion der Anwendungslogik während der Ausführung.
Stores processed assets in pre-computed memory-mapped formats to ensure high-speed loading and efficient data access.
Umbrella is a comprehensive ecosystem of TypeScript-based libraries and a mono-repository designed for UI rendering, mathematical frameworks, WebAssembly bridging, and functional data processing. It provides a suite of tools for managing reactive data streams, binary serialization, and specialized memory management. The project includes a reactive component model for generating HTML, SVG, and Canvas elements from nested data structures, as well as a system for integrating JavaScript and WebAssembly through generated bindings. It features a mathematical framework for linear algebra, tensor ope
Manages raw memory buffers using fixed offsets and typed views to optimize high-performance data exchange.
This project is an educational resource and technical manual for Apache Spark, focused on the architecture and practical application of large-scale data processing. It serves as a guide for big data engineering and distributed computing, covering the principles of parallel processing and fault-tolerant data distribution. The material provides instructional content on designing distributed ETL pipelines and implementing data analysis workflows. It includes tutorials for polyglot data processing, offering patterns and examples for using Python, Scala, and Java within a unified environment. The
Details the Tungsten engine's use of off-heap binary memory to optimize data processing performance.