Memory Management
Techniques for allocating and protecting memory.
Techniques for allocating and protecting memory.
The core ideas of operating-system memory management: paging and segmentation, virtual memory and page faults, and the mechanisms that make them fast or slow, including page tables, the TLB, replacement policies, copy-on-write and fragmentation.
| Term | Description |
|---|---|
| Paging | Divide physical memory into fixed-size frames and logical memory into pages. |
| Segmentation | Divide memory into variable-sized segments based on logical units. |
| Virtual Memory | Abstraction giving each process a large, isolated address space. |
| Page Fault | Interrupt raised when a process accesses a page not in physical memory. |
| Thrashing | Excessive paging caused by insufficient physical memory. |
| Swapping | Moving entire processes between main memory and disk. |
| Memory Management Unit | Hardware translating virtual addresses to physical addresses. |
| Page Table | A per-process data structure mapping virtual pages to physical frames. |
| Translation Lookaside Buffer | A small hardware cache of recent virtual-to-physical translations that avoids walking the page table on every access. |
| Demand Paging | Loading a page into memory only when it is first accessed. |
| Page Replacement | Choosing which page to evict when memory is full; policies include FIFO, LRU and clock approximations. |
| Copy-on-Write | Sharing pages between processes until one writes, then copying only that page, which makes fork cheap. |
| Memory-Mapped File | Mapping a file into the address space so it is accessed like memory, with the OS handling the I/O. |
| Internal Fragmentation | Wasted space inside an allocated block that is larger than needed. |
| External Fragmentation | Free memory split into pieces too small to satisfy a request even though the total would suffice. |
| Working Set | The set of pages a process actively uses over a window of time; keeping it in memory avoids thrashing. |
| Kernel Space and User Space | Memory regions that separate privileged kernel code from unprivileged programs, enforced by hardware protection. |
The shape of this dataset, read from the data itself: every column, its type and a real value. Agents can use this to plan a query without fetching the whole document.
| Section | Field | Type | Example |
|---|---|---|---|
| data | term | string | Paging |
| data | description | string | Divide physical memory into fixed-size frames a… |
The static files contain the same reference rows as the API, with no API rate limit. Live metadata, such as view counts, may differ. Use the API for content negotiation; use the static files for a cacheable snapshot.
curl "https://yjtoon.yunusemrevurgun.com/api/dataset/memory-management?format=toon"
const res = await fetch( "https://yjtoon.yunusemrevurgun.com/static-data/dataset/memory-management.toon" ); const toon = await res.text();
Rate limit: 120 requests per minute per IP, no key and no signup. API reference →