[缩略语大全]之[内存管理]篇

1 内存管理总体概念

|-------|------------------------------|--------|--------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| MM | Memory Management | 内存管理 | 内核子系统 |
| RAM | Random Access Memory | 随机存储器 | 主存 |
| DRAM | Dynamic RAM | 动态内存 | 主流内存 |
| PMEM | Persistent Memory | 持久内存 | NVDIMM |
| VA | Virtual Address | 虚拟地址 | 进程视角 |
| PA | Physical Address | 物理地址 | 硬件视角 |
| MMU | Memory Management Unit | 内存管理单元 | 地址转换 |
| TLB | Translation Lookaside Buffer | 地址快表 | 缓存映射 |
| Page | --- | 页 | 基本管理单位 |
| Frame | --- | 页帧 | 物理页 |


2 地址空间与地址类型

|------------|------------------------|----------|-------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| VAS | Virtual Address Space | 虚拟地址空间 | 每进程独立 |
| PAS | Physical Address Space | 物理地址空间 | 全系统 |
| KVA | Kernel Virtual Address | 内核虚拟地址 | 内核态 |
| UVA | User Virtual Address | 用户虚拟地址 | 用户态 |
| HVA | Host Virtual Address | 主机虚拟地址 | 虚拟化 |
| GPA | Guest Physical Address | 客户物理地址 | 虚拟机 |
| IO VA | I/O Virtual Address | I/O 虚拟地址 | IOMMU |
| Linear Map | --- | 线性映射 | PA→VA |


3 页与页框基础概念

|---------------|-------------------|------|-----------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| PAGE_SIZE | --- | 页大小 | 常见 4K |
| PFN | Page Frame Number | 页帧号 | 物理索引 |
| struct page | --- | 页描述符 | 核心结构 |
| Compound Page | --- | 复合页 | Huge Page |
| Order | --- | 阶数 | 2^order |
| HighMem | High Memory | 高端内存 | 32 位 |
| LowMem | Low Memory | 低端内存 | 直接映射 |
| ZONE | --- | 内存域 | 分区管理 |


4 内存 Zone 体系

|--------------|----------------------|----------|--------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| ZONE_DMA | Direct Memory Access | DMA 区 | 设备访问 |
| ZONE_DMA32 | DMA 32-bit | 32 位 DMA | 扩展 DMA |
| ZONE_NORMAL | --- | 普通区 | 主要内存 |
| ZONE_HIGHMEM | High Memory | 高端区 | 32 位 |
| ZONE_MOVABLE | Movable | 可迁移区 | 热插拔 |
| ZONE_DEVICE | Device Memory | 设备内存 | PMEM |


5 页表与地址转换

|---------|-----------------------|------|------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| PGD | Page Global Directory | 一级页表 | 顶级 |
| P4D | Page 4th Directory | 四级页表 | 5 级时 |
| PUD | Page Upper Directory | 上级页表 | |
| PMD | Page Middle Directory | 中级页表 | |
| PTE | Page Table Entry | 页表项 | 最底层 |
| PT | Page Table | 页表 | 映射结构 |
| HugeTLB | Huge TLB Page | 大页 | 显式 |
| THP | Transparent Huge Page | 透明大页 | 自动 |


6 TLB 与缓存相关

|-----------|------------------------------|----------|----------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| TLB | Translation Lookaside Buffer | 快表 | 映射缓存 |
| TLB Miss | --- | TLB 未命中 | 触发查表 |
| TLB Flush | --- | TLB 刷新 | 失效 |
| ASID | Address Space ID | 地址空间 ID | 减少 flush |
| PCID | Process Context ID | 进程上下文 ID | x86 |
| Shootdown | --- | TLB 击穿 | 跨核失效 |


7 伙伴系统 Buddy Allocator

|---------------|-----------------|------|----------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| Buddy | Buddy Allocator | 伙伴系统 | 页分配 |
| Order | --- | 阶数 | 2^order |
| Free Area | --- | 空闲链表 | 每阶 |
| MIGRATE | --- | 迁移类型 | 可移动性 |
| Pageblock | --- | 页块 | 迁移单位 |
| Compaction | --- | 内存规整 | 减少碎片 |
| Fragmentation | --- | 内存碎片 | 外碎片 |


8 Slab 分配器体系

|---------|-------------|----------|-------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| Slab | --- | slab 分配器 | 小对象 |
| SLAB | --- | 旧 slab | |
| SLUB | --- | 默认 slab | |
| SLOB | --- | 简化 slab | 嵌入式 |
| kmalloc | --- | 内核分配 | 小内存 |
| kfree | --- | 内核释放 | |
| Cache | --- | 缓存 | 对象池 |
| ctor | Constructor | 构造函数 | 对象初始化 |


9 虚拟内存与 VMA

|-----------|---------------------|-------|------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| VM | Virtual Memory | 虚拟内存 | 核心机制 |
| VMA | Virtual Memory Area | 虚拟内存区 | 连续映射 |
| mm_struct | --- | 内存描述符 | 进程 |
| mmap | Memory Map | 内存映射 | 系统调用 |
| munmap | --- | 取消映射 | |
| brk | --- | 堆扩展 | |
| Stack | --- | 栈区 | 自动增长 |
| Heap | --- | 堆区 | 动态分配 |


10 缺页异常与按需分页

