四部分主存储器管理技术课件_第1页
四部分主存储器管理技术课件_第2页
四部分主存储器管理技术课件_第3页
四部分主存储器管理技术课件_第4页
四部分主存储器管理技术课件_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、第四部分:主存储器管理技术Ch8 实存储器管理技术固定分区存储管理可变分区的多道存储管理多重分区存储管理覆盖技术,交换技术Ch9 虚拟存储器管理技术分页存储管理分段存储管理段页式存储管理Ch8实存储器管理技术多级存储器管理: 容量 速度高速缓冲存储器主存外存 大 慢主存管理的研究课题:主存分配地址映象和重定位存储保护存储器扩充7.1 固定分区基本概念:主存分成若干个固定大小的存储区(存储块),每个存储区分给某一个作业使用,直到该作业完成后才把该存储区归还系统。单用户固定分区: 高地址CP/M-80CP/M-86 BIOS(1.5k)引导监控程序(8k) 操作系统BDOS(3.5k)TPA2(1

2、28k) 用户区 CCP(2k)TPA1(20.5k) 用户区TPA(56k)BIOS(1.2k)系统参数缓冲CCP,BDOS(9.2k)系统系统区256bytes系统参数区(1k)常驻BIOS:基本输入输出系统; BDOS:基本磁盘操作系统;CCP: 控制台命令处理程序; TPA: 临时程序区 多用户固定分区:分区数固定;操作系统各分区大小固定,但可不等;分区1主存分配:分区2给每个作业分配一个足够分区3大的主存分区,不允许两个作业放于同一个分区。数据库:存储分块表MBT(记录存储分区情况及存储区使用状况的信息)。Ex: 区号(存储键)大小size 位置location状态status18K

3、 512K正使用232K 520K正使用332K 552K未使用4128K 584K未使用5512K 712K正使用*放在操作系统区!存储分配算法存储分配算法(固定分区,可变分区均适用):最佳适应法,最先适应法,最坏适应法。固定分区存储分配最佳方案:最佳适应法和最先适应法的结合(MBT中各分区按照分区大小排列,最小分区放在表头)。存储保护和重定位:存储保护:用一对界地址寄存器存储作业大小和其在主存 的起始地址作为判界的条件。重定位:静态重定位。固定分区的优点:简单(硬件只一对界地址寄存器, 软件算法也简单)。缺点:主存利用率不高。7.2 可变分区的多道管理技术策略:主存事先并未划分成一块块分区

4、,而是在作业进入主存时按作业大小建立分区,分给作业使用。特点:分区个数,分区大小均可变; 主存中分布着个数,大小均是变化的自由分区或碎片。课题:如何管理已分配的和自由分区? 如何实现可变分区存储分配算法? 如何消除过小的碎片?(1)数据库组织方法存储分块表:表长难定,查表速度慢。双表:已使用分区表(UBT), 自由分区表(FBT)=减少存储分配和释放时查找表格的长度,提高查找速度。自由存储块链:用链指针把所有自由分区链接在一起,构成一条自由存储块链=管理维护简单。双表组织的可变分区数据库UBTFBT区号 大小 位置 状态区号大小位置状态 1 8K 512K 已分132K552K自由 2 32K

5、 520K 已分2-空表目 3 - - 空表目3520K704K自由 4 120K 584K 已分4-空表目 5 - - 空表目5-空表目状态:空表目,已分,自由FBT 需要表格维护(排序:分区位置,分区大小);UBT不需表格维护(区号为存储保护键,不能随意变动)。UNIX系统FBT:即主存可用资源表,50个表目,按地址排序,采用最先适应法分配。自由存储块链每个自由存储块起始的若干字节分成两部分:链指针next指向下一个自由存储块的起始地址;最后一 块的链指针为0(链尾标志); 大小size指出本自由块的大小。 0操作系统4K0 6K 6K自由区自由存储块 10K 作业1 链头指针 18K18

