①访问虚地址读取虚页号 → 访问基址寄存器读取页表起始地址 → 拼接起始地址和虚页号得到页表地址 → 依据页表地址访问对应的页表项 → 根据装入位判断是否命中
②命中 → 对应的实页号 + 页内地址 = 实地址 → 执行Cache的映射操作
③未命中 → 利用 I/O 系统将页调入主存 → 执行第②步
•Cache未命中,与TLB、Page是否命中无关
•Cache命中,Page必然命中,TLB不一定命中
•TLB命中,Page必然命中
•Page命中,TLB不一定命中
•Page不命中,Cache不命中
•分析助记 •TLB在Cache中,Page在主存中,TLB是Cache一个很小的副本
•Cache命中 :意味着虚拟存储器访存流程进入了最后一步——执行Cache的映射操作,则所在页面必然已调入主存 → Page必然命中,而TLB是位于Cache内的Page小副本,故不一定命中
•Cache未命中:意味着Cache内没有与CPU请求页面相同的页,无法直接进行映射操作——但虚存访存流程前几步(查找页表地址、访问页表项、判断装入位)并不受影响 → 与TLB、Page无关
•TLB是Page的子集,根据数学集合关系可知:TLB命中是Page命中的充分不必要条件
•Page命中:意味着访存流程进行到 执行Cache映射操作 一步,但之后Cache映射能否命中与Page无关
•Page未命中:Page位于主存,Page未命中意味着主存内没有对应的页,Cache自然无法执行 主存→Cache 的映射操作,故Cache不命中