【发布时间】:2025-12-25 00:45:11
【问题描述】:
我有兴趣深入了解虚拟内存和页面机制,特别是对于 Windows x86 系统。根据我从各种在线资源(包括 SO 上发布的其他问题)中收集到的信息,
1) 每个进程的单独页表位于同一进程的内核地址空间内。
2) 每个进程只有一个页表,包含虚拟页到物理页(或帧)的映射。
3) 与给定虚拟地址对应的物理地址由内存管理单元 (MMU) 计算,本质上是使用提供的虚拟地址的前 20 位作为页表的索引,使用该索引来检索物理帧的起始地址,然后根据虚拟地址的剩余 12 位对该地址应用一些偏移量。
这三个说法正确吗?还是我误解了信息?
【问题讨论】:
标签: c windows assembly x86 kernel