第七讲 主存管理.ppt

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 存储器管理 7.1 概述 7.2 程序的装入和链接 7.3 存储器的连续分配方式 7.4 覆盖和对换技术 7.5 分页存储器管理方式 7.6 分段存储管理方式 7.7 段页式存储管理方式 7.1 概述 1.主存储器的物理组织 信息在主存中是按“位”存放的。 主存一般按字编址,并且,不同计算机的字长不同。 2.多级存储器 高速缓存 主存 外部存储器 3.主存管理功能 7.1 概述 主存分配 地址转换和重定位 存储保护和主存共享 存储扩充(虚拟存储技术) 7.2 程序的装入和链接 1.程序的装入 绝对装入方式 静态重定位装入方式 动态运行时装入方式 (1)静态链接 7.2 程序的装入和链接 (2)装入时动态链接 目标模块在装入内存的过程中链接,即边装入边链接。 优点: 便于修改和更新 便于实现目标模块的共享 (3)运行时动态链接 将某些目标模块的链接延迟到运行该模块时才进行。 即采用部分装入运行方式。 优点: 节省内存空间 便于实现目标模块的共享 7.3 连续分配的主存管理方式 连续分配方式是指为一个用户程序分配一个连续的内存空间。可 分成单一连续分配、固定分区分配、动态分区分配和动态重定位 分区分配四种方式。 1.单一连续分配方式 (1)划分分区的方法 分区大小相等 分区大小不相等 3.可变分区多道管理技术 (1)概念 主存事先并未划分成一块块分区,当作业进入主存时,按作业的实际大小建立和分配分区。 (2)特点 分区数可变 分区大小不固定 可能存在大小不等的空闲分区或碎片 3.可变分区多道管理技术 (3)数据结构 常用的数据结构有以下两种: 存储分块表 空闲分区表或空闲分区链 1)首次适应算法 以空闲分区链为例,每次从链首开始顺序查找,直到找 到一个大小能满足要求的空闲分区为止。(一般要求空 闲分区链以某种顺序链接,如地址递增。) 缺点:低地址端留下许多很小的、难以利用的空闲分区。运行一段时间后,使得查找的开销增加。 优点:内存的高地址端保留了较大的空间。 (4)存储分配算法 2)循环首次适应算法 设置查找指针,每次分配内存时,从查找指针开始查 找空闲分区表或空闲分区链。 优点:内存的空闲分区利用均匀 3)最佳适应算法 将满足需求的最小空闲分区分配给请求内存分配的进 程。(一般要求空闲分区按由小到大的顺序排列) 缺点:将在内存中留下许多碎片(内部碎片)。 (4)存储分配算法 4)最坏适应算法 在所有未分配的分区中挑选最大的,且满足作业主存要 求的分区分配给当前作业。 优点:能使分配后的剩余分区足够大,内部碎片减少 缺点:运行一段时间后,难以找到用户程序需要的较大空闲分区。 (5)内存分配操作 主要的操作有:分配内存和回收内存。 1)分配内存 选择一种分配算法将满足条件的内存分区分配给当前申请的进程。 2)内存回收 待回收的分区可能存在的情况有以下四种: 回收区不与任何空闲分区邻(如图(1)); 回收区与插入点的前一个空闲分区相邻(如图(2)); 回收区与插入点的后一分区相邻(如图(3)); 回收区与插入点的前、后两个分区同时相邻(如图(4))。 (1)紧凑 通过移动的方法,把内存中分散的各小存储分区拼凑成大存储区的 过程。 4. 动态重定位的可变分区分配 基本概念: 物理地址/绝对地址:是指实际访问的主存地址。 逻辑地址:指目标程序所限定的地址集合中的地址。由于逻辑地址通常是相对于某个基准量(通常为零)编址时所使用的地址,因此,也称相对地址。 相对地址空间:是指相对地址的全体。也称逻辑地址空间或用户地址空间。 4. 动态重定位的可变分区分配 重定位:是指逻辑地址到物理地址的变换过程。 静态重定位:程序装入内存时,由装入链接程序在程序执行前进行的重定位。静态重定位是由专门设计的重定位装配程序完成。 动态重定位:地址变换是在程序执行期间,随着对每条 指令或数据的访问进行的重定位。动态重定位的特点: 动态重定位由硬件机构完成,硬件机构包括重定位寄存器和加法器。 在程序执行的过程中进行地址变换。 目标程序可以在内存中移动且可以不连续。 (3)动态重定位分区分配算法 对换:是指将内存中暂不能运行的进程,或暂不用程序和数据换到外存对换区,再把具备运行条件的进程,或其所需要的程序或数据换入内存的过程。 1)目标:提高换进、换出的速度。 2)数据结构:对换区的空闲分区表(或链),每个表项应包括分区的首址和大小。(即开始盘块号和盘块数) (3)进程的换进与换出 1)进程的换进 从交换区中寻找处于“就绪”状态且换出时间最长的进 程换进。 2)进程的换出 选择处于阻塞或挂起状态且优先级最低的进程换出。(注:正在被共享的程序段

文档评论(0)

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

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

1亿VIP精品文档

相关文档