计算机基础:存储系统知识笔记(二)

举报
IT技术分享社区 发表于 2022/12/17 08:38:55 2022/12/17
【摘要】 用来存放当前最活跃的程序和数据。 特点:容量在几千字节到几兆之间,速度比主存快5~·10倍左右。快速半导体组成。

 


1、高速缓存

1.1 定义

用来存放当前最活跃的程序和数据。

特点:容量在几千字节到几兆之间,速度比主存快5~·10倍左右。快速半导体组成。


1.2 高速缓存的组成

一般位于CPU和主存之间。主要包括管理模块、由相联存储器构成的存储表、小容量的高速存储器。

       


1.3 高速缓存的地址映像方法

主存地址转换成Cache存储器的地址,这种地址转换叫做地址映像。地址映像主要有三种方式:

1、直接映像:主存的块和Cache块的关系是固定的。主存地址中主存区号和Cache存储的存储号相同表示命中。优点:地址变换简单;缺点:但灵活性差。

2、全联映像

允许主存的任一块调用Cache存储器的任何一个块空间。

优点:主存的物理块调入Cache的位置不受限制,比较灵活;缺点:无法从主存块号直接获得Cache对应的块号,变换复杂,速度较慢。

3、组相联映像

就是 将Cache中的块再分成组。组相联映像中组采用直接映像,块采用全相联映像方式。


1.4 高速缓存的替换算法、

替换算法目的是为了让Cache获得最高的命中率。

随机替换算法:利用随机数发生器产生一个要替换的块号,将该块替换出去。

先进先出算法:将最先进入的块替换出去。

近期最少使用算法:近期最少使用的块替换出去。

优化替换算法:先执行一次程序统计Cache替换的情况,第二次根据第一次的分析情况用最合理的方式进行替换。


1.5 Cache的性能分析

Cache的命中率是性能的一个重要指标。Cache的设计目标就是在成本允许的情况下达到较高的命中率、使存储系统拥有最短的访问时间。

在指令流水线中,Cache失效将会影响指令的流水。降低失效率是提升Cache性能的重要措施。降低失效率的主要方法可以选择合理的块容量、提高Cache容量、提升Cache的相联程度。

Cache容量越大命中率将会越高。要合理提升Cache的容量。因为容量大了成本将会增加、访问时间也会增加。


1.6 什么是多级Cache

Cache分为一级(L1 Cache)、二级(L2 Cache)。CPU访问先找L1,不命中找L2.。直到都命不中,则访问主存。CPU内通常为二级Cache结构。


2、虚拟存储器

理论上可以把主存存储器看作由多个字节构成的存储空间,每个字节有一个存储编号,主存单元的该地址称为物理地址。当需要访问主存的数据时,由CPU给出要访问的数据所在的存储单元地址,然后由主存的读写控制部件定位对应的存储单元,对其进行读写操作来完成访问动作。

虚拟存储器实际是一种逻辑存储器。实际上是对物理存储设备进行逻辑化处理,并将统一的逻辑视图呈现给使用者。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。