《存储器管理》PPT课件.ppt_第1页
《存储器管理》PPT课件.ppt_第2页
《存储器管理》PPT课件.ppt_第3页
《存储器管理》PPT课件.ppt_第4页
《存储器管理》PPT课件.ppt_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章存储器管理,存储管理的功能,内存分配、回收存储保护地址变换存储共享存储扩充,第五章存储器管理,存储管理的功能,内存分配、回收,存储保护,确保每道用户进程都在自己的内存空间中运行,互不干扰,冲突和破坏;,多道:用户进程不允许访问OS的程序和数据;而且用户进程不允许访问其他用户进程的程序和数据空间。,第五章存储器管理,存储管理的功能,存储保护,每个进程都分别有一个上界限地址寄存器和一个下界限地址寄存器,每次访问内存时都与这两个界限寄存器比较,判断是否越界。,需要硬件来实现:,第五章存储器管理,存储管理的功能,地址变换,将逻辑地址转化为物理地址,存储共享,多个进程共用同一系统软件,如编译程序,存放编译程序的内存区即为共享内存区;,存储扩充,在逻辑上扩充内存容量,采用虚拟存储器技术。,一个用户源程序变为可在内存中执行的程序,步骤:,用户源程序,多个目标模块,一个装入模块,装入内存(可在内存中执行的程序),第五章存储器管理,5.1程序的装入和链接,一、程序的装入,1.绝对装入方式,由装入程序根据装入模块中的地址,将程序和数据装入内存。,逻辑地址:,源程序经过编译后形成的目标模块或装配链接程序的地址编码。,物理地址:,程序在主存储器中的地址编码。,逻辑地址=物理地址,第五章存储器管理,5.1程序的装入和链接,一、程序的装入,2.可重定位装入方式,内存中代码的地址部分已经被修改,5.1程序的装入和链接,一、程序的装入,2.可重定位装入方式,物理地址=逻辑地址+本程序在内存中的起始地址,-静态重定位,在程序执行之前进行的重定位,在程序装入内存时一次性完成指令中地址的修改。,静态重定位无需硬件的支持,由装入模块负责完成;,缺点:程序装入内存后,不允许移动在内存中的位置;,5.1程序的装入和链接,一、程序的装入,3.动态运行时装入方式,装入位置,执行到语句时,进行地址重定位,加法器,1300,动态重定位的实现,5.1程序的装入和链接,一、程序的装入,3.动态运行时装入方式,装入主存的程序仍然保持原来的逻辑地址,由逻辑地址到物理地址的转换在程序真正执行时进行。,-动态重定位,动态重定位必须有硬件的支持重定位寄存器存放程序在内存的起始地址加法器将起始地址与相对地址相加获得物理地址,优点:装入内存后,代码可以移动,二、程序的链接,5.1程序的装入和链接,1.静态链接,对相对地址进行修改;变换外部调用符号;,二、程序的链接,5.1程序的装入和链接,2.装入时动态链接,3.运行时动态链接,对某些模块的链接推迟到执行时才执行;优点:加快程序的装入过程,而且可节省大量的内存空间。,优点:便于修改和更新。(2)便于实现对目标模块的共享。,第五章存储器管理,程序是在连续区域中,还是划分成若干块放在不同区域中?内存是事先还是动态划分?对于不同的内存分配方案,采用的地址变换技术也不同。,5.2连续分配存储管理方式,连续分配:,是指为一个用户程序分配一个连续的内存空间。,分类:,5.2.1单一连续分配,适用于单用户、单任务的操作系统中;,内存分为两个区域:系统区,用户区,在DOS中就采用了这种方法。,系统区仅提供给OS使用,通常放在内存的低址部分;用户区是指除系统区以外的全部内存空间,提供给用户使用。,5.2连续分配存储管理方式,5.2.2固定分区分配,5.2连续分配存储管理方式,分区的个数和大小是固定不变的。,当系统初始化时,把存储空间划分成若干个固定大小的区域,每个分区中存入一道作业。,5.2.2固定分区分配,一、划分分区的方法,5.2连续分配存储管理方式,缺点:缺乏灵活性。任何程序,无论多小,都要占据一个分区,造成内存空间的浪费;程序太大,不能放到分区中;,内部碎片:分配给进程的分区中,进程没有使用的部分,优点:克服分区大小相等而缺乏灵活性的缺点,可根据程序的大小为之分配适当的分区。,缺点:还是有内部碎片;仍然存在作业太大不能运行的问题;,内存分配,6.2分区式存储管理,程序132k,程序250k,内存,程序3120k,没有足够大的分区,程序2,空闲空间称为内部碎片,内部碎片,1.分区大小相等,2.分区大小不等,程序132k,程序250k,内存,16k,32k,64k,128k,程序3120k,32k,程序4180k,作业太大,内部碎片,5.2.2固定分区分配,二、内存分配,5.2连续分配存储管理方式,分区使用表:分区由小到大进行排队,记录分区的大小,起始地址,是否已分配等信息,三、固定分区分配的缺点出现大量浪费内零头(内部碎片),5.2.2固定分区分配,5.2连续分配存储管理方式,5.2.3动态分区分配(可变分区分配),5.2连续分配存储管理方式,特点:区域边界可移动,分区的个数不定,大小不定。,定义:根据作业的大小动态的划分内存分区,使分区的大小正好适应作业的需求。,5.2.3动态分区分配,5.2连续分配存储管理方式,实现动态分区(可变分区)分配时,须解决的问题,一、分区分配中的数据结构,二、分区分配算法,三、分区分配、回收操作,0,20,OS,程序18k,程序232k,28,60,程序4120k,92,程序332k,212,512,程序6256k,程序524k,84,468,32k,128k,44k,程序18k,程序524k,程序n206k,程序730k,程序848k,程序m40k,外部碎片,外部碎片,5.2.3动态分区分配,一、分区分配中的数据结构,1.空闲分区表,2.空闲分区链,1、最佳适应算法(BF):为某一作业选择空白分区时总是寻找其大小最接近于作业大小的存储区域。a.数据结构:内存中空白区按由小到大的顺序连接成一空闲区链。b.优点:后到的大作业比较容易得到满足。c.缺点:划分后剩余的空闲区最小;,二、分区分配算法,5.2.3动态分区分配,5.2.3动态分区分配,二、分区分配算法,2、最坏适应算法(WF):在为某一作业选择存储区域时,总是寻找最大的空白区。a.数据结构:存储空白区按由大到小的顺序连接成一个空白区链。b.优点:被划分后剩下的空白区域最大,利用率高。c.缺点:后到的大作业不易得到分配。,5.2.3动态分区分配,二、分区分配算法,3.首次适应算法FF。,空闲分区链以地址递增的次序链接;,进行内存分配时,从链首开始顺序查找。选择第一个可满足请求的空白块(优先利用存储空间的低址部分的空白块),a.数据结构:,c.缺点:,低址不断划分,致使留下许多难以利用的、很小的空闲分区;,每次从低址部分开始,增加查找可用空闲分区开销。,b.优点:,算法简单,查找快;保留了高址部分的大空闲区。,二、分区分配算法,5.2.3动态分区分配,2.循环首次适应算法NF,a.数据结构:,空闲分区链以地址递增的次序链接;,进行内存分配时,从上次找到的空闲分区的下一个空闲分区开始查找。,减少查找开销,空闲分区分布的更均匀。但缺乏大的空闲分区。,c.特点:,b.算法描述:,可变式分区的缺点:,外零头(外部碎片):可变式分区中存储空间被划分后剩下的小而无用的分区。,5.2.3动态分区分配,二、分区分配算法,例:,某操作系统采用可变分区分配存储管理方法,用户区主存为512K,且始址为0,分配时截取空闲块的前半部分(小地址部分)。初始时用户区的512K空间空闲。在执行了如下操作序列后:申请300K,申请100K,释放300K,申请150K,申请30K,申请40K,申请60K,释放30K。1.采用首次适应算法,有哪些空闲块(指出大小及始址)。2.采用最佳适应算法,有哪些空闲块(指出大小及始址)。3.如再申请100K,针对1、2各有什么结果?说明了什么问题。,5.2.3动态分区分配,二、分区分配算法,例:,3.如再申请100K,则首次适应算法可满足,而最佳适应算法不能满足,说明最佳适应算法并不总优于首次适应算法。,三、分区分配、回收操作,1.分配内存,5.2.3动态分区分配,三、分区分配、回收操作,2.回收内存,当进程运行完毕释放内存时,系统根据回收区首址,从空闲分区链中找到相应的插入点。此时出现四种情况:,5.2.4动态重定位分区分配,5.2连续分配存储管理方式,一、动态重定位的引入,5.2.4动态重定位分区分配,5.2连续分配存储管理方式,二、动态重定位的实现,实现:不需对程序作任何修改,“紧凑”时修改重定位寄存器内容,用程序在内存的新起始地址,去置换原来的起始地址即可。,5.2.4动态重定位分区分配,三、动态重定位分区分配算法,是,址,5.3对换/交换,早期的对换:,5.3.1多道程序环境下的对换,对换的引入:,a.内存中某些进程阻塞,却占用内存;,b.外存中许多作业欲进入,却无空闲内存。,5.3对换,对换:,所谓“对换”,是指把内存中暂时不能运行的进程或者暂时不用的程序和数据,调出到外存上,以便腾出足够的内存空间,再把已具

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论