操作系统 页表
页表是虚拟内存系统用来存储逻辑地址和物理地址之间映射关系的数据结构。
逻辑地址是由CPU为进程的页生成的,因此通常由进程使用。
物理地址是内存的实际帧地址。它们通常由硬件或更具体地说,由RAM子系统使用。
下方给出的图像考虑到了这一点。
Physical Address Space = M words
Logical Address Space = L words
Page Size = P words
Physical Address = log 2 M = m bits
Logical Address = log 2 L = l bits
page offset = log 2 P = p bits
CPU始终通过逻辑地址访问进程。然而,主存储器仅能识别物理地址。
在这种情况下,一种名为内存管理单元的单位出现了。它将逻辑地址的页号转换为物理地址的帧号。偏移量在两种地址中保持不变。
为了执行这个任务,内存管理单元需要一种特殊的映射,这是由页表完成的。页表存储了与页表的页号对应的所有帧号。
换句话说,页表将页号与其在内存中的实际位置(帧号)进行映射。
在下面给出的图像中,展示了如何通过偏移量来访问所需帧的单词。