计算机组织与结构 Ch6存储器.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2021/11/21 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 6.4 Cache存储器 Cache 置换策略必须考虑脏块(dirty block),尤其当它们在cache 中已经被更新时. 脏块一定要再被写回存储器。写策略决定了如何做。 有两种类型的写策略,写通(write through)和回写(write back)。 在每一次写时,写通同时更新cache和主存。 6.4 Cache存储器 仅当块被选中替换时,回写 (也称为copyback)才更新存储器。 写通的缺点是对于每一次cache写存储器必须更新,这就降低了更新的访问时间。这种降低常常是可以忽略的,因为大多数的存取都是读,不是写。 回写的优点是通信量被最小化,但是它的缺点是存储器不总是与cache中的值一致,对于多用户系统,常会发起问题。 6.5虚拟存储器 凭借着提供较快的存储器存取速度,Cache存储器提高了性能。 凭借着提供较大的存储容量,不增加主存的成本,虚拟存储器提高了性能。 磁盘驱动器的一部分是为扩展主存服务的。 如果一个系统使用页式技术,虚拟存储分区主存储器成各自管理的页桢, 当不立即需要它们时,它们就被写道磁盘上。 6.5虚拟存储器 物理地址是物理存储的实际存储地址. 程序产生被存储管理者映射到物理地址的虚拟地址. 当逻辑地址需要从磁盘中引入页时,缺页就发生了. 当分页过程导致小的,不可用的存储器地址簇时,存储破碎就发生了. 6.5虚拟存储器 主存和虚拟存储器被分成相等大小的页. 一种处理过程需要的整个地址空间,在主存中不立即需要. 一些部分可能在磁盘上, 而其它的可能在主存中. 进一步说, 分配给进程的页不必连续存储—或者部分页在磁盘上,或者在存储器中. 用这种方法, 任何时候,仅仅需要的页在存储器中, 不需要的页存储在磁盘当中. 6.5虚拟存储器 关于每一页的位置的信息, 既不在磁盘上,也不在存储器中,而是保留在一种称为页表的数据结构中 (如下所示). 对于每一活动过程,都有一个页表. 6.5虚拟存储器 当一种操作产生一个虚拟地址时,操作系统就把它翻译成一个物理存储地址. 为了完成这一操作, 虚拟地址被分成俩个字段: 页字段,和偏移量字段. 页字段决定地址的页位置,偏移量表明页中的地址位置. 通过在页表中查找,逻辑页码被翻译成一种物理页帧. 6.5虚拟存储器 如果逻辑地址在页表中的有效位是零,这意味着页不在存储器中,要到磁盘上去存取. 这是页发生了错误. 如果必要, 页需要从存储器中取出,并且被磁盘上检索的页所取代, 有效位被设置成1. 如果有效位是1, 虚拟页的数字被物理桢的数字所取代. 把偏移量加到物理桢的数字,来存取数据. 6.5 虚拟存储器 如一个例子, 假如一个系统拥有一个8K 空间的虚拟地址和一个4K 空间的物理地址,系统是用位寻址. 我们有 213/210 = 23的虚拟页. 虚拟地址13位 (8K = 213) 3位用于页字段,10位用于偏移量, 因为页的大小是1024. 一个物理存储地址需要12 位, 开始的两位用于页桢,尾随的10位是偏移量. 6.5虚拟存储器 假如我们有下面的页表. What happens 当CPU产生地址 545910 = 112时,会发生什么? 6.5虚拟存储器 地址112 转化成物理地址为1 因为通过再也表中查找,页字段 101 被桢的数字01取代. 6.5虚拟存储器 当CPU 产生地址102时会发生什么? 6.5虚拟存储器 我们早就说过有效存取时间(EAT)需要考虑存储器的所有级. 这样, 在计算当中,虚拟存储器也是一个因素,我们也不得不考虑页表的存取时间. 假如一个主存的存取需要200ns, 页的出错率为1%, 它花费10ms 从磁盘中装入一页. 我们有 : EAT = 0.99(200ns + 200ns) 0.01(10ms) = 100, 396ns. 6.5虚拟存储器 即使没有页错误,EAT将是 400ns,因为存储器总是读两次: 第一次存取页表, 第二次从存储器中装入页. 因为页表的读始终都是一样的,所以保持它们在一个特殊的称为翻译旁视缓冲(TLB)的寄存器中,是有意义的. TLBs 是

文档评论(0)

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

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

1亿VIP精品文档

相关文档