非连续分配.PPT

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
●页式存储管理的引入 在动态分区的存储空间中, 存在“零头”问题。尽管采用“紧凑”技术可以解决这个问题,但要为移动大量信息花去不少的处理机时间,代价较高。 一、实现原理 1、作业地址空间的划分: 划分为若干大小相等的片,称为页或虚页。 页面大小:2n Bytes 一般在:512B ~ 8/32K 从0开始编号,称为页号 页内地址是相对于0编址。 2、主存空间的划分 内存按页的大小划分为大小相等的区域,称为内存块(物理页面,页框,存储块) 从0开始编号,称为块号。 2)内存分配表(MBT)------整个系统一张 用于记录所有内存块的使用情况,以便于内存空间的分配与回收。 组织方式: (1)链表方式 3)页表(PT)-------------每个作业一张 记录内存中作业的各页对应的块号。 页面大小: 页面的大小应选择得适中,且页面大小应是2的幂,通常为512 B~8 KB 页表的每一个表目除了包含指向页框的指针外,还包括一个存取控制字段。 表目也称为页描述子。 分页管理中页与页框的对应 关系示意图 内存的分配 计算一个作业所需要的总块数N 查内存分配表,看看是否还有N个空闲块 如果有足够的空闲块,则在作业表中找一空表目填入有关参数(长度、状态) 申请页表区,把页表始址填入作业表 查内存分配表,分配N个空闲块,将块号填入页表对应项中 注、页面大小的选择 1、在分页系统中页面的大小是由机器的地址结构所决定的。亦即由硬件决定,对于某一种机器只能采用一种大小的页面。 2、影响页面大小设计的因素。 (1)、管理内存的开销: 页面太小,就会导改进程所需页面多,页表过长,占用大量内存空间;同时,降低页面换入换出效率。 (2)、内存的利用率 页面小有利于提高内存的利用率,但存(1)所述缺点,页面大,可克服(1)的缺点,但页内碎片大,空间利用率降低。 3、页面的大小 (1)、页面大小是2的幂。 (2)、一般页面大小在512个字节~4K 地址变换过程示例 例如指令 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单元中。 三、分页系统中的相联存储器和快表 1、问题的引入: 页表的存放: 如果把页表放在主存中,两次访问内存,无疑会影响系统的性能。这是因为每次访问主存,首先必须访问页表,读出页描述子,之后根据形成的实际地址再访问主存,这样使访问主存的次数加倍,因而使总的处理速度明显下降。 一组寄存器: 高速存储器称为相联存储器(associative memory) 用来存放页表的一部分,存放在相联存储器中的页表称快表。相联存储器的存取时间是远小于主存的,但造价高,故一般都是小容量的,例如Intel 80486的快表为32个单元。 具有快表的地址变换机构 两级和多级页表 两级页表 解决大页表占用大的连续存储空间的问题; 关于“页表”的分页存放“页表”——外层页表; 逻辑地址: 外层页号+外层页内地址+页内地址 多级页表 五、基本分页的特点 优点: 存在页内碎片,但碎片相对较小,内存利用率较高; 实现了离散分配,消除了程序浮动; 便于存储访问控制,有利于代码共享。 “可重入代码”——纯代码:执行中不可改变。 缺点: 需要专门的硬件支持,尤其“快表”; 内存访问的效率下降。 不足: 不能实现真正的共享,不支持动态链接。 4.4.1 分段式存储管理的引入 在分页存储系统中,作业的地址空间是一维线性的,这破坏了程序内部天然的逻辑结构,造成共享、保护的困难。引入分段存储管理方式, 主要是为了满足用户和程序员的下述需要: 1) 方便编程 2) 信息共享 3) 信息保护 4) 动态增长 5) 动态链接 即:从地址空间的结构上看及分区的划分上都有其不足 4.4.2 分段系统的基本原理 1、作业地址空间及其地址结构 作业分段 : 将作业信息分为逻辑上相对独立的一些段。 如每一个程序模块、数据模块均为一段,每一段均从0开始编址。 段名、段号: 用户为每一段定义一个符号名

文档评论(0)

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

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

版权声明书
用户编号:8053040006000004

1亿VIP精品文档

相关文档