虚拟存储器和高速缓冲存储器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

工作原理
虚拟存储器是由硬件和操作系统自动实现存储信息调 度和管理的。 它的工作过程包括5个步骤:

中央处理器访问主存的逻辑地址,以确定该信息是否存放在主存内。

如该信息已在主存内,则转而执行④;如果该信息不在主存内,则 检查主存中是否有空闲区,如果没有,便将某个暂时不用的调出送 往辅存,以便将这组信息调入主存。 从辅存读出所要的信息,并送到主存空闲区。
二级缓存
二级缓存是为了协调一级缓存与内存之间的速度。它 比一级缓存速度更慢,容量更大,主要就是做一级缓存 和内存之间数据临时交换的地方用。
三级缓存
三级缓存是为读取二级缓存后未命中的数据设计的—种 缓存。在拥有三级缓存的CPU中,只有约5%的数据需要 从内存中调用,这进一步提高了CPU的效率。
三级缓存的性能影响
采用大容量高速缓存,显著提高数据传输速度。 多端口并行技术,消除了I/O瓶颈。


逻辑存储单元提供了高速的磁盘访问速度。
可方便的连接交换设备,为系统的扩展和互连提供了技术保
障。
非对称式虚拟存储:
是指虚拟存储控制设备独立于数据传输路径之外。
非对称式虚拟存储技术的特点: 1、 将不同物理硬盘阵列中的容量进行逻辑组合,实现虚拟的带区
虚拟存储器和高速缓冲存储器
虚拟存储器主要内容

虚拟存储器的概述 虚拟存储器的发展背景


虚拟存储器的工作原理
虚拟存储技术的分类 虚拟存储wk.baidu.com的特点
虚拟存储器:
虚拟存储器:就是采用一定的方法将一定的外存容量 模拟成内存,同时对程序进出内存的方式进行管理.从而 得到一个比实际内存容量大得多的内存空间,使得程序的 运行不受内存大小的限制。 虚拟存储器解决了存储容量和存取速度之间的矛盾,同 时也是管理存储设备的有效方法。
命中率计算公式: h=Nc/(Nc+Nm)
Nc表示cache完成存取的总次数
Nm表示主存完成存取的总次数
h定义为命中率
访问效率
表示了cache命中时的访问时间Tc与cache/主存系统平 均访问时间Ta的关系。
从地址变换表读出与逻辑地址对应的物理地址。 根据物理地址从主存中存取必要的信息。
③ ④ ⑤
虚拟存储技术的分类:
根据拓扑结构来分:
对称式虚拟存储和非对称式虚拟存储
对称式虚拟存储:是指虚拟存储控制设备与存储软件系 统、交换设备集成为一个整体,内嵌在网络数据传输路径 中。
对称式虚拟存储技术的特点:

Cache替换算法

随机替换(RAND)
随机找一个存储单元进行替换,比较简单。

最不经常使用算法(LFU)
将一段时间内被访问次数最少的那行数据换出。
最近最少使用算法(LRU)
需要计算字块的使用次数,开销大,但平均命中率较高。
随机替换
随机替换策略实际上并不是严格意义上的算法,从特 定的行位置中随机的选取一行换出即可。 这种策略在硬件上容易实现,且速度也比较快。缺点 是随意换出的数据很可能是马上要用的,从而降低了命中 率和cache的工作效率。 但随着cache的容量增大这种不足就会相应减小。
由于虚拟存储具有上述特点,虚拟存储技术正逐步成 为存储管理的主流技术
高数缓冲存储器

高速缓冲存储器概述 高速缓冲存储器与CPU的关系


高数缓冲存储器的工作原理
高数缓冲存储器的地址映射
高速缓冲存储器的命中率
影响命中率的因素
解决CPU和主存速度差异的方法
由于CPU和主存储器是不同材料制成的,因而他们之间在速 度上是不匹配的。为了使CPU不致因为等待存储器读写操作 的完成而无事可做,就采取了一些加速CPU和存储器之间有 效传输的特殊措施。 实现途径:
虚拟存储器的发展

