计算机操作系统05存储管理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
建立分区使用表, 表项包含有每个分区的起始 地址.大小及状态(是否已分配)。
7
第五章 存储管理
5.2.3 动态分区分配 动态分区分配是根据进程的实际需要,动态地为
之分配连续的内存空间。在实现可变分区分配存储 管理方式时,必须解决下述三个问题: (1)分区分配中所用的数据结构; (2)分区的分配算法; (3)分区的分配和回收操作。 一.分区分配中的数据结构
对换区。 为了提高进程换出换入的速度,对对换区的分配采
用了连续分配方式,因而对对换区空间的分配与回收, 采用了与动态分区方式相同的策略。如采用空闲分区 表(链)进行管理;分配算法采用首次适应算法.循环 首次适应算法和最佳适应算法等等。操作流程图见教 材P142图5-9。
与动态分区管理方式相同,对换区的回收操作也可 分为四种情况。
这是最简单的一种存储管理方式,但只能用于单 用户.单任务的操作系统中。且通常不设置保护措施。 采用这种存储管理方式时,内存分为以下两个分区: (1)系统区。 (2)用户区。
6
第五章 存储管理
5.2.2 固定分区分配 一.划分分区的方法:
将内存空间划分为若干个固定大小的分区,可 用下述两种方法:
1.分区大小相等 2.分区大小不等 二.内存分配
计算机操作系统
第五章 存储器管理
教学目的与要求: 1.了解操程序的编译、装入和链接 2.掌握存储器管理的主要功能和基本概念 3.掌握储器管理的连续分配和离散分配方式 4.了解IBM-PC微机中的存储管理方式
重点与难点: 1.动态重定位、对换等基本概念 2.动态分区分配算法与时机,分页与分段存
储管理 3.地址转换
1.空闲分区表 2.空闲分区链
8
第五章 存储管理
二.分区分配算法 1.首次适应算法,也叫最先适应法。选择找到的第
一个不小于程序空间大小的空闲分区分配给程序。 2.循环首次适应算法,是对首次适应法的发展。 3.最佳适应算法。(区别:最坏适应法)
三.分区分配操作 在动态分区存储管理方式中,主要的操作是分配
紧凑动作通常是在找不到足够大的空闲分区来满 足用户需求时才进行,具体流程图见教材P145。
10
第五章 存储管理
5.3 对换
5.3.1 多道程序环境下的对换 所谓“对换”,是指把内存中暂不能运行的进程,
或暂时不用的程序和数据,换出到外存上,以腾出足 够的内存空间,把已具备运行条件的进程,或进程所 需要的程序和数据,换入内存。对换是提高内存利用 率的有效措施。也称“交换”.
4
第五章 存储管理
5.1.2 程序的链接 程序的链接的功能是将分散的若干模块及所需库函数 链接在一起形成一个完整的可装入模块。 一.静态链接 静态链接所形成的完整的可装入模块也叫可执行文件, 形成后不再分开,可多次执行。需解决以下两个问题: 1.按照模块间的调用关系对相对地址进行修改; 2.按照模块间的调用关系变换外部调用符号。 二.装入时动态链接(Load-TimeDynamicinking)
和回收内存。 1.分配内存 2.回收内存:可能出现下列四种情况
(1)回收区与插入点的前一个分区F1相邻接 (2)回收分区与插入点的后一分区F2相邻接 (3)回收区同时与插入点的前.后两个分区邻接 (4)回收区既不与F1邻接,也不与F2邻接。
9ቤተ መጻሕፍቲ ባይዱ
第五章 存储管理
5.2.4 动态重定位分区分配 一.紧凑
3
第五章 存储管理
5.1.1 程序的装入 一.绝对装入方式(Absolute Loading Mode)
装入程序按照模块中的地址将程序和数据装入内存。 在这种方式下,内存地址对于程序员来说是可见的。 二.可重定位装入方式(Relocatable Loading Mode)
也叫相对装入方式,系统根据当时内存的使用情况 将模块装入到内存的适当位置。这种方式下,装入程 序需先将目标代码中与地址有关的指令和数据全部重 定位,因此这种重定位也叫静态重定位。 三.动态运行时装入方式(Dynamic Run-Time Loading),与上述方式不同的是,动态装入方式是在 运行时才临时进行重定位工作,因此也叫动态重定位。
12
第五章 存储管理
5.3.3 进程的换出与换入 当内核因执行某些操作而发现内存不足时,便调用
对换程序或唤醒对换进程,实现进程的换入与换出。 一.进程的换出
第五章 存储管理
主要内容: 5.1 程序的装入和链接 5.2 连续分配存储管理方式 5.3 对换 5.4 分页存储管理方式 5.5 分段存储管理 5.6 作业
2
第五章 存储管理
5.1 程序的装入和链接
在多道程序环境下,程序要运行必须为之创建 进程,而创建进程的第一件事,就是要将程序和数 据装入内存。如何将一个用户源程序变为一个可在 内存中执行的程序,通常要经过以下几步: (1)编译(Compile) (2)链接(Link) (3)装入(Load)
在模块被调用装入内存时才临时链接,其优点是: 1.便于软件版本的修改和更新 2.便于实现目标模块共享 三.运行时动态链接(Run-TimeDynamicLinking) 将部分不常用的模块推迟到运行时才临时链接。
5
第五章 存储管理
5.2 连续分配存储管理方式
连续分配是指为一个用户程序分配一个连续的内 存空间。包括单一连续分配和分区式分配方式两种。 5.2.1 单一连续分配
把不能被利用的小分区称为“零头”或“碎片”。 通过移动,把多个分散的小分区拼接成大分区的方 法被称为“拼接”或“紧凑”。但是,由于紧凑后 的程序的绝对地址再一次发生改变,导致程序无法 继续运行。 二.动态重定位
就是将重定位工作推迟到程序运行时再进行的一 种重定位方法。重定位工作由专门的动态地址重定 位机构来实现。 三.动态重定位分区分配算法
如果对换是以整个进程为单位,便称之为“整体 对换”或“进程对换”;如果对换是以“页”或“段” 为单位进行,则分别称之为“页面对换”或“分段对 换”,又统称为“部分对换”。实现进程对换,系统 必须具备三个功能,即对对换空间的管理以及进程的 换出和换入。
11
第五章 存储管理
5.3.2 对换空间的管理 在具有对换功能的OS中,通常把外存分为文件区和
相关文档
最新文档