计算机组成大题分析(四)

假设计算机 M 的主存地址为 24 位,按字节编址,采用分页存储管理方式,虚拟地址为 30 位,页大小为 4KB,TLB 采用 2 路组相联方式 和LRU 替换策略,一共8组。请回答一下问题。

(1) 虚拟地址中有哪几位表示虚页号? 哪几位表示内存地址?
(2)己知访问 TLB 时虚页号高位部分用作 TLB 标记,低位部分用做 TLB 组号,M 的虚拟地址中哪几位是 TLB 标记? 哪几位是 TLB 组号?
(3) 假设 TLB 为空,访问虚页号为 10、12、16、7、26、4、12、20,在此过程中,哪一个虚页号对应的 TLB 表项被替换,说明理由。
(4)若 M 中虚拟地址位数增加 32 位,则 TLB 表项位数增加几位?

【分析】分页存储管理方式,指以页为单位的存储管理模式;对比认识块存储管理方式,即cache中所使用的按块为单位进行存储。

页式虚拟存储器,指页为单位的虚拟存储器,虚拟空间与主存空间都被划分为同样大小的页,主存的页叫做实页,虚存的页称为虚页。虚拟地址分为两个字段:虚页号和页内地址

TLB(快表)产生于对一些常用的页表,但频繁从主存中取出比较浪费资源,因此将常用的页表项存放在高速缓冲器中,便把组成的高速缓冲器叫做快表。快表的作用在虚存和实存之间快速查找到匹配;而cache的作用是将主存中常用的内容复制到cache中,能够进行快速得查找到。所以TLB快表常与cache共同组成存储系统。

LRU(近期最少使用),如名字所说,就是近期最少使用的页表就进行替换,可以采用队列的思想去理解,将访问顺序按照队列排队,先进先替换

2路组相联,就是将两个页表项作为一组,在实页号的对应上,结合下图进行理解。

yH5BAAAAAAALAAAAAAOAA4AAAIMhI+py+0Po5y02qsKADs=wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==【解题】

1.按字节编址,则页面大小为4KB,则12位就可以表示页内地址。虚拟地址中30位,其中低12位为页内地址,则高18位就为虚页号

2.TLB采用二路组相联,且共有8组,则需要3位就可以表示组号;虚页号共有18位,其低3位表示组号,高15位则表示TLB标记

3.采用的时LRU算法,且二路组相联共8组,因此TLB组号=虚页号 mod TLB组数=虚页号 mod 8;则10、12、16、7、26、4、12、20模完后为2、4、0、7、2、4、4、4。则只有映射到4号组的虚页号大于2,且相应的顺序为12、4、12、20,则4在20进入的时候将其替换出来

4.虚拟地址增加到32位,但页面大小仍为4KB,因此虚页号为32-12=20位,增加了2位,因此TLB标记字段增加了2位,因此每一个TLB表项位数应增加2位

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值