第4章存储体系讲述.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章存储体系讲述

4、影响主存命中率的主要因素 程序在执行过程中的页地址流的分布情况 所采用的页面替换算法 页面大小 主存容量 所采用的页面调度方法 ? 页面大小的选择: 命中率H 页面大小Sp S 2S 简单解释: 在程序的执行过程中,假设A t和A t+1是两次相邻的访问主存的逻辑地址,d=∣ A t – A t+1∣。如果d<Sp,那么随着Sp的增大, A t和A t+1在同一个页面的可能性就会增加,即H随着Sp的增大而提高。如果d>Sp,那么A t和A t+1一定不在同一个页面,随着Sp的增大, 在分配给该程序的主存空间一定的情况下,主存的页面数就要减少,页面的替换将更加频繁。这样, A t和A t+1两个地址所在页面都在主存中的可能性就会减少,即H随着Sp的增大而减少。当Sp比较小的时候,前一种情况是主要的;当Sp达到某一个最大值之后,后一种情况成为主要的。 另外,当页面大小增大时,由于每个程序或程序段的最后一个页面一般是装不满的,由此造成的浪费也要增加。相反,当页面大小减小时,页表(指慢表)在主存中所占的比例将增加。这两种情况都要降低主存的利用率。因此,页面大小的选择要综合考虑多方面的因素。 主存容量: 命中率H 主存容量S 1.0 主存命中率H随着分配给该程序的主存容量S的增加而单调上升,在S比较小的时候,H提高的非常快,随着S的逐渐增加,H提高的速度逐渐降低。 简单解释:在页面替换算法中有这样一个结论,对于堆栈型算法,命中率随着分配给程序的页面数的增加而提高。当分配给程序的主存容量增加时,如果页面大小是一定的,那么,页面数就会增加,因此,命中率H也将提高。如果不是堆栈型算法,命中率虽然不会单调上升,在局部可能有下降,但总的趋势还是上升的。 注:因为操作系统在为程序分配主存空间时,是以页为单位的,因此图中所示的不应该是一条平滑的曲线,而是台阶型的。 启发:在为一道程序分配主存空间时,对主存命中率的要求不能过分。当主存容量增加到某一个值之后,命中率的提高非常缓慢,这时,主存中不活跃部分所占的比例很大,主存的利用率就会很低。 所采用的页面调度方法 分页式:在程序装入主储存器之前就对程序进行链接装配,并且要在整个程序都调入到主存储器中之后才能开始运行。 请求页式:只在发生页面失效时,才把要访问的页面进行链接装配并调入到主存储器中。 分页式的主存命中率可以达到100%,但是,主存的利用率比较低,这是因为主存中不活跃部分所占的比例比较大。而且,当主存剩余空间小于程序所需要的主存空间时,这个程序就无法装入到主存中运行。 目前,大多数机器采用请求式调度方式。但是,在程序执行过程中经常要发生页面失效,而且处理页面失效需要比较长的时间。特别是在程序刚开始运行时,页面失效很频繁。 预取式调度方式:根据程序的局部性特点,在程序被挂起之后又重新开始运行之前,先把上次停止运行前一段时间内用到的页面先调入到主存中,然后才开始运行程序。这样,在程序一开始运行时,主存中就已经装入了一定数量的页面,从而可以避免在程序刚开始运行时,频繁发生页面失效的情况。 二、高速缓冲存储器(Cache)—— 1、3种不同的高速缓冲存储管理方式 Flash演示 CPU与Cache之间的数据交换是以字为单位,而Cache与主存之间的数据交换是以块为单位。 Cache分为4行,每行4个字。 分配给Cache的地址存放在一个相联存储器CAM中,它是按内容寻址的。 当CPU执行访存指令时,就把所要访问的字的地址送到CAM和主存。 如果CAM指出所要访问的字W在Cache中,则把W从Cache传送到CPU。 如果W不在Cache中,则将W从主存传送到CPU,同时把包含W的由前后相继的4个字所组成的一行数据送入Cache。 替换算法采用LRU。 块内地址 主存块号 主存地址 块内地址 Cache块号 目录表(专门硬件) 相联比较 Cache地址 在主存和Cache都机械等分成相同大小的块后,让主存中的任何一个块均可以映象装入到Cache中任何一个块的位置上。 优点:Cache块冲突概率最低,物理Cache的空间利用率最高, 缺点:用于地址映象的相联目录表容量太大,成本极高,查表进行地址变换的速度太低,所以无法实用。 ①、全相联映象 区号 块内地址 主存块号 主存地址 块内地址 Cache块号 按地址访问存储器 相等比较 Cache地址 在主存和Cache都机械等分成相同大小的块后,再将主存空间按物理Cache大小等分成区,让主存中每一个区中的各个块只能按位置一一对应装入Cache中相应的块位置上。 优点:该表存储器所需的硬件量很少,成本低,易于实现。采用直接映象时,查表找区号可以和访问物理Cache同时进行,只要Cache块命中,就不需

文档评论(0)

441113422 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档