|---------------|---------------|------|---------------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| PF | Page Fault | 缺页异常 | 访问未映射 |
| Major Fault | --- | 主缺页 | 访问磁盘 |
| Minor Fault | --- | 次缺页 | 仅建映射 |
| Demand Paging | --- | 按需分页 | 延迟分配 |
| Fault Handler | --- | 缺页处理 | do_page_fault |
| COW | Copy On Write | 写时复制 | fork |


11 回收与 LRU 体系

|----------------|---------------------|--------|------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| Reclaim | --- | 内存回收 | 释放页 |
| LRU | Least Recently Used | 最近最少使用 | 页面算法 |
| Active | --- | 活跃页 | 热页 |
| Inactive | --- | 非活跃页 | 冷页 |
| kswapd | --- | 回收线程 | 后台 |
| Direct Reclaim | --- | 直接回收 | 同步 |
| Shrinker | --- | 收缩器 | 子系统 |


12 页面回写与脏页

|---------------|------------|------|-----|
| 缩略语 | 英文全称 | 中文 | 说明 |
| Dirty Page | --- | 脏页 | 未写回 |
| Writeback | --- | 回写 | 写磁盘 |
| WB | Write Back | 回写 | 缩写 |
| flusher | --- | 刷新线程 | |
| Background WB | --- | 后台回写 | |
| Sync | --- | 同步写 | |


13 OOM 与内存压力

|-----------------|----------------------------|--------|------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| OOM | Out Of Memory | 内存耗尽 | 极端状态 |
| OOM Killer | --- | OOM 杀手 | 杀进程 |
| badness | --- | OOM 分数 | |
| Memory Pressure | --- | 内存压力 | |
| PSI | Pressure Stall Information | 压力信息 | 新机制 |
| Watermark | --- | 水位线 | 回收阈值 |


14 cgroup 与内存控制

|--------|-----------------------|-------|------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| cgroup | Control Group | 控制组 | 资源隔离 |
| memcg | Memory cgroup | 内存控制组 | |
| RSS | Resident Set Size | 常驻集 | 物理内存 |
| PSS | Proportional Set Size | 比例集 | 共享 |
| Cache | --- | 页缓存 | |
| Swap | --- | 交换区 | |


15 Swap 与匿名页

|------------------|------|---------|------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| Swap | --- | 交换区 | 磁盘 |
| Swapin | --- | 换入 | |
| Swapout | --- | 换出 | |
| Anonymous Page | --- | 匿名页 | 无文件 |
| File-backed Page | --- | 文件页 | |
| ZRAM | --- | 压缩 Swap | 内存压缩 |


16 IOMMU 与 DMA

|----------------|----------------------|----------|-------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| DMA | Direct Memory Access | 直接内存访问 | 设备 |
| IOMMU | I/O MMU | I/O 地址转换 | 隔离 |
| DMA Map | --- | DMA 映射 | |
| DMA Unmap | --- | 解除映射 | |
| Coherent | --- | 一致性 | Cache |
| Scatter-Gather | --- | 分散聚集 | SG |


17 内存热插拔与大内存

|---------------|------|------|----|
| 缩略语 | 英文全称 | 中文 | 说明 |
| Hotplug | --- | 热插拔 | 内存 |
| Hotremove | --- | 热移除 | |
| Memory Block | --- | 内存块 | |
| Section | --- | 内存段 | |
| Sparse Memory | --- | 稀疏内存 | |
| Huge Page | --- | 大页 | 性能 |


18 调试与观测工具

|---------|------------|---------|-------|
| 缩略语 | 英文全称 | 中文 | 说明 |
| procfs | Process FS | 进程文件系统 | /proc |
| sysfs | System FS | 系统文件系统 | /sys |
| vmstat | --- | 内存统计 | |
| slabtop | --- | slab 监控 | |
| perf | --- | 性能分析 | |
| ftrace | --- | 内核跟踪 | |


19 易混淆术语对照

|---------|---------|-------|
| 术语 A | 术语 B | 区别 |
| VA | PA | 虚拟与物理 |
| Page | Frame | 抽象与实体 |
| Slab | Buddy | 小对象与页 |
| RSS | PSS | 独占与共享 |
| THP | HugeTLB | 自动与显式 |
| Reclaim | OOM | 回收与终止 |

相关推荐
okseekw2 小时前
Java反射:解锁框架开发的终极密码,让代码拥有"动态灵魂"!
java·后端
鹿野素材屋2 小时前
技术闲聊:为什么网游会在固定时间点,刷出固定的道具?
前端·网络·unity
码农水水2 小时前
腾讯Java面试被问:阻塞队列BlockingQueue的实现原理
java·后端·python·面试
廋到被风吹走2 小时前
【Spring】BeanPostProcessor详解
java·后端·spring
·云扬·2 小时前
MySQL Join关联查询:从算法原理到实战优化
数据库·mysql·算法
bbq粉刷匠2 小时前
二叉树中两个指定节点的最近公共祖先
java·算法
ppo923 小时前
Spring Boot 集成 Kafka 3.9.0:部署、监控与消息发送教程
java·架构
JavaEdge.3 小时前
IDEA卡死没反应的全部解决方案
java·ide·intellij-idea
高山上有一只小老虎3 小时前
使用Memory Analyzer (MAT)分析内存溢出
java·jvm