虚拟存储器源出于计算机的一级存储器概念。 1970年,美国RCA公司研究成功虚拟存储器系统。 IBM公司于1972年IBM370系统上全面采用了虚拟 存储技术。
随着计算机技术以及相关信息处理技术的不断发展,人 们对存储的需求越来越大,这样的需求刺激了各种新技术 的出现。在这个发展过程中也由几个阶段组成。
全相联映像方式
是指主存中的地址与块的内容一起存于cache的行中, 其中地址存于cache行的标记部分中。
主存分成若干块, Cache分成若干块(比主存块数少),每块中都有 同样多的字。 允许主存任一块存放到Cache的任一个块。 CPU读主存时,若内容不在Cache,就将主存中的该块整个存放到 Cache。
最近最少使用算法(LRU)
LRU算法将近期内长久未被访问过的行换出。因此每行 也设定一个计数器。但它们是cache每命中一次,名中行计 数器清零,其他各行计数器增1。当需要替换时,比较个特 定行的计数值,将最大的行换出。
特点:
保护了刚拷贝到cache的新数据,符合cache的工作原 理,命中率较高。
最不经常使用算法(LFU)
LFU算法认为应将一段时间内被访问次数最少的那行数 据换出。为此每行设置一个计数器。新行建立后从0开始计 数,每访问一次,被访问行的计数器加1。当需要替换时, 对这些特定行的计数器进行比较,将计数值最小的换出,同 时将这些特定行的计数器都清零。
缺点:
这种算法将计数周期限定在这些特定行两次替换之间的 间隔内,不能严格反映近期访问情况。



全相联映射方式
主存 cache L0 B0
. . . . . .
L7 L 7
标记位
B255
全相联映像方式特点
主存的字块可以和Cache的任何字块对应,利用率 高,方式灵活。 标志位较长,比较电路难于设计和实现,成本太 高,只适用于小容量的cache。

利用率、成本太高。
直接映射方式
是指一种多对一的映射关系,但主存块只能映射到 cache的一个特定位置上。
程序的局部性原理
程序在一定时间段内通常只访问较小的地址空间 访问概率
地址空间
两种局部性:时间局部性和空间局部性 时间局部性:最近被访问的信息很可能还要被访问。 将最近被访问的信息项装入到Cache中。 空间局部性:最近被访问的信息临近的信息也可能被访问。 将最近被访问的信息项临近的信息一起装入到Cache中。

利用率低,命中率低,效率较低
组相联映像方式
组相联映射方式是直接映射和全相联映射的折衷方案,它 适度的兼顾了二者的优点又尽量避免其缺点,被普遍采用。


主存分成若干块, Cache分成若干块。每块中都有同样 多的字。 Cache分成同等容量的多个体。主存分为若干区,主存 的块只能存放在块号和Cache体中组号一致的块中,但 是放在哪一个体中是随意的。
主存储器采用更高速的技术缩短存储器的读出时间。 采用并行操作的双端口存储器。 在存储器和主存储器之间插入一个高速缓冲存储器。
高速缓冲存储器( cache):
是存在于计算机存储系统的层次结构中,介于 中央处理器和主存储器 之间的高速小容量存储器。
Cache是用来存放那些近期需要运行的指令与数据, 提高CPU对存储器的访问速度。是为了解决CPU和主 存之间速度不匹配而采取的一项重要技术。


Cache分为若干块,主存分为若干区,每区分为若干块, 每区的块数和Cache一样大。 主存的块只能存放在块号和Cache块号一致的块中
直接映射示意图
主存 cache L0 B0

B7 B8


L7
标记位
B15 B16
...
行号
直接映像方式特点
主存的字块只可以和固定的Cache字块对应,方式 直接,利用率低,适用于大容量的cache。 标志位较短,比较电路易于设计和实现,硬件成 本低。
虚拟存储器发展背景

主存储器通常用动态随机存储器(DRAM)实现,它的存 储容量相对比较小,速度比较快,单位容量的价格比较贵。
虚拟存储器由主存储器和联机工作的外部存储器共同组成。 外部存储器通常为磁盘存储器,它的存储容量很大,与主 存储器相比,速度很低,单位容量的价格很便宜。

