文档给出的已知条件
一个页的大小是32字节(页内偏移量占5位)
虚拟地址空间是1024个页——虚拟地址页号(VPN) 占10位
物理地址空间是128 个页——物理地址页帧号(PFN)占7 位
页表项占1个字节,最高位是有效位,剩下7位是下一级页表的基址或存储的值
采用二级页表结构
页目录基址寄存器(PDBR)和物理页帧的内容均在程序中给出
第一题要求找出图中虚拟地址对应物理地址和其存储的内容
PDBR的值是108(号页帧),
第一个虚拟地址是0x611c
11000(24) | 01000 (8) | 11100(28) |
---|---|---|
一级页号(页目录索引) | 二级页号(页表索引) | 页内偏移 |
现在去找到108号页帧第24号页目录项 值为0xa1
1 | 0100001(33) |
---|---|
有效位 | 二级页表的基址 |
有效位为1,故该值是有效的,得到二级页表的基址为33号页帧
并根据二级页号为8, 找到对应项存储的值为0xb5
1 | 0110101(53) |
---|---|
有效位 | 值 |
有效位为1,得到最终的页面为53号页帧,页内偏移是28(对应的物理地址0x6bc)
找到最后的值0x08
后面两个地址的寻找过程同理(若寻找过程有效位为0则发生缺页)