网站大量收购闲置独家精品文档,联系QQ:2885784924

第3章 存储系统-4.ppt

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

* 随堂练习1 已知虚拟地址为32位,页大小为4KB,页表每一项为4个字节,计算页表总容量。 解: 页表项数= = , 页表容量= = 。 232/212 220 220个页表项×4 4MB * 快表 页表带来的问题 页表在主存中, 访问存储器时,首先要查页表,两次访问。 解决方案:使用快表: 仅包含了页表的最活跃部分,是页表的子集, 存放在高速存储器中, 快表也要用到替换算法。 快表由硬件组成,比页表小得多 * 经快表和慢表实现内部地址变换 物理页号 控制位 逻辑页号 页内行地址 虚存地址 物理页号 页内行地址 实存地址 慢表(在主存中) 逻辑页号 物理页号 快表(相联存储器) 相联比较 (按内容访问) (按地址访问) (快表中查不到) * 3.6.3 段式虚拟存储器 在段式虚拟存储系统中,段是按照程序的逻辑结构划分的,各个段的长度因程序而异。 虚拟地址由段号和段内地址组成,为了把虚拟地址变换成实主存地址,需要一个段表。 * 段表 段表也是一个段,可以存在外存中,但一般是驻留在主存中。 段起址 装入位 段长 1000 1 1K 0 6120 1 3K 9192 1 1K 2024 1 2K 段表(在主存中) 段号 0 1 2 3 4 程序分段空间 (外存) 实主存空间 地址 段0 1000 2023 段4 2024 ~ 4071 段2 6120 ~ 9191 段3 9192 10215 未用 地址 段0 1K 段4 2K 段2 段3 段1 3K 1K 2K * 段式虚拟存储器地址变换 段号 页内行地址 虚存地址 主存地址 段表基地址 段表基址寄存器 段起址 装入位 段长 段表(在主存中) 段号 0 1 2 3 4 实存地址 * 页式和段式的比较 段 利用程序的模块化性质,按照程序的逻辑结构划分成的多个相对独立部分。 可作为独立的逻辑单位。 段表 用来指明各段在主存中的位置, 段表包含段名、段起点、段长, 段表本身也是主存的一个可在定位段。 * 段式管理 段式管理:把主存按段分配的存储管理方式。 优点 逻辑独立性,易于编译、管理、修改、保护和共享; 某些类型的段(如堆栈、队列)具有动态可变长度,允许自由调度以便有效利用主存空间。 缺点 因为段的长度各不相同,起点和终点不定,给主存空间分配带来麻烦; 容易在段间留下许多空余的零碎存储空间,造成浪费 * 页式 页面 主存物理空间中划分出来的等长的固定区域。 优点: 页面的起点和终点地址是固定的, 方便造页表,新页调入主存也很容易掌握, 比段式空间浪费小。 缺点 处理、保护和共享都不及段式来得方便。 * 折中的方案——段页式 段页式管理 采用分段和分页结合的方法。 程序按模块分段, 段内再分页, 进入主存以页为基本信息传送单位, 用段表和页表进行两级定位管理。 * 3.6.4 段页式虚拟存储器 段页式虚拟存储器是段式虚拟存储器和页式虚拟存储器的结合。 把程序先按逻辑单位分段,再把每段分成固定大小的页。 程序对主存的调入调出是按页面进行的,但它又可以按段实现共享和保护,兼备页式和段式的优点。 缺点是在映象过程中需要多次查表。 * 段页式虚拟存储器的地址变换 在段页式虚拟存储系统中,每道程序是通过一个段表和一组页表来进行定位的。 段表中的每个表目对应一个段, 每个表目有一个指向该段的页表起始地址及该段的控制保护信息。 由页表指明该段各页在主存中的位置以及是否已装入、已修改等状态信息。 * 虚地址格式 如果有多个用户在机器上运行,多道程序的每一道需要一个基号,由它指明该道程序的段表起始地址。 虚拟地址格式如下:    基号 段号 页号 页内地址 * 随堂练习2(例6,P118) 假设有三道程序(用户标志号为A,B,C),其基址寄存器内容分别为SA,SB,SC ,逻辑地址到物理地址的变换过程见演示 在主存中,每道程序都有一张段表,A程序有4段,C程序有3段。每段应有一张页表,段表的每行就表示相应页表的起始位置,而页表内的每行即为相应的物理页号。请说明虚实地址变换过程。 * 2 d C 1 2 d 基号 段号 页号 页内地址 ? ? 物理页号 页内地址 逻辑地址 物理地址 SA SB SC 基址寄存器 程序A段表 SA+0 SA+1 SA+2 SA+3 a b c 程序C段表 SC+0 SC+1 SC+2 页表 1 2 a+0 a+1 C0段 7 8 10 b+0 b+1 b+2 C1段 1 2 a+0 a+1 C2段 C SC 1 b 10 10 d * 3.6.5 替换算法 * 替换策略 虚拟存储器中的页面

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档