第四章 存储器管理 4.1-4.5.ppt

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

第四章 存储器管理 Memory Management 本章主要内容 §4.1 存储体系 §4.2 程序的链接和装入 Program Linking and Loading 一、用户程序的主要处理阶段 将一个用户程序变为一个可在内存中执行的程序,通常要经过以下几步: (1) 编译(Compiling ) Source code Object Module (2)链接(Linking) Object Modules + Library functionLoad Module (3)装入(Loading) Load ModuleInternal Memory;构造PCB,形成进程(使用物理地址) 图4-1 对用户程序的处理步骤 基本概念(Basic Concept) 地址映射(重定位):把逻辑地址空间中使用的逻辑地址变换成内存空间中的物理地址的过程。 物理地址:内存是一块存储区域,存储单位是字节(字),每个字节都有地址。这种地址称为物理地址(绝对地址)。所有的物理地址集合构成物理地址空间。 逻辑地址:源程序经过编译连接形成可执行文件中的地址,通常从0开始,程序中其余指令中的地址都相对于首地址而编址,这种地址称为逻辑地址(相对地址、虚地址)。所有逻辑地址的集合构成逻辑地址空间。 符号地址:源程序中用字母和数字组成的符号代表存储器的地址。 二、 程序的装入 Program Loading 1 绝对装入方式 (Absolute Loading Mode) 由装入程序根据装入模块中的地址,将程序和数据装入内存。装入模块的地址是编译时由编译程序产生的,是绝对地址。装入程序按装入模块装入内存时,不需修改地址。 绝对地址可由程序员直接给出,或在编译或汇编时给出。 这种方式要求事先已知程序将装入内存的位置。一般只在单道程序的环境才有可能实现。 优点:装入过程简单。 缺点:过于依赖硬件结构,不适于多道程序系统。 例 如: 2 可重定位装入方式 (Relocatable Loading Mode) 由装入程序根据内存当时的实际使用情况,将装入模块装入到内存的适当地方。目标模块中为相对地址(逻辑地址) 。 装入模块中的逻辑地址与实际装入内存的物理地址不同。装入内存时,要进行 可重定装入方式采用的静态重定位。 其地址变换方式为: 几个重要概念 Several important concepts 绝对地址(Absolute Address)、物理地址(Physical Address) 相对地址(Relative Address)、逻辑地址(Logical Address) 符号地址(Symbol Address) 地址空间(Address Space)、逻辑地址空间 存储空间(storage space )、主存空间、物理地址空间 重定位(Relocation):在把程序的目标程序装入到内存时的地址修改过程,即LA--PA. 静态重定位(Static Relocation) 动态重定位(Dynamic Relocation) 重定位 概念:程序和数据装入内存时,需要对目标程序中的地址进行修改,这种把逻辑地址转换为内存物理地址的过程叫做重定位。 类型:根据重定位时间和技术的不同,分为: 静态重定位:程序执行前,一次性将该作业中程序的指令地址和数据地址全部转换成绝对地址,装入内存,且以后不能移动。 动态重定位:在程序执行过程中动态地进行地址转换,由地址变换机构(硬件)自动执行。 三、程序的链接 Program Linking 4.3 连续分配方式 Contiguous Memory Allocation 一、单一连续分配 Single Continuous Allocation 内存分为两个区域:系统区,用户区。 单一连续分配:内存中仅驻留一道程序,整个用户区为一个用户独占。 二、分区式分配 Partition Allocation 固定分区分配 动态分区分配 可重定位分区分配 伙伴系统 1、 固定分区分配 (Fixed Partition Allocation) 固定分区分配方法小结 优点:简单。 缺点: 实际系统运行时,往往无法预知分区大小(太大,等同于“单用户分区模式”); 主存空间利用率仍然较低; 分区数目预先确定,限制了多道运行程序的数量。 2、动态分区分配(Dynamic Partition Allocation) 在实现动态分区分配存储管理方式时,必须解决下述三个问题: 动态分区分配中的数据结构; 分区分配算法; 分区的分配和回收。 Ⅰ. 首次适应算法(First-Fit Algorithm ) 回收内存举例 3、可重定

文档评论(0)

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

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

1亿VIP精品文档

相关文档