【操作系统-内存】地址翻译流程图

地址翻译流程图

简略版:

命中
缺失
命中
缺失
重新执行
命中
缺失
CPU产生VA
访问TLB
转VA并访问Cache
访问页表
缺页处理
读取Cache数据
访问内存数据

完整版:(注意,TLB和Cache是组相联的)

页号 < 页表长度
页号 ≥ 页表长度
缺失,访问PTR(获取页表起始PA)
命中
命中
重新执行被中断指令
命中
缺失
缺失
CPU产生VA(VA=页号+页内偏移量)
访问PTR(获取页表长度)
访问TLB(页号=TLB标记+TLB组号)
越界中断
访问页表(页表项PA=页表起始PA+页号×页表项长度)
读取页框号
缺页中断处理
外存找到缺页
内存是否已满
该页换入内存
修改页表
页面置换
选择一页换出
该页是否被修改过
该页写入外存
读取页框号,修改TLB
修改TLB
CPU获得PA(PA=页框号+页内偏移量)
访问Cache(PA=Cache标记+Cache组号+块内偏移量)
读取数据
访问内存
Cache已满?
替换算法
写入新行

一级分页存储系统

  • 字节编址
  • 一页为 4KB
  • 逻辑地址空间为 32 位(4GB)
  • 物理地址空间为 28 位(256MB)
  • 页表项长度为 4B
  • TLB为八路组相联,一共16行(组数=16/8=2)
  • Cache为四路组相联,一共16行(组数=16/4=4),Cache行大小为64B

在这里插入图片描述

在这里插入图片描述

二级分页存储系统

  • 字节编址
  • 一页为 4KB
  • 逻辑地址空间为 32 位(4GB)
  • 物理地址空间为 28 位(256MB)
  • 页表项长度为 4B
  • 规定页目录表只占一页
  • TLB为八路组相联,一共16行(组数=16/8=2)
  • Cache为四路组相联,一共16行(组数=16/4=4),Cache行大小为64B

在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值