操作系统——内存管理(物理地址、逻辑地址及转换机制)

📅 2026/7/2 6:15:52
操作系统——内存管理(物理地址、逻辑地址及转换机制)
一. 定义1.1 物理地址(Physical Address,PA)被存储单元“看到”的地址。内存芯片实际的存储单元编号,是地址总线上传输的电信号,是实实在在的硬件地址,例如0x0001就代表内存条上的第一个存储单元。(存储单元,软件上叫“字节”(逻辑概念)1 Byte,硬件上叫“电容+晶体管”(物理实体)1 Bit。)1.2逻辑地址(Logical Address,LA)被CPU产生,也叫虚拟地址。CPU执行指令时生成的地址,是程序视角下的地址空间。程序认为自己独占整个内存,从0x00000000开始编址,但这个地址并不对应真实的硬件位置。二. 转换机制1.核心部分MMU:中央处理器(CPU)内部的一个硬件组件,负责处理虚拟内存地址到物理内存地址的转换。它是现代操作系统实现多任务、进程隔离和虚拟内存的核心基石。页表 (Page Table)‌:操作系统内核维护的数据结构,记录“虚拟页号 (VPN)”到“物理页框号 (PFN)”的映射关系及权限控制位(如读写、存在位) 。‌页 (Page) 与页框 (Page Frame)‌:虚拟与物理内存均被划分为固定大小块(常见为4KB),转换仅在块级别进行,块内偏移量直接保留 。‌‌2.MMU组件英文全称核心作用TLBTranslation Lookaside Buffer (快表/翻译后备缓冲器)硬件缓存,存储最近使用的虚拟地址到物理地址的映射。命中时可在 1 个时钟周期内完成翻译,避免慢速的内存页表查询。页表遍历单元Page Table Walker硬件自动状态机。TLB 未命中时,自动读取物理内存中的多级页表(PGD→PUD→PMD→PTE),逐级解析以获取物理地址和权限,并将结果填入 TLB。访问保护与权限校验逻辑Protection Check Logic