计算机系统之 cache (2)

本文探讨了计算机系统中Cache一致性问题,包括Write Through和Write Back两种策略,以及Write Hit和Write Miss的处理方式。同时,介绍了实现虚拟存储器面临的关键问题,如块大小选择、空间管理、地址映射、页表实现和访问权限保护等,强调了TLB在加速页表访问中的作用。

cache一致性问题:

因为cache中的内容是主存块副本,当对cache的内容进行更新时,就存在cache和主存如何保持一致性问题。

cache操作:两种情况 写命中 write hit):要写的单元已经在cache当中  

       两种处理方式

     1.write through(直写)

            同时写cache和主存单元

             由于CPU写数据到cache很快,但是cache写到DRAM很慢,为了解决这个问题所以我们加入了写缓冲(write buffer)

  

     2.write back( 回写)

        即写cache时不管主存,直接在cache上面改就行,这个时候锁死主存那块数据(我想到了我们打开excel文件时,再修改桌面名字时发现一致性问题),

        我们加入dirty-bit脏位:即判断cache里面内容修改没,没修改就不改主存

2.写不命中(write Miss):要写的单元不在cache中

    有两种处理方式

     1.write allocate(写分配)

             将主存装入Cache,然后更新相应单元

     2.no write allocate(非写分配)

            直接写主存单元,不装入到cache,    与第一种相比没有利用到空间局部性,因为没有装入到cache中。

 

 

               

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

实现虚拟存储器需要解决的问题

1.块大小应该多大?2到 64kb

2.主存与辅存的空间管理   采用全相连映射,主存只要有空,就放进去,原因,缺页开销比cache大得多,而访问磁盘要几百万个时钟周期

缺页 使用软件处理,cache缺失使用硬件处理

3.程序块/存储块之间如何映像

4.逻辑地址与物理地址之间如何转换,转换速度提高

5.主存辅存之间如何让进行替换

6.页表如何实现,需啊要记录啥信息   页表项

7.加快页表的访问速度  引入TLB(快表)

8.要找的内容不在主存  

9.如何保护进程各自存储区不被其他进程访问   设定访问权限

 

 

 

 

 

cpu 访存过程:3个缺失处理,

TLB,Cache,页框

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值