由于早起计算机系统的存储容量,特别是内存容量成本非常高、容 量也很小,对于大型应用程序或多程序应用就受到了很大的限制。为 了克服这样的限制,人们就采用了虚拟存储的技术。
组相联映像方式
组相联映像方式特点:
折衷方案。组间为全相连,组内为直接映像。 集中了两个方式的优点。成本也不太高。
最常用的CACHE映像方式
Cache的命中率和命中时间
CPU访问主存的数据或指令存在于高速缓存中时的情况 称为高速缓存命中,高速缓存命中的统计概率称为高速缓 存的命中率。
在高速缓存命中时的访存时间称为命中时间,它等于高速 缓存的访问时间。
在实际应用中,数据块虚拟存储方案以对称式拓扑 结构为表现形式。
虚拟文件系统存储:
虚拟文件系统存储方案着重解决大规模网络中文件共 享的安全机制问题。通过对不同的站点指定不同的访问权 限,保证网络文件的安全。
在实际应用中,虚拟文件系统存储方案以非对称式拓扑 结构为表现形式。
虚拟存储的特点:


虚拟存储提供了一个大容量存储系统集中管理的手段, 由网络中的一个环节(如服务器)进行统一管理,避免 了由于存储设备扩充所带来的管理方面的麻烦。 虚拟存储对于视频网络系统最有价值的特点是:可以大 大提高存储系统整体访问带宽。 虚拟存储技术为存储资源管理提供了更好的灵活性,可 以将不同类型的存储设备集中管理使用。
Cache与CPU的关系
Cache是介于CPU与主存之间的小容量存储器 CPU可直接访问cache Cache能高速的向CPU提供指令和数据从而加快了 程序的执行速度。 Cache可以放到CPU中形成两级以上的缓存。

CPU存储系统关系图
cache 中央处理器
Cache 主存
外存
随着半导体器件集成度进一步提高,cache已经放入到CPU中其工作 速度接近CPU的速度,从而可以组成两级以上的cache系统。目前所有 主流处理器大都具有一级缓存和二级缓存,少数高端处理器还集成了三 级缓存。
首先是磁盘条带集(RAID)技术:它将多个物理磁盘通过一定的 逻辑关系集合起来,成为一个大容量的虚拟磁盘。 其次就是存储区域网络(SAN)技术:SAN的广域化则旨在将存 储设备实现成为一种公用设施,任何人员、任何主机都可以随时随 地获取各自想要的数据。 目前讨论比较多的包括iSCSI技术。
主存与cache的地址映射
与主存容量相比,cache的容量很小,它保存的内容只是 主存内容的一个子集,且cache与主存的数据交换方式是以 块为单位。为了把主存块放到cache中,必须运用某种方法 把主存地址定位到cache中,称为地址映射。
地址映射方式:
全相联方式方式 直接映射方式 组相连映射方式
高速缓存的失效率和失效时间
CPU访问主存的数据或代码不存在高速缓存中的情况 称为高速缓存的失效率。
高速缓存不命中时因访问主存而增加的访问时间称为高 速缓存的失效时间,或失效开销。
cache重要性能指标:命中率
命中率越高,不命中数据的可能性就越小,正确获取数据的 可能性就越大,平均访存时间也就越短。
集,将多个阵列控制器端口绑定,在一定程度上提高了系统的可 用带宽。
2、 在交换机端口数量足够的情况下,可在一个网络内安装两台虚
拟存储设备,实现Strip信息和访问权限的冗余。
从虚拟化存储的实现原理来分:
数据块虚拟、虚拟文件系统 数据块虚拟存储方案着重解决数据传输过程中的冲突 和延时问题。 数据块虚拟存储方案利用虚拟的多端口并行技术,为 多台客户机提供了极高的带宽,最大限度上减少了延时 与冲突的发生。
CPU
主 存
cache
数据总线
引入高速缓冲存储器的理论依据
系统引入高速缓冲存储器的理论依据是程序访存局部性规 则。大部分程序的执行方式是顺序执行,所需的数据也都顺 序排列。程序运行时大部分时间内对程序的访问局限在一个 较小的区域内,这就是程序访问的局部性规律。 依据这个规则,在CPU与主存之间设立高速缓存,将主存 中被频繁访问区域内的数据调入高速缓存,CPU从高速缓存 中获取所需的数据,可大大的提高主存的访问速度。

在游戏方面,提升三级缓存的容量对游戏的性能影响很大, 如果是网吧机提升三级缓存的容量,会有显著的性能提升 的。

对PC机来说,三级缓存其实只是做了个辅助的作用,除 了服务器,其实对大多数家庭机没什么用的, 对于家庭 机内存是最重要的。
高速存储器的工作原理图:
LRU管理逻辑
CAM
地址总线
相联存储图表
相关文档
最新文档