Memory Glossary

Browse 73 memory terms defined in plain English, from the cultural dictionary of computing.

73 Memory Terms

AI Memory
A mechanism that allows an AI system to retain, retrieve, or reuse information from prior interactions, documents, or state beyond a single immediate prompt....
Allocatable
In Fortran, an attribute applied to arrays (and since F2003, scalars) indicating that their storage is dynamically allocated and deallocated at runtime rather...
Apache Arrow
A cross-language columnar memory format designed for efficient analytical processing. Unlike Parquet (on-disk), Arrow defines how data lives in RAM, enabling...
Buffer
Buffer is a temporary storage area in memory used to hold data while it is being transferred between two locations or processes that operate at different...
Buffer Management
The handling of temporary in-memory storage used while reading, writing, or transforming data streams. Good buffer management balances throughput, latency, and...
Bus Error
A low-level runtime fault caused by invalid memory alignment or illegal memory access relative to the hardware bus architecture, especially on systems where...
Byte Array
A contiguous sequence of bytes stored in memory and accessed as an array, commonly used for binary data, network payloads, file contents, and encoded values....
Cache
Cache is a high-speed storage layer that keeps copies of frequently accessed data so future requests can be served faster than fetching from the original,...
Cache Eviction
The removal of entries from a cache when space is needed or when policies such as LRU, LFU, TTL, or invalidation rules decide the data should no longer be...
Chunk
A contiguous block of data treated as a single unit during processing, storage, or transfer. Chunking is used to break large datasets into manageable pieces...
Common Block
A Fortran language construct that defines a named block of shared memory accessible by multiple program units, allowing subroutines to share data without...
Context Window
The maximum amount of text (measured in tokens) that a language model can process in a single interaction. Everything the model can 'see' and 'remember' during...
Conversation Memory
The ability of a conversational AI system to retain and reuse relevant information from earlier turns in the same interaction or across sessions. Good...
Copy-on-Write
An optimization strategy where multiple references share the same data until one of them tries to modify it, at which point a copy is made for the modifier....
CPU Cache
Small, extremely fast memory built into the CPU that stores copies of frequently accessed data. Organized in levels: L1 (fastest, smallest, ~32-64KB per core),...
Custom Allocator
A specialized memory allocation strategy or implementation provided by an application instead of relying solely on the default allocator. Custom allocators are...
Cyclic Reference
A situation where objects, modules, or structures reference each other in a loop, directly or indirectly, so traversal or cleanup becomes more complex. Cyclic...
DMA
Direct Memory Access — a hardware mechanism that allows peripherals to transfer data directly to or from main memory without involving the CPU for each byte,...
Dynamic Memory Allocation
A Dynamic Memory Allocation is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to...
garbage collector
An automatic memory management system that identifies and reclaims memory occupied by objects that are no longer referenced by a program. Garbage collection...
heap
A region of memory used for dynamic allocation, where objects are created and destroyed in arbitrary order during program execution. Unlike the stack (which is...
Heap
Heap is a term with two distinct meanings in computer science. As a data structure, a heap is a specialized tree-based structure that satisfies the heap...
Heap Memory
A Heap Memory is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier...
Heap Spray
An exploitation technique that fills heap memory with repeated attacker-controlled data to increase the chance that execution or references land on a useful...
IIRC
If I Recall Correctly — a qualifier indicating uncertainty about a claim, providing plausible deniability if wrong. The polite way of saying 'I'm about to...
Lazy Initialization
A creational pattern in which an object or resource is not allocated until the first time it is actually needed, deferring the cost of construction and...
Linked List
A linear data structure where each element (node) contains a value and a pointer to the next node, allowing O(1) insertion and deletion at known positions but...
LLM Memory
The mechanisms by which a large language model system retains or reuses relevant information across turns, tasks, or sessions. LLM memory may involve...
Memory Allocation
Memory Allocation is the process of reserving a portion of computer memory for use by a program. Static allocation happens at compile time for global variables...
Memory Bank
A store of information used by an AI system to retain and retrieve prior context, facts, or learned artifacts outside the immediate prompt window. Memory banks...
Memory Leak
A bug where a program allocates memory but never releases it, causing memory usage to grow continuously until the process crashes or the OOM killer intervenes....
Memory Module
A dedicated component responsible for storing, updating, or retrieving information used by an AI system beyond transient prompt context. A memory module may be...
Memory Pool
A pre-allocated block of memory divided into fixed-size chunks that can be quickly allocated and deallocated without calling the system allocator. Eliminates...
OOM Killer
Out-of-Memory Killer — a Linux kernel mechanism that selects and terminates processes when the system runs critically low on memory, preventing a complete...
Page Cache
A region of main memory managed by the OS kernel that caches recently read file pages (typically 4 KB blocks) from disk, so that subsequent reads of the same...
Page Fault
An interrupt triggered when a program accesses a virtual memory page that isn't currently mapped to physical RAM. Minor page faults load the page from the page...
Pass by Reference
A parameter-passing convention in which a function receives a reference (pointer or alias) to the caller's original variable, so modifications inside the...
Pass by Value
A parameter-passing convention in which a function receives an independent copy of the caller's argument, so modifications inside the function have no effect...
Physical Memory
The actual RAM chips installed in a machine, addressed by physical addresses that the memory controller uses to read and write data. The OS kernel maps virtual...
Pointer
Pointer is a variable that stores the memory address of another value rather than the value itself. Pointers are central to systems programming in C and C++,...
Random Access
The ability to read or write any element in a data structure in O(1) time by its index or address, without traversing preceding elements. Arrays and RAM...
Reference
An alias or handle that refers to an object or value stored elsewhere in memory, allowing multiple variables or structures to access the same underlying data...
Reference Type
A type whose variables hold a reference (pointer) to data on the heap rather than the data itself, meaning assignment copies the reference, not the object — so...
Register
A small, fast storage location inside a CPU used to hold data currently being processed, such as operands, addresses, or instruction results.
Retain Cycle
A memory leak pattern in reference-counted systems where two or more objects hold strong references to each other, preventing the runtime from ever...
ROM
Read-Only Memory — a type of non-volatile storage whose contents are written once (during manufacturing or via a programmer) and cannot be modified during...
Segfault
Segfault, short for segmentation fault, is a runtime error that occurs when a program attempts to access memory that it is not allowed to, such as reading from...
Semantic Memory
Memory of general facts, concepts, or knowledge rather than specific episodic experiences. In AI system design, the term is used when distinguishing broad...
Senior Moment
A self-deprecating phrase for a brief lapse in memory or attention, often used jokingly after forgetting something obvious. In engineering chat it usually...
Shallow Copy
A copy of an object that duplicates the top-level structure but shares references to nested objects with the original, meaning mutations to nested children are...
Slice
A lightweight view into a contiguous region of an array or buffer, typically represented as a pointer, a length, and optionally a capacity — without copying...
Smart Pointer
A data structure that wraps a raw pointer, providing automatic memory management through reference counting or ownership semantics, such as C++ unique_ptr,...
Space Complexity
A measure of the amount of memory an algorithm requires as a function of input size. Distinct from time complexity — some problems can be solved in polynomial...
Stack Frame
A contiguous block of memory on the call stack created each time a function is invoked, containing the function's local variables, saved registers, the return...
Stack Overflow
1. A runtime error that occurs when a program's call stack exceeds its allocated size, typically from infinite or excessively deep recursion. 2. The Q&A...
Static Variable
A variable allocated in static memory that persists for the entire lifetime of the program rather than being created and destroyed with each function call. In...
String Builder
A mutable buffer class (e.g., Java's `StringBuilder`, C#'s `StringBuilder`, Go's `strings.Builder`) that efficiently constructs strings by appending segments...
String Pool
A memory region (most notably in the JVM) where string literals are interned so that identical string values share a single object reference, reducing heap...
Struct
Struct is a composite data type in programming that groups together related variables under a single name, where each variable (called a field or member) can...
Swap
Disk space used as virtual memory when physical RAM is full. The OS 'swaps' memory pages to disk — functional but orders of magnitude slower. If your server is...
Thread Local
A variable storage mechanism where each thread gets its own independent copy of the data, avoiding synchronization overhead — commonly used to store...
Total Recall
An almost suspiciously complete memory of prior decisions, incidents, or technical details. In engineering slang, total recall is prized when reconstructing...
Transactional Memory
A concurrency control mechanism that allows a block of memory read/write operations to execute atomically and in isolation — like a database transaction but...
Type Punning
Reinterpreting the raw bit pattern of a value as a different type without performing any conversion — for example, reading an IEEE 754 float's bits as an...
Value Type
A type whose instances are stored directly (typically on the stack) and copied on assignment, rather than being accessed through a reference to heap-allocated...
Variable
A named storage location that holds a value which can be referenced and (in mutable languages) changed during program execution. The most fundamental building...
Volatile
A type qualifier (in C, C++, Java, and others) that tells the compiler a variable's value may change at any time without any action being taken by the...
Weak Map
A key-value collection (in JavaScript and similar languages) where keys must be objects and are held via weak references, meaning entries are automatically...
Weak Reference
A reference to an object that does not prevent it from being garbage collected. Used to build caches, observer patterns, and break reference cycles without...
Weak Set
A JavaScript collection that holds object references weakly, meaning objects in the set can be garbage-collected if no other strong references exist. Unlike...
Working Memory AI
The short-term memory mechanism an AI system uses to hold relevant information while reasoning or carrying out a task. Working memory is important for...
Working Storage
A section of a COBOL program's DATA DIVISION where variables that persist for the life of the program are declared. Unlike LOCAL-STORAGE (per-invocation),...
Write Back
A caching strategy where writes update only the cache initially, marking the cache line as dirty, and the modified data is flushed to the backing store (main...

Related Topics