开始
size = 4
正常
是
否
vpn=pageTableSize虚拟页数过大
判断
断言物理地址大于等于0且物理地址加上size不会超过内存大小
得到相应地页表表项
size
计算出物理地址
virAddr是4的倍数
TLB 转换表
返回 PageFaultException 并结束
返回BusErrorException并结束
结束
返回 NoException并结束
判断用户逻辑地址是否对齐
计算出虚拟地址所在的页号 vpn 及其在页面中的偏移量offset
查找 TLB 表
不同的转换方法
返回 AddressErrorException并结束
未找到
是否只读
线性转换表
size = 2
设置表项正在使用标志
断言tlb和pagetable二者有且只有其一
表项中相应的物理是否地址大于实际的内存物理地址
页表中显示该页为无效时
virAddr是2的倍数