12 dépôts
Architectural patterns and utilities for managing object lifecycles and memory safety.
Distinguishing note: Focuses on garbage-collection-aware memory management, distinct from general memory allocation.
Explore 12 awesome GitHub repositories matching software engineering & architecture · Memory Management Systems. Refine with filters or upvote what's useful.
Servo is a high-performance, memory-safe web rendering engine designed for cross-platform embedding. It provides a modular framework that allows developers to integrate web content rendering into native applications across desktop, mobile, and embedded systems. By enforcing strict process isolation and memory safety, the engine creates a secure execution environment for processing web content. The engine distinguishes itself through a task-based, parallelized architecture that decouples layout, style, and rendering processes to maximize responsiveness. It utilizes a hardware-abstracted graphi
Uses explicit context types and rooting markers to track object reachability and prevent borrow hazards.
Bend is a high-level parallel programming language and compiler designed to execute code across multi-core CPUs and GPUs automatically. By translating functional source code into a graph-based intermediate representation, it enables massive parallel execution without requiring manual management of threads, locks, or atomic operations. The runtime operates as an interaction net engine, where computations are represented as networks of nodes that reduce through local rewriting rules. This model utilizes a work-stealing scheduler to distribute tasks across thousands of hardware threads, ensuring
Provides automated memory management through reference counting and cycle collection to eliminate manual allocation.
Nim is a statically typed, compiled systems programming language designed for high performance and cross-platform development. It translates high-level source code into C, C++, or JavaScript, allowing developers to produce efficient native binaries or web-compatible scripts from a single codebase. The language emphasizes a clean, indentation-based syntax that simplifies code hierarchy while maintaining the power of a full-featured systems language. What distinguishes Nim is its robust metaprogramming framework, which allows developers to inspect, modify, and generate code structures during th
Controls object lifecycles using destructors and move semantics for predictable memory management.
Mono is an open source implementation of the .NET Framework that provides a managed execution environment, base class libraries, and a cross-platform virtual machine. It serves as a compliant implementation of the ECMA Common Language Infrastructure standard, enabling the execution of intermediate language binaries across different operating systems. The project includes a complete toolset for C# development, featuring a command line compiler and CLI to transform source code into executable assemblies. It distinguishes itself with a flexible managed memory system that supports multiple automa
Implements a flexible managed memory system with multiple automated garbage collection strategies including generational and Boehm collectors.
Hermes is a mobile-optimized JavaScript runtime and engine designed for React Native. It functions as an ahead-of-time bytecode compiler that converts JavaScript source code into a dense binary format during the build process to eliminate the need for parsing and compilation at runtime. The engine features a baseline JIT compiler that generates native machine code for frequently called functions to improve performance after the initial launch. It also includes a mobile-optimized garbage collector that precisely identifies reachable objects to minimize memory overhead and pause times on resour
Reduces pause times and memory overhead on mobile devices using a precise garbage collection system.
PowerInfer is an inference engine and serving framework designed to run large language models on local hardware. It combines a hybrid CPU-GPU offloader, a quantization tool, and a sparse model optimizer to enable the execution of high-parameter models on consumer-grade devices. The system distinguishes itself through neuron-activation-based offloading, using a predictor model to preload frequent neurons into VRAM while keeping rare neurons in system memory. This hybrid execution model balances workloads between the GPU and CPU based on input patterns to optimize memory access and increase tok
Uses a small predictor model to preload frequent neurons into VRAM while keeping rare ones in system memory.
This project is a technical reference and study of the Go language internals, providing a deep dive into the runtime architecture, compiler internals, and memory management mechanisms. It serves as a guide for analyzing how the Go compiler and runtime implement low-level features. The materials specifically detail the implementation of polymorphism through virtual tables and dynamic dispatch. It covers the translation of high-level source code into portable pseudo-assembly and machine-specific instructions, alongside the structural mechanics of the interface system, including scalar type boxi
Covers the runtime's internal processes and algorithms used to automatically reclaim unused memory.
HybridCLR is a hybrid C# execution engine and assembly loader designed for Unity. It provides a system for hot-updating C# logic across all platforms at runtime without requiring the application to be rebuilt or reinstalled. The project is distinguished by its mixed-mode execution, which runs unmodified code at native speed while using a high-performance interpreter for updated functions. It includes a generic type resolver that allows hot-updated code to use generic classes and functions regardless of whether they were pre-instantiated in the main binary. To protect proprietary source code,
Reduces the memory footprint of assembly metadata to ensure stability on memory-constrained mobile devices.
Kotlin-native is an ahead-of-time, cross-platform compiler and toolchain that transforms Kotlin source code into standalone native machine binaries. It functions as an LLVM native compiler, producing executable files that run directly on hardware without the requirement of a virtual machine. The project enables cross-platform native development across multiple operating systems and processor architectures, including iOS, Linux, and Windows. This allows for the creation of native Apple platform applications and software for embedded systems programming where direct memory management and minima
Includes a custom memory management system with garbage collection tailored for native execution environments.
MemOS is an open-source persistent memory layer for AI agents and large language models, providing a self-hosted server that stores and retrieves structured memory across sessions. It enables AI systems to recall user preferences, history, and context without retraining, using a graph-based API and a web management interface for viewing, editing, and organizing memory items, skills, traces, and knowledge bases. The system distinguishes itself through a portable memory interchange protocol that allows memory to be transferred between different AI models, devices, and applications, along with a
Loads relevant memory before it is needed by analyzing dialogue history, task semantics, or environmental cues.
ImagePicker est un composant de sélection d'images mobile qui fournit une interface unifiée pour sélectionner des photos depuis une galerie ou capturer de nouvelles images via la caméra de l'appareil. Il sert de sélecteur de média UI de marque et de couche d'intégration de la caméra de l'appareil. Le système fonctionne comme une galerie multimédia optimisée pour la mémoire, utilisant des identifiants d'assets au lieu de données binaires brutes pour éviter la surcharge de mémoire de l'application. Il permet la personnalisation de l'interface, incluant les couleurs, les polices et les étiquettes de texte, via un objet de configuration pour correspondre à des identités de marque spécifiques. Le composant inclut des capacités pour gérer les assets d'image via la résolution dynamique d'assets et l'application de limites de nombre de sélections. Il fournit également une couche d'accès multimédia unifiée pour faire le pont entre la galerie photo système et la caméra de l'appareil.
Manages image assets and selection limits to prevent crashes on resource-constrained mobile devices.
Ce projet est une collection organisée de questions et réponses techniques conçues pour aider les développeurs à se préparer aux entretiens en ingénierie logicielle au sein de l'écosystème iOS. Il sert d'outil d'étude structuré pour évaluer la maîtrise de l'architecture d'applications mobiles, de la conception de systèmes et des concepts fondamentaux de programmation. Le dépôt fournit une référence complète pour les sujets de développement essentiels, incluant la gestion de la mémoire, la concurrence, les modèles de conception et la persistance des données. En couvrant ces domaines fondamentaux, il permet aux utilisateurs de réviser les sujets d'entretien courants de l'industrie et de tester leur compréhension de la manière de structurer la logique d'application et de gérer efficacement les ressources système. Le contenu couvre un large éventail de domaines techniques, de l'implémentation des contraintes d'interface et de la gestion du cycle de vie des vues à l'application de techniques de test et de débogage automatisés. Ces matériaux sont organisés pour aider les développeurs à identifier les domaines nécessitant une étude plus approfondie et à affiner leur connaissance des pratiques standards utilisées pour maintenir des applications mobiles fiables et réactives.
Explains core concepts of memory management and retain cycle prevention for mobile application developers.