第4章+存储管理.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
下图是采用存储保护键的方法实现分区保护。 综上所述,分区式分配的优点可以归纳如下: (1)由于内存被分成多个分区,所以允许多道程序同时共享主存空间,这就更有效地利用了处理机和I/O设备,使系统的吞吐率和周转时间都得到了相应地提高。 (2)相对于以后要介绍的几种管理技术,分区式分配所需要的表格较少,表格占用的空间也少,算法简单。 (3)实现分区保护的手段也简单。 (4)多重分区管理便于实现对子程序、数据的共享。 缺点也可以归纳如下: (1)与后面要介绍的管理方法相比,分区式管理方法主存的利用率仍不是很高,除了可重定位分区分配方法以外,都存在着严重的零头问题。 (2)分区式管理方法不能实现对主存的扩充,因此,作业的大小受主存可用空间的限制。 (3) 要求一个作业在运行前全部信息都要装入主存,有些信息在本次运行时并不需要,它也白白占用了主存空间。 (4) 可重定位分区分配方法所允许采用的拼接技术在拼接时也浪费处理机的大量时间。 (5)除了多重分区外,几个作业之间不能共享存入主存中的信息。 4.4.3 覆盖与交换 1.覆盖(overlap) 因内存小于作业的程序空间而引入覆盖,将用户空间划分成一个固定区和多个覆盖区。主程序放固定区,依次调用的子程序则放在同一个覆盖区。操作系统提供覆盖系统调用函数,由用户编程序时考虑调用。 什么叫覆盖 所谓覆盖是指一个作业的若干程序段或几个作业的某些部分共享某一段主存空间。覆盖管理是由系统实施,用户只需提供一个明确的覆盖结构。我们称之为自动覆盖技术。 本节研究两个问题: (1)作业内部的覆盖处理 (2)作业之间的覆盖处理 固定区(4k) 覆盖区(6k) 覆盖区(10k) A(4k) E(10k) D(6k) C(4k) B(6k) F(8k) (2)作业之间的覆盖处理 在多道程序系统中作业之间也可以采取覆盖技术以达到“扩充”存储空间的目的。通常在作业之间采用最小覆盖算法。 假设系统中有4个作业,内存共有14个存储块,并设每个存储块的大小相等,作业1装入了主存的始端,占6个存储块。作业2装入了内存的末端,占9个存储块。作业3装入了存储器的末端,占6个存储块。作业4被安排在存储器的始端,占3个存储块。结果作业4与作业3的全部信息都存于主存,而作业1和作业2仅保留一部分信息,其余的信息被覆盖掉了,详见下图(b)。 系统实现最小覆盖算法时,分别建立两张表:覆盖次数表和占用者表,如图4-18(a)所示。下图(b)为主存使用情况表。 所谓最小覆盖算法是为调度到的作业i在内存中寻找适当的位置,使得被作业i再次覆盖的所有块的覆盖次数总和为最小。为此,此算法必须计算作业i被安放在不同位置时覆盖次数总和,并加以比较,选择总和最小的那几块来存放作业i。由于这些位置将被再次覆盖,所以给每一个被覆盖的存储块增加覆盖次数。 2. 交换 多道程序环境或分时系统中,同时执行好几个作业或进程。但是,这些同时存在于内存中的作业或进程,有的处于执行状态或就绪状态,而有的则处于等待状态。一般来说,等待时间比较长。例如从外存软磁盘读一块数据到内存有时要花0.1秒到1秒左右的时间。如果让这些等待中的进程继续驻留在内存,将会造成存储空间的浪费。因此,应该把处于等待状态的进程换出内存。 基本思想:将处于等待状态(等I/O)或就绪(等CPU)状态的进程从主存换出到辅存,把将要执行的进程移入主存。 I/O缓冲区对于交换的影响。 申请空间的系统调用,用于动态申请空间。 交换要花费较长的时间。 广义地说,交换实质是先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中来,并让其执行的一种内存扩充技术。与覆盖技术相比,交换不要求程序员给出程序段之间的覆盖结构。而且,覆盖可以在一个作业内部进行,交换主要是在进程或作业之间进行。交换的原则是在任一时刻,在主存中只保留一个用户作业或进程,当它运行一段时间后,系统将它调到辅存,然后又调入另一个作业到主存运行。 4.4.4 分页存储管理 不连续空间分配 特点:作业(进程)分成页面,内存也划分成页面,将作业(进程)页面不连续地分布到内存页面。 一、空间安排 用户进程空间(地址)叫逻辑空间(地址); 内存空间(地址)叫物理空间(地址); 用相同长度为单位对逻辑空间等分出的每 个区域叫页,对物理空间等分出的区域叫 页帧,对外存交换区等分出的每个区域叫 块。 分配:初始时,所有页帧都在空闲队列中,当用户进程被创建时,系统按需要量从空闲队列获得相应量的页帧。 回收:当进程结束时,系统回收它的所有物理页帧入空闲队列。 二、动态地址转换机构 因页式方法中逻辑地址与物理地址之间失去自然联系,故要通过页表,并由硬件动态地址转换机构将逻辑

文档评论(0)

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

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

1亿VIP精品文档

相关文档