16 dépôts
Operations for adjusting memory addresses based on data type sizes.
Distinct from Integer Arithmetic: Distinct from general integer arithmetic: focuses on memory address offsets.
Explore 16 awesome GitHub repositories matching software engineering & architecture · Pointer Arithmetic. Refine with filters or upvote what's useful.
This project is a comprehensive, community-maintained knowledge base and toolkit designed for competitive programming. It serves as a centralized repository for algorithmic theory, data structures, and mathematical techniques, providing a structured reference for informatics and collegiate programming competitions. The project distinguishes itself by integrating educational content with a robust suite of automation utilities. It provides a complete workflow for competitive programming, including tools for automated test case generation, solution verification, and direct interaction with onlin
Adjusts pointer memory addresses using integer offsets scaled by data type size.
CS-Base is a comprehensive educational platform and technical repository designed to support software engineers in mastering backend architecture, artificial intelligence engineering, and career development. It functions as a centralized knowledge hub that combines illustrated theoretical tutorials with practical, project-based learning to bridge the gap between foundational computer science concepts and professional industry requirements. The project distinguishes itself by integrating a robust career mentorship framework with advanced AI engineering resources. It provides users with tools f
Bypasses type safety to enable direct memory manipulation or pointer arithmetic while maintaining garbage collector awareness.
The Rust Programming Language Book is the official technical guide and educational resource for the Rust language. It provides a comprehensive walkthrough of the language's design, focusing on its core identity as a systems programming language that enforces memory safety and high-performance execution without the need for a garbage collector. The project is distinguished by its focus on ownership, borrowing, and lifetime tracking, which allow the compiler to verify memory safety and thread safety at compile time. It covers the language's unique approach to zero-cost abstractions, including t
Provides low-level operations for bypassing type safety to enable direct memory access via raw pointers.
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
Provides interception of memory access to monitor heap usage and detect invalid frees.
This project is a comprehensive library of reference implementations for fundamental data structures and algorithms, designed to support technical interview preparation and software engineering assessments. It provides a structured collection of computational techniques for solving complex problems involving arrays, strings, graphs, trees, and mathematical analysis. The library distinguishes itself by offering specialized implementations for advanced topics, including concurrent programming patterns and geometric algorithms. It features thread-safe primitives for managing shared state and tas
Manages dynamic memory structures by traversing and reordering node references to perform efficient insertions, deletions, and transformations.
This project is a collection of educational resources and technical guides focused on Go performance optimization. It provides instruction on improving execution speed and reducing memory usage through code and architectural refinements. The guides cover advanced strategies for low-level programming, including the use of assembly for SIMD instructions and unsafe pointers for direct memory manipulation. It also details concurrency optimization techniques such as lock sharding and cache-line padding to reduce contention and improve hardware utilization. The material encompasses broad capabilit
Instruction on using unsafe pointers for direct memory access and high-speed deserialization.
MAME is a vintage hardware emulation platform designed to recreate the circuitry of arcade games, computers, and consoles to run original software on modern devices. It functions as a retro gaming preservation framework for managing, verifying, and archiving ROM sets and disk images to ensure long-term software accessibility. The project features a system debugging tool for inspecting emulated memory, CPU registers, and execution flow via breakpoints and disassembly. It also includes a Lua-based automation layer that exposes core system state and hardware controls for custom behavior and anal
Provides capabilities to read and write values to emulated device address spaces.
Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces
Provides pointer arithmetic operations for advancing and rewinding memory addresses.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Emulates GICv2 on ARM and PIC/LAPIC on IA32 interrupt controllers for guest virtual machines.
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
C3 performs volatile and unaligned load and store operations to interact with hardware.
Ce projet est une traduction chinoise d'un guide complet sur le langage de programmation Go. Il sert de ressource éducative localisée et de manuel technique conçu pour fournir des conseils sur la syntaxe, la conception et le développement logiciel. La ressource couvre un large éventail d'enseignements sur le langage Go, y compris l'implémentation de modèles de programmation et la conception système. Elle inclut des leçons traduites et des exemples axés sur les fonctionnalités fondamentales du langage telles que la concurrence et l'utilisation des interfaces. Le contenu couvre divers domaines, notamment les fondamentaux du langage, la modélisation de données, la réflexion au runtime et la gestion de la mémoire. Il fournit également une couverture détaillée de l'architecture logicielle, de la gestion des erreurs, de l'assurance qualité et du réseau web. La documentation est structurée comme un manuel technique comprenant du contenu traduit, des errata et des corrections pour garantir un apprentissage précis.
Describes operations for adjusting memory addresses using offsets and pointer-to-integer conversions.
Scala Native est un compilateur ahead-of-time qui transforme le code source Scala en binaires natifs autonomes pour une exécution directe sur le matériel. Il fournit une toolchain binaire native conçue pour éliminer les temps de chauffe de la machine virtuelle et assurer un démarrage instantané en compilant le code en exécutables optimisés. Le projet propose une interface d'interopérabilité C et une interface de fonction étrangère (FFI) qui mappent les en-têtes C natifs vers des objets du langage, permettant l'exécution directe de bibliothèques externes. Il inclut un gestionnaire de mémoire de bas niveau qui prend en charge la manipulation directe de pointeurs et l'utilisation de structs pour un contrôle précis de la mise en page mémoire. Le système utilise la compilation basée sur LLVM et le lien binaire statique pour regrouper les composants du runtime dans un seul fichier. Il équilibre l'accès matériel de bas niveau avec une gestion automatique de la mémoire par garbage collector pour le développement d'applications bare metal.
Enables direct memory access and manual control over memory addresses and offsets via low-level primitives.
Qira is a runtime analysis tool and interactive binary debugger designed for the QEMU emulator. It functions as a binary execution tracer that records a full timeline of instruction invocations and provides a system for monitoring memory operations within guest processes. The project enables the analysis of compiled binaries by tracing instruction-level execution and mapping raw memory addresses to user-defined annotations. It includes capabilities for state-snapshotting to manage execution forks, allowing the navigation of divergent logic paths and the inspection of CPU register states and s
Tracks read and write operations to specific memory addresses during the runtime of a guest process.
HyperDbg is a hardware-assisted kernel-mode debugging platform that leverages virtualization to monitor and control system execution. By utilizing hypervisor-level primitives, it enables deep system analysis and instrumentation without relying on standard operating system debugging interfaces. The framework provides a comprehensive environment for inspecting both kernel and user-mode processes, allowing for granular control over execution flow and system state. The project distinguishes itself through a transparent debugging layer designed to remain invisible to the target environment. It emp
Identifies which instructions read from or write to specific memory structures.
TShock is a server management tool and plugin framework for dedicated Terraria servers. It functions as an administrative suite and anti-cheat tool designed to control player permissions, monitor game integrity, and extend server functionality. The project provides a framework for creating custom plugins that modify the game world and implement new commands. It enables internal state modification through bytecode injection, packet interception, and memory manipulation to bypass engine restrictions and alter live game environments. Administrative capabilities include a hierarchical role-based
Accesses and modifies internal game engine variables by reading and writing directly to the process memory space.
PS2Recomp is a static recompiler for PlayStation 2 that translates machine instructions from executable binaries into source code to enable execution on modern hardware. It functions as a binary-to-source translator and a binary analysis tool designed to facilitate the preservation of legacy software. The project distinguishes itself through a hardware emulation runtime that manages memory models and register contexts, combined with a static binary patcher for replacing raw instructions and overriding function bindings. It utilizes a specialized vector unit instruction execution system that m
Implements a guest memory model and register context to provide a compatible execution environment for translated code.