第五章 存储管理幻灯片.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 存储管理;本章学习目标;存储体系概述;多级存储;;2.内存 由存储单元(字节或字)组成的一维连续的地址空间,简称内存空间。用来存放当前正在运行程序的代码及数据,是程序中指令本身地址所指的、亦即程序计数器所指的存储器。 分为: ?? 系统区:用于存放操作系统 ?? 用户区:用于装入并存放用户程序和数据;3. 存储管理的目的 1、充分利用内存,为多道程序并发执行提供 存储基础。 2、尽可能方便用户使用。 3、自动装入用户程序。 4、用户程序中不必考虑硬件细节。 5、系统能够解决程序空间比实际内存空间大的 问题。;6、程序在执行时可以动态伸缩 7、内存存取速度快 8、存储保护与安全 9、共享与通信 10、了解有关资源的使用状况;5.1 存储管理的功能;5.1.1 内存的分配与回收;5.1.2 地址重定位;;1. 逻辑地址、物理地址和地址映射;;;图5.2 作业的名空间、逻辑地址空间和装入后的物理空间;2. 绝对装入(absolute loading);3. 可重定位装入(relocatable loading);可执行文件在内存中的重定位;4. 动态装入(dynamic run-time loading);图4.3 静态地址重定位和动态地址重定位示意图;5.1.3 存储保护;(a)上、下界保 (b)基址—限长保护 图4.4 界限寄存器的两种存储保护方式;5.1.4 虚拟存储器;虚拟存储技术的核心;虚存的形式;**引入虚拟存储技术的好处;虚拟存储技术的特征;5.2 分区存储管理;分区存储管理的基本原理;5.2.1 固定分区存储管理;图5.5 固定式分区内存分配示意图(a)和(b)固定式分区说明表;固定分区内存分配方法;特点:作业进入内存后,每一个分区内只允 许有一个作业,其占用的分区直到作 业运行结束才收回。;5.2.2 可变式分区存储管理;可变式分区的基本原理;图5.6 可变式分区内存使用情况示意图 ;空闲分区的组织形式;使用分区说明表进行内存分配与回收;分区回收: 1)检查回收的分区是否与可用表中的空白块 相邻,如相邻则执行合并算法; 2)修改可用表。;合并算法: 1)回收区R与上面空白块F1邻接,合并后仍为空白块F1,首地址不变,修改该块大小; 2)回收区R与下面空白块F2邻接,合并后仍为空白块F2,修改该块首地址和大小; 3)回收区与上、下空白块邻接,则撤消下面空白块F2,保留F1,修改该块大小。;空闲分区链表:在每个空闲分区的起始部分开辟出一个单元,存放一个链表指针和该分区的大小,链表指针指向下一个空闲分区。 ;图5.7 空闲分区链表组织形式 ;内存的分配与回收;常用的分配算法;;最佳适应算法: 原理:空白块按容量大小递增的次序链 接,在为作业分配内存空间时总是从最 小的空白块开始,即第一次找到的满足 要求的空白块必是最合适的。;;;;图5.8 最佳适应算法的空闲分区链表组织形式;图5.9 最差适应算法的空闲分区链表组织形式;图5.10 内存使用情况;图5.11 用三种适应算法处理同一作业序列;三种算法的对比;可变式分区的地址重定位;图5.12 采用动态重定位的可变式分区分配算法;可重定位式分区存储管理;思考题;2、设内存空白块数为3,申请内存分配作业数为4,其大小依次为30K,32K,29K,20K请构造一种在动态分区管理中满足WF但不能满足BF的空白块的最低容量大小并说明其理由。;6.4.1 覆盖(overlay);将程序的必要部分(常用功能)的代码和数据常驻内存; 可选部分(不常用功能)在其他程序模块中实现,平时存放在外存中(覆盖文件),在需要用到时才装入到内存; 不存在调用关系的模块不必同时装入到内存,从而可以相互覆盖。(即不同时用的模块可共用一个分区);注:另一种覆盖方法:(100K) A(20K)占一个分区:20K; B(50K)、D(20K)和E(40K)共用一个分区:50K; F(30K)和C(30K)共用一个分区:30K;;缺点: 编程时必须划分程序模块和确定程序模块之间的覆盖关系,增加编程复杂度。 从外存装入覆盖文件,以时间延长来换取空间节省。 注意:覆盖技术的对象是一个作业或程序内部的各个模块。;6.4.2 交换(swapping);原理:暂停执行内存中的进程,将整个进程的地址空间保存到外存的交换区中(换出swap out),而将外存中由阻塞变为就绪的进程的地址空间读入到内存中,并将该进程送到就绪队列(换入swap in)。;优点:增加并发运行的程序数目,并且给用户提供适当的响应时间;编写程序时不影响程序结构 缺点:对换入和换出的控制增加处理机的开销;程序整个地址

文档评论(0)

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

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

1亿VIP精品文档

相关文档