6、K 28K 2K 2K自由区 20K作业228K4K4K 4K自由区32K(2)分配和释放算法分配:size=作业大小的自由分区,分两部分 前面部分作业用,后面部分自由块。释放:与前后自由块合并。数据库:分配和释放模块对表格访问应互斥进行。数据库(临界资源)互斥信号量Mut; 初值为1;主存资源进程等待信号量Memory, 初值为0.举例说明 Ex1:分配3K给新作业0操作系统4K0 6K 10K 作业1 18K18K 31K 2K 20K作业228K新作业用3K 31K4K1K32K Ex2:释放作业10操作系统4K0 16K 10K 作业1 18K 31K 2K 20K作业228K作业3

7、31K31K4K1K32K(3)碎片问题和存储器的紧缩碎片问题:小的自由分区,不方便再利用。 作业60 操作系统(60K)512K作业3(8K) 520K自由区(20K)540K作业4(36K)576K自由区(8K)584K作业1(120K)704K自由区(4K)708K作业5(478K)1186K自由区(50K)解决:把程序分成几部分装入不同的分区中:复杂管理;把小碎片集中起来成为一个大分区:存储器的紧缩或澄清。程序的浮动程序浮动:为紧缩主存,用户程序在主存中移动。OS完成:一般机器无法识别主存中程序哪些项与地址有关,无重定位词典;某些机器用硬件设施自动为每个字加上两位来指示值的类型才可以!

8、连接装入程序完成:重新装入。但无法再记录断点,必须重新执行。问题!动态重定位:在程序执行过程中才进行程序重定位。7.3 动态重定位的可变分区多道管理动态重定位:将用户按相对地址编址的目标程序原封不动地装入主存分给它的分区。当分配处理机时,OS自动将该作业所在分区起址由作业表中取出,减去用户目标程序的相对基地址,得值装入定位寄存器RR 。当处理机访问主存时,地址转换器自动将程序中相对地址与RR中的内容相加,以此作为主存绝对地址去访问。动态重定位在指令执行过程中,每次访问内存前动态地进行。从而程序可在主存中随意移动而不影响其正确执行,可方便地进行存储器紧缩,较好地解决碎片问题。 硬件支持:定位寄存

9、器RR(可用一对界地址寄存器的基址寄存器),加法器。软件算法: 算法图7.12何时进行存储器紧缩:在某个 分区被释放后立即进行紧缩。当“请求分配模块”找不到足够大的自由分区分给用户时再进行紧缩。优点:可以消除碎片(有效利用主存空间,提高多 道程度,提高处理机和外设的利用率)缺点:需要动态重定位硬件机构支持;紧缩工作花 费机时。7.4多重分区(多对界地址)管理单分区存储管理技术:一对界地址寄存器 每个作业只占用一个分区。缺点:为解决碎片问题存储器紧缩,需硬件支持;不便于在进程间共享数据。多重分区存储管理技术:多(34)对界地址寄存器,并且为每个作业(或进程)分配主存时,可按界地址寄存器对的个数为

10、其分配多个不相邻的自由区。优点:改善碎片情况;便于共享信息。7.5 覆盖技术问题:当用户作业大于主存可用空间时,该作业无法运行; 在多道程序环境中,为提高并行性和多道程度,每个 作业所用空间往往有限。扩充内存:把进程地址空间中的信息(指令和数据)主要放在外存上,把当前需执行的程序段和数据段放在内存中。内存与外存信息交换方法:用户程序自己附加的控制:覆盖技术(overlay)(早期);OS控制方式:交换技术(swapping),映象方式(mapping)覆盖技术及交换技术与单用户连续分配,固定分区,可变分区多道管理技术配合使用。覆盖技术:指一个作业的若干程序段(或数据段)间,或几个作业的某些部分

11、间共享某主存空间。用于OS:OS常用部分常驻内存,不常用部分存于外存;用于用户作业:用户指定各程序段调入内存的先后次序,以及内存中可以覆盖的程序段位置。 main 20K mainA0B0 覆盖段0 A0 B0 30K 40K40KA1 A2 B1 覆盖段1 A1 A2 B1 30K 30K60K A3 A460K 20K 40K 覆盖段2 A3 A4 40K*用户负担很重,且程序不宜过长!用于早期的OS7.6 交换技术用于小型分时系统,协调多用户多作业。方法:调度程序从进程就绪队列中挑选到某一个进程运行时,就把该进程调入主存运行一个时间片。一旦时间片到或进程因等待事件而不能运行时,它不但让出CPU,而且

温馨提示

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

评论

0/150

提交评论