6 Repos
Tracking runtime metadata of memory allocations and deallocations to identify safety violations.
Distinct from Metadata Tracking: Specifically tracks memory allocation lifetimes for safety, unlike file or system metadata tracking.
Explore 6 awesome GitHub repositories matching operating systems & systems programming · Allocation Metadata Tracking. Refine with filters or upvote what's useful.
This project is a suite of runtime diagnostic tools designed to detect memory leaks, concurrency races, and language-specification violations during software execution. It provides a collection of dynamic analysis tools that identify addressability issues, uninitialized memory usage, and memory safety bugs in applications. The toolset includes a thread safety analyzer to identify data races and deadlocks in concurrent code, as well as an undefined behavior sanitizer to detect operations that violate language specifications. The system covers broad capabilities in memory safety monitoring and
Maintains internal records of memory allocations to detect use-after-free and buffer overflow errors.
Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar
Tracks memory allocation bytes and flags builds that exceed defined thresholds.
pwndbg is a GDB plugin and binary analysis framework designed for reverse engineering, exploit development, and low-level program analysis. It extends the core functionality of the debugger to provide advanced memory inspection and automation tools. The project distinguishes itself with specialized capabilities for heap analysis across glibc, jemalloc, and musl, as well as a comprehensive kernel debugging toolkit for inspecting Linux kernel tasks and slab allocators. It includes an integrated ROP gadget searcher for constructing exploit chains and an LLM-powered debugging assistant that provi
Displays metadata and freelists of the buddy allocator filtered by zone, order, or CPU.
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Describes the buddy system allocation strategy for splitting and coalescing memory blocks.
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Monitors the temporary allocator to detect use-after-scope bugs where short-lived data is stored in long-lived structures.
Dieses Projekt ist ein umfassendes Bildungsprogramm und Deep-Learning-Framework, das darauf ausgelegt ist, praktisches Deep Learning mit PyTorch anhand von Notebooks und Codebeispielen zu vermitteln. Es dient als High-Level-Bibliothek zum Erstellen, Trainieren und Bereitstellen neuronaler Netze und fungiert als Modell-Trainings-Orchestrator, der PyTorch-Modelle, Optimierer und Verlustfunktionen koordiniert. Das Projekt bietet spezialisierte Toolkits für Computer Vision, Natural Language Processing und die Vorverarbeitung tabellarischer Daten. Es zeichnet sich durch fortschrittliche Trainingskontrollen aus, wie z. B. diskriminative Lernraten, ein Zwei-Wege-Callback-System zur Anpassung der Trainingslogik und eine High-Level-Learner-Abstraktion, die die Geräteplatzierung und Trainingsschleifen automatisiert. Das Framework deckt ein breites Fähigkeitsspektrum ab, einschließlich der automatisierten Konstruktion von Datenpipelines, der Analyse von Modellarchitekturen und der Leistungsbewertung bei Klassifizierungs-, Regressions- und Segmentierungsaufgaben. Es enthält zudem Dienstprogramme für verteiltes Training über mehrere GPUs, Mixed-Precision-Training zur Speicheroptimierung und spezialisierte Unterstützung für medizinische Bilddaten. Das Projekt wird als eine Reihe von Jupyter Notebooks bereitgestellt.
Identifies all currently allocated tensors in memory to debug leaks and monitor consumption.