第3章存储器层次结构.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 写贯穿策略 定义如下:当CPU写Cache命中时,所有写操作既对Cache也对主存进行;当CPU写Cache不命中时,直接写主存,然后有两种做法: 其一,不将该数据所在的块拷贝到Cache行,称为WTNWA法; 其二,将该数据所在块拷贝到Cache的某行,称为WTWA法。 写贯穿策略保证了主存数据总是有效。但可能引起瓶颈问题。降低了Cache的功效。 写回策略 当CPU写Cache命中时,写操作只是对Cache进行,而不修改主存的相应内容,仅当此Cache行被换出时,相应的主存内容才被修改;当CPU写Cache不命中时,先将该数据所在块拷贝到Cache的某行,余下操作与Cache写命中时相同。 为了区别Cache行是否被改写过,应为每个Cache行设置一个修改位,CPU修改Cache行时,标记其修改位,当此Cache行被换出时,判别此Cache行的修改位,从而决定是否将Cache行数据写回主存相应单元。 写回策略主张写Cache和写主存异步进行,减少了对低速的主存写的次数,使Cache在CPU和主存之间读/写两方面都起到了高速缓存的作用,但其控制复杂,最大的弊端是存在导致Cache和主存数据不一致的隐患。 3.8 虚拟存储器 虚拟存储器由主存储器和联机工作的辅助存储器(通常为磁盘存储器)共同组成,这两个存储器在硬件和系统软件的共同管理下工作,对于应用程序员,可以把它们看作是一个单一的存储器。 3.8.1 虚拟存储器的基本概念 虚拟存储器将主存或辅存的地址空间统一编址,形成一个庞大的存储空间。在这个大空间里,用户可以自由编程,完全不必考虑程序在主存是否装得下以及这些程序将来在主存中的实际存放位置。 用户编程的地址称为虚地址或逻辑地址,实际的主存单元地址称为实地址或物理地址。显然,虚地址要比实地址大得多。 在实际的物理存储层次上,所编程序和数据在操作系统管理下,先送入磁盘,然后操作系统将当前运行所需要的部分调入主存,供CPU使用,其余暂不运行部分留在磁盘中。 程序运行时,CPU以虚地址来访问主存,由辅助硬件找出虚地址和实地址之间的对应关系,并判断这个虚地址指示的存储单元内容是否已装入主存。如果已在主存中,则通过地址变换,CPU可直接访问主存的实际单元;如果不在主存中,则把包含这个字的一页或一个程序段调入主存后再由CPU访问。如果主存已满,则由替换算法从主存中将暂不运行的一块调回辅存,再从辅存调入新的一块到主存。 3.8.2 存-辅存层次与Cache-主存层次的比较 这两种存储层次有许多相似之处但也有着重要的区别。 首先,主存/cache存储器的访问“时间比”较小,典型的为10:1;每次传送的基本信息单元(字块)也比较小,只是几个至几十个字节。而辅存/主存的访问“时间比”就要大得多,达100:1~1000:1,每次传送的基本信息单元(段或页面)也很大,达几十至几千字节。 从原理角度看,两者有很多相似之处。它们采用的地址变换及映像方法和替换策略,从原理上看是相同的。虚拟存储系统所采取的映像方式同样有全相联映像、组相联映像和直接映像等,替换算法也多采用LRU算法。实际上,这些替换算法和地址映像方式最早应用于虚拟存储系统中,后来才发展到cache系统中。 3.8.3 主存-辅存层次信息传送单位和存储管理 1.页式虚拟存储器 主存空间和虚存空间都划分成若干个大小相等的页。主存即实存的页称为实页,虚存的页称为虚页。 程序虚地址分为两个字段:虚页号和页内地址。 虚地址到实地址之间的变换是由页表来实现的。 页表是一张存放在主存中的虚页号和实页号的对照表,记录着程序的虚页调入主存时被安排在主存中的位置。 若计算机采用多道程序工作方式,则可为每个用户作业建立一个页表,硬件中设置一个页表基址寄存器,存放当前所运行程序的页表的起始地址。 页式虚拟存储器的虚-实地址变换 CPU访存:首先要查页表,为此需要访问一次主存,若不命中,还要进行页面替换和页表修改,则访问主存的次数就更多了。 页式虚拟存储器的每页长度是固定的,页表的建立很方便,新页的调入也容易实现。但是由于程序不可能正好是页面的整倍数,最后一页的零头将无法利用而造成浪费。同时,页不是逻辑上独立的实体,使程序的处理、保护和共享都比较麻烦。 2.段式虚拟存储器 段式虚拟存储器中的段是按照程序的逻辑结构划分的,各个段的长度因程序而异。为了把程序

文档评论(0)

151****0104 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档