tlb cache操作系统地址翻译

记录王道操作系统P211地址翻译题目

题目:1.有一个tlb与一个data cache
2.存储器以字节为编址单位
3.虚拟地址14位
4.物理地址12位
5.页面大小64B
6.tlb为四路组相联,共有16个条目
7.data cache是物理寻址,直接映射的,行大小为4B,共有16组
问题:写出访问0x03d4,0x00f1和0x0229的过程。

分析题目中的信息需要具备的知识点有
1.tlb和data cache 之间的关系,tlb和cache各自的地址结构形式。
2.cache映射方式。
3.基本分页存储管理使用tlb后逻辑地址转化物理地址变换过程。

若:tlb在cpu和cache之间,则先访问tlb,若tlb介于cache和memory之间,则先访问cache.
这里说明了cache是物理寻址的,所以先经过tlb将逻辑地址转化为物理地址,再通过cache物理寻址找到需要的地址。

	tlb 虚拟地址格式 页号+页内偏移 
	cache 直接映射方式的物理地址对应格式 cache页号 +页内偏移 
	
	页面大小是64B,得出页内偏移是6位,对应于虚拟地址和物理地址的页内偏移位数。
	
	tlb四路组相联,共有16个条目,意思是四个维一组,则共有4组,用二进制表示选择哪一组,例如(00,01,10,11),对应2位表示组,位于tlb中页号的低两位,页号剩下6位作为tlb标记。
	
	cache分为多个组,每个组分为多个行,主存向cache迁移数据是以行 单位的,既然以行为单位,则需要行号把,行大小为4B,对应2位代表一行,对应于cache页内偏移低两位。共有16组,需要4位代表哪一组,对应cache页内偏移剩下的4位。

至此,还需掌握使用tlb之后逻辑地址到物理地址之间的转化过程。先从tlb中查找(不命中)后去页表查找,页表在主存中则可找到对应的物理页号,物理块号拼接上页内地址即是物理地址了。若不在,发生缺页中断。
找到物理地址之后去cache中查找,若在 ,得到内容,不在去主存中查找。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

。果子。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值