6 repository-uri
Allocation of contiguous memory arrays for direct pointer access using C types.
Distinct from Memory Allocators: Specifically targets the creation of raw C-style contiguous arrays for high-speed access.
Explore 6 awesome GitHub repositories matching operating systems & systems programming · Raw Memory Allocation. Refine with filters or upvote what's useful.
Torch7 is a scientific computing environment and tensor computation library used for deep learning research and numerical analysis. It functions as a Lua-based framework for training neural networks and learning agents, providing a toolkit for implementing architectures and training through reinforcement learning algorithms. The project is distinguished by its tight integration with C, utilizing a binding layer to map high-level scripting to low-level C structures for direct memory access. It supports hardware-accelerated computation by offloading linear algebra and convolution operations to
Creates contiguous arrays of basic C types for direct pointer access and high-performance memory operations.
JNA is a foreign function interface and native memory mapper that allows Java applications to call functions in shared native libraries without writing custom JNI wrapper code. It serves as a JNI alternative framework for invoking C functions and mapping native data structures using high-level interfaces. The library distinguishes itself through its ability to translate Java objects and primitives into C-style structs, unions, and pointers for cross-platform memory exchange. On Windows, it provides a dedicated toolkit for interacting with Component Object Model objects using both early and la
Allocates contiguous blocks of memory for arrays of structures to be consumed by native functions.
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 functions to allocate, read, and write untyped memory buffers.
node-ffi is a foreign function interface library for Node.js that enables calling functions from native C dynamic libraries without writing manual C++ bindings. It serves as a system for loading shared objects and DLLs into process memory, translating JavaScript values into binary representations, and executing external binaries at runtime. The project utilizes a wrapper around the libffi library to construct call frames and execute native functions with dynamic arguments. It distinguishes itself by providing a native memory manager for allocating raw pointers and a mapping system that connec
Provides a low-level interface for allocating raw contiguous memory buffers and manipulating C-style pointers.
This project is a technical reference and a collection of internal analysis notes focused on the Go language runtime and compiler. It provides a detailed breakdown of the language internals, covering memory management, garbage collection, and the execution model of the scheduler. The material distinguishes itself by providing deep dives into low-level system details, including a reference for Go assembly instructions, register usage, and system call interfacing. It specifically analyzes the internal implementation of concurrency primitives, such as the goroutine scheduling mechanism, channel
Explains how the Go runtime allocates raw memory blocks and reserves address spaces using system calls.
Buffer este o bibliotecă pentru manipularea datelor binare care oferă o implementare compatibilă cu browser-ul a interfeței de programare a aplicațiilor (API) pentru date binare din Node.js. Permite dezvoltatorilor să creeze, să modifice și să proceseze structuri de date binare brute în medii web folosind o interfață consistentă care oglindește standardele server-side. Biblioteca se distinge prin furnizarea unei abordări unificate pentru dezvoltarea JavaScript cross-platform, permițând cod partajat între medii server și browser. Realizează acest lucru prin polyfilling-ul metodelor binare standard și extinderea prototipului nativ de byte array, asigurându-se că dezvoltatorii pot gestiona memoria și structurile de date fără a se baza pe implementări specifice mediului. Toolkit-ul include utilitare pentru gestionarea accesului la date conștient de endianness și efectuarea de slicing zero-copy pentru a manipula segmente de memorie fără a duplica payload-urile. De asemenea, suportă o compatibilitate largă a datelor prin facilitarea conversiilor între buffere, array-uri tipizate și blob-uri, asigurându-se că datele binare pot fi schimbate între diverse interfețe web și formate de stocare.
Uses underlying typed array views to manage raw binary memory buffers within the constraints of the browser environment.