页面与页表1页面和物理块.PPT

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

4.4.1 页式存储管理的引入 在动态分区的存储空间中, 存在“零头”问题。尽管采用“紧凑”技术可以解决这个问题,但要为移动大量信息花去不少的处理机时间,代价较高。 分页:把用户程序按逻辑页划分成大小相等的部分,称为页或虚页。从0开始编制页号,页内地址是相对于0编址。 内存块 块:内存按页的大小划分为大小相等的区域,称为内存块(物理页面,页框) 内存按页的大小划分为大小相等的区域,称为内存块(物理页面,页框)。 内存分配:以页为单位进行分配,并按作业的页数多少来分配。逻辑上相邻的页,物理上不一定相邻,通过页表把作业的各个页面与页框对应起来。 2.页表 列出了作业的逻辑地址与其在主存中的物理地址间的对应关系。 页面大小: 页面的大小应选择得适中,且页面大小应是2的幂,通常为512 B~8 KB 一个页表中包含若干个表目,表目的自然序号对应于用户程序中的页号,表目中的块号是该页对应的物理块号。 页表的每一个表目除了包含指向页框的指针外,还包括一个存取控制字段。 表目也称为页描述子。 分页管理中页与页框的对应 关系示意图 2. 地址变换过程 例如指令 LOAD 1,2500 的地址变换过程如下: 地址变换过程(续) 把虚拟地址2500转换成页号P=2,位移量W=452; 如果页号2大于页表大小,则中断;否则继续; 页号2与页表起址1000运算(1000+2*20,设页描述子大小为20)得到页描述子地址为1040; 从页描述子中读取块号8; 根据页描述子的“存取控制”判断该指令是否被允许访问内存,如果不允许,则中断;否则继续; 块号8与位移量452运算(8*1024+452=9644,1024为页面大小)得到物理地址9644; 把数字1写进内存地址9644单元中。 内存的分配 计算一个作业所需要的总块数N 查位示图,看看是否还有N个空闲块 如果有足够的空闲块,则页表长度设为N,可填入PCB中;申请页表区,把页表始址填入PCB 依次分配N个空闲块,将块号和页号填入页表 修改位示图 4.快表 如果把页表放在主存中,无疑会影响系统的性能。这是因为每次访问主存,首先必须访问页表,读出页描述子,之后根据形成的实际地址再访问主存,这样使访问主存的次数加倍,因而使总的处理速度明显下降。 为了解决这个问题人们采用一组硬件寄存器,存放当前访问过的页的页描述子,    每次访问主存时,首先查找快表,若找到所需的页描述子,则快速形成物理地址。否则从页表中查找后形成物理地址,同时把页描述子写入快表。如果设计得当,快表的命中率可以很高。 具有快表的地址变换机构 多级页表 32位 进程页表多大? 设:页面大小为4K 用户空间 2GB 则:一个进程 219页 设:每个内存块号 4字节 则:进程页表 512页 结论:一个进程的页表的各页之间可以不连续存放 解决:页表本身使用地址索引——页目录 4.5.1 分段式存储管理的引入 在分页存储系统中,作业的地址空间是一维线性的,这破坏了程序内部天然的逻辑结构,造成共享、保护的困难。引入分段存储管理方式, 主要是为了满足用户和程序员的下述需要: 1) 方便编程 2) 信息共享 3) 信息保护 4) 动态增长 5) 动态链接 3. 地址变换机构 4.5.3 信息共享 2. 虚拟存储器 具有请求调入功能和自换功能,能从逻辑上对内存容量进行扩充的存储器系统。虚拟存储器就是一个地址空间,且具有比实存大得多的容量。 虚拟存储器(续) 对用户:指令地址部分所限定的比实存大得多的地址实间。 对系统:借助于各种表格机构,体现虚拟实间。 4. 虚拟存储器的容量 一个虚拟存储器的最大容量是由计算机的地址结构确定的。如:若CPU的有效地址长度为32位,则程序可以寻址范围是0~(2^32)-1 ,即虚存容量为 4GB。 虚拟存储器的容量与主存的实际大小没有直接的关系,而是由主存与辅存的容量之和所确定。 1.需要解决的问题 系统需要解决下面三个问题: 系统如何获知进程当前所需页面不在主存。 当发现缺页时,如何把所缺页面调入主存。 当主存中没有空闲的页框时,为了要接受一个新页,需要把老的一页淘汰出去,根据什么策略选择欲淘汰的页面。 2. 页描述子的扩充 页号、驻留位、内存块号、外存地址、访问位、修改位、(存取控制、辅存地址) 中断位:表示该页是在内存还是在外存 访问位:表示该页最近被访问过,根据访问位来决定淘汰哪页 修改位:查看此页是否在内存中被修改过 3.地址变换与缺页中断 查页表时,当存

文档评论(0)

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

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

1亿VIP精品文档

相关文档