os_第4章存储器管理分析.ppt

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

南昌大学信息管理系 NanChang University Department of information manager 4.1 程序的装入和链接 一个用户源程序要变为一个可在内存中执行的程序,一般要经过: 4.1.1程序的装入: (1)绝对装入方式 (2)可重定位装入方式 (3)动态运行时装入方式 一、绝对装入方式 二、可重定位装入方式 可重定位装入方式,可将装入模块装入到内存中适当的位置,因此可用于多道程序环境。 原因: 当程序装入内存时, 操作系统要为该程序分配一个合适的内存空间,由于程序的逻辑地址与分配到内存物理地址不一致, 而CPU执行指令时,是按物理地址进行的,所以要进行地址转换 重定位:在装入时对目标程序中的指令和数据地址的修改过程。 三、动态运行时装入方式(动态重定位) 动态运行时的装入程序,在把装入模块装入内存后,并不马上把相对地址转换为绝对地址,而是在程序要真正执行时才进行地址转换。 动态重定位 在程序运行过程中要访问数据时再进行地址变换(即在逐条指令执行时完成地址映射。一般为了提高效率,此工作由硬件地址映射机制来完成。硬件支持,软硬件结合完成) 硬件上需要一对寄存器的支持 4.1.2 程序的链接 一、静态链接 编译后得到三个目标模块,要将这几个目标模块链接装配成一个装入模块,要解决两个问题。 1、对相对地址进行修改 二、装入时动态链接 采用装入时动态链接方式把目标模块装入内存的同时,对相对地址进行修改。 三、运行时动态链接 该方式可将某些目标模块的链接,推迟到执行时进行。在执行时,如果发现有一个被调用模块不在内存中,就由操作系统找到这个模块,把它装入内存,并链接到调用者模块上。 4.2 连续分配存储管理 连续分配是指为一个用户程序分配一个连续的内存空间。 4.2.1 单一连续分配 采用单一连续存储管理时,内存从概念上分为两个连续区: (1)系统区。 (2)用户区。 为了防止OS受到用户的破坏,存储保护可以通过硬件设置一个基址寄存器和界限寄存器来实现。 4.2.2 固定分区分配 固定分区式分配就是把内存空间分为若干个固定大小的区域。每一个作业占据一个连续的分区。 一、划分分区的方法 分区大小相等 分区大小不相等 分区一旦划分结束,在整个执行过程中每个分区的长度和内存的总分区个数将保持不变。 二、内存分配 系统设有一张分区使用表,各表项包含有每个分区的起始地址、大小及状态(是否已分配)。 分区使用表 固定分区存储管理的地址转换和存储保护 4.2.3 动态分区分配(可变分区) 1、基本思想 内存不是预先划分好的,而是当作业装入时,根据作业的需求和内存空间的使用情况来决定是否分配。若有足够的空间,则按需要分割一部分分区给该进程;否则令其等待主存空间 一、分区分配中的数据结构 常用的结构有: 1、空闲分区表 二、分区分配算法 1、最先适应算法(FF),也称首次适应算法 三、分区分配操作 分区分配操作包括分配和回收内存。假定请求分区大小为u.size,空闲分区的大小为m.size,size:是不再切割的剩余区大小。 2、回收内存 (1)回收区与插入点的前一个分区相邻接 碎片问题: 经过一段时间的分配回收后,内存中存在很多很小的空闲块。它们每一个都很小,不足以满足分配要求;但其总和满足分配要求。这些空闲块被称为碎片 地址转换与存储保护 三、动态重定位分区分配算法 实现动态重定位分区分配算法和动态分区基本上相同。 固定分区: 动态分区: 动态重定位分区: 分区分配的优缺点 优点: (1)实现了内存的共享,因而有助于多道程序设计,提高了系统的资源利用率。 (2)该方法要求的硬件支持少,管理算法简单,实现容易。 (3)实现信息保护的手段比较简单。 缺点: (1)内存利用率仍然不高,除了动态重定位分区方式以外,都存在着严重的零头问题。在单一连续区分配一样,要求作业执行前全部装入内存,在内储器中可能包含有从未使用过的信息。 (2)采用拼接技术,虽然解决了零头问题,但有时需要移动大量的信息,从而损失了处理机时间。 (3)不能实现对主存的“扩充”,不能为用户提供一个比存储空间大的地址空间,作业的大小受到主存可用空间的限制。 4.2.5 对换 采用交换技术的指导思想是为了利用辅存(外存)来解决主存(内存)容量不够大的矛盾,以提高

文档评论(0)

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

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

1亿VIP精品文档

相关文档