版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主存管理7.1主存管理概述51.几个概念物理地址(绝对地址、实地址)
物理地址是计算机主存单元的真实地址,又称为绝对地址或实地址。主存空间
物理地址的集合所对应的空间组成了主存空间。逻辑地址(相对地址、虚地址)
用户的程序地址(指令地址或操作数地址)均为逻辑地址。作业地址空间用户程序所有的逻辑地址集合对应的空间。6作业地址空间与主存空间主存空间01m-1作业1地址空间01n-1作业i地址空间01k-1
程序局部性原理:一个进程在执行过程中,其大部分程序和数据并不经常被访问到。在一段时间内,整个程序的执行仅限于程序中的某一部分。虚拟存储器:计算机系统在处理应用程序时,只装入部分程序代码和数据就启动运行,由操作系统和硬件相互配合完成主存和辅存之间的动态调度,这样计算机系统好像为用户提供了一个存储容量比主存大得多的存储器,这一个存储器称之为虚拟存储器。实现虚拟存储器的物质基础有相当容量的辅存,足以存放应用程序的虚地址空间实现虚拟存储器的物质基础有一定容量的主存,存放进入主存的多进程的信息地址变换机构虚拟存储器的容量:主存与辅存的容量之和确定,还受CPU寻址位数的限制,如32位为4G。2.主存共享方式大小不等的区域分区存储管理段式存储管理大小相等的区域页式存储管理二者结合段页式存储管理3.程序的逻辑组织一维地址结构一个程序是一个连续、线性的地址结构;确定线性地址空间中的指令地址或操作数地址只需要一个信息。
程序地址空间01n-1
二维地址结构一个程序由若干个分段组成,每个分段是一个连续的地址区;确定任一地址空间中的指令地址或操作数地址需要两个信息,一是该信息所在的分段,另一个是该信息在段内的偏移量。code_addr4KB10代码分段data_addr3KB10数据分段stack_addr2KB10栈段117.2主存管理功能1.主存管理功能实现逻辑地址到物理主存地址的映射主存分配存储保护主存扩充
2.地址映射什么是地址映射
将程序地址空间中使用的逻辑地址变换成主存中的物理地址的过程,称为地址映射。movr1,[500]1230100500599作业地址空间movr1,[500]12301000110015001599256k-1存储空间地址映射的时机和类别程序编写或编译时映射在程序编写或程序编译时确定虚、实地址之间的对应关系,结果是一个不能浮动的程序模块。申请主存的时候,必须明确提出申请的主存的容量和起始地址。静态映射在作业装入过程中随即进行的地址变换方式称为静态地址映射。缺点:一个已经开始执行的程序是无法在主存中移动。程序因某种原因被换到辅存后,再调入主存,必须返回原来的位置load1,23053270程序虚拟地址空间内存空间load1,12305327100001100012305无需硬件支持动态映射在程序执行期间,随着每条指令和数据的访问自动地连续地进行地址映射,这种地址变换方式称为动态地址映射特点:装入时不加任何修改,但在每次访问内存单元前才进行地址变换。系统中设置重定位寄存器。load1,23053270程序虚拟地址空间内存空间load1,23053271000011000123052305
+10000VRBR11静态地址映射与动态地址映射的区别
静态地址映射
动态地址映射
在作业装入过程中
在程序执行期间
进行地址映射
进行地址映射
需软件
需硬件地址变换机构
重定位装入程序
重定位寄存器
需花费较多CPU时间
地址变换快
不灵活
灵活
3.主存分配构造分配用的数据结构
主存资源信息块:等待队列;空闲区队列;主存分配程序制定策略主存分配策略
——在众多个请求者中选择一个请求者的原则。放置策略
——在可用资源中,选择一个空闲区的原则。调入策略
——决定信息装入主存的时机预调策略:预先将信息调入主存请调策略:当需要信息时,将信息调入主存淘汰策略
——在主存中没有可用的空闲区(对某一作业而言)时,决定哪些信息从主存中移走,即确定淘汰已占用的内存区的原则。实施主存分配与回收4.存储保护什么是存储保护在多用户环境中,主存储器按区分配给各用户程序使用。为了互不影响,必须由硬件(软件配合)保证各用户程序只能在给定的存储区域内活动,这种措施叫做存储保护。实现方法界地址保护存储键保护界地址保护上下界防护例:作业大小为4KB,主存首址为20KB。
movr1,[500]123020KB256KB1存储空间24KB下界寄存器
20KB上界寄存器
24KB如何判断是否越界?若20KB≤D<24KB
允许访问;界地址保护基地址、限长防护例:作业大小为4KB,主存首址为20KB。如何设置基址、限长寄存器内容?如何判断是否越界?若逻辑地址<4K,允许访问;否则发生越界中断
movr1,[500]123020KB256KB1存储空间24KB基址寄存器
20KB限长寄存器
4KB保护键法:软件和硬件结合的方法。为每一个被保护存储块分配一个单独的保护键。对不同进程赋予不同的开关代码,保护键可设置成对RW同时进行保护或只对R、W进行单独保护的。7.3分区存储管理及存在的问题分区管理基本原理分区:由系统操作员或操作系统把内存空间分成若干个大小不等的区域,称为分区。基本原理:给每个内存中的作业划分一块适当大小的存储区,以连续存储各作业的程序和数据。要求:一个分区只装一个作业。1.固定分区法分区事先已经划分好,分区大小不能改变。数据结构分区说明表:内存的分配释放、存储保护以及地址变换等都通过分区说明表进行。分区号分区长度起始地址状态OS(8K)用户分区1(16K)用户分区2(16K)用户分区3(32K)分区号起始地址长度状态18K16K0224K16K0340K32K分区说明表Job1(20K)0Job1084024缺点:各分配分区可能造成碎片(零头);程序大小受分区空间大小的限制。2.动态分区分配什么是动态分区分配
在处理作业的过程中,建立分区,依用户请求的大小分配分区。作业1申请
32KB
0
256KB1主存20KBos20KB
0
52KB256KB1主存os作业1作业2申请
14KB20KB
0
52KB66KB256KB1主存os作业1作业2作业3申请
64KB20KB
0
52KB66KB130KB256KB1主存os作业1作业2作业3作业4申请
100KB20KB
0
52KB66KB130KB230KB256KB1主存os作业1作业2作业3作业4作业5申请
50KB动态分区的分配过程
动态分区的回收过程
作业2
完成作业4完成20KB
0
52KB66KB130KB230KB256KB1主存作业1作业2作业3作业4os20KB
0
52KB66KB130KB230KB256KB1主存作业1作业3作业4os20KB
0
52KB66KB130KB230KB256KB1主存os作业1作业3分区的分配与回收分区分配思路依申请者所要求的主存区的大小,分区分配程序在自由主存队列中找一个满足用户需要的空闲块;若找到了所需的空闲区,有两种情况空闲区与要求的大小相等,将该空闲区分配并从队列中摘除;空闲区大于所要求的的大小,将空闲区分为两部分:一部分成为已分配区,建立已分配区的描述器;剩下部分仍为空闲区。返回所分配区域的首址;否则,告之不能满足要求。分区回收思路检查释放分区(即为回收分区)在主存中的邻接情况;若上、下邻接空闲区,则合并,成为一个连续的空闲区;若回收分区不与任何空闲区相邻接,建立一个新的空闲区,并加入到空闲区队列中。上空闲区下空闲区上空闲区下空闲区2.动态分区分配分区分配结构主存资源信息块(M_RIB)分区描述器(PD)
等待队列头指针
空闲区队列头指针
主存分配程序入口地址M_RIBflag:为0——空闲区为1——已分配区size:分区大小next:空闲区——自由主存队列中的勾链字已分配区——此项为零。
分配标志flag
大小size
勾链字nextPD22空闲区队列结构20KB
0
52KB66KB130KB230KB256KB1主存os作业1作业3作业452KBm-rib
空闲区队列230KB014KB026KB253.放置策略什么是放置策略选择空闲区的策略,称为放置策略。常用的放置策略——
首次匹配(首次适应算法)
最佳匹配(最佳适应算法)
最坏匹配(最坏适应算法)首次适应算法首次适应算法是将输入的作业放置到主存里第一个足够装入它的地址最低的空闲区中。
作业A
18KB空闲区队列结构空闲区地址由低到高排序
在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB-1主存os特点:优先利用内存低地址部分的空闲区。优点:保留了高地址部分的大空闲区。缺点:低地址端留下许多难以利用的很小空闲分区(碎片);增加查找可用空闲分区开销。最佳适应算法最佳适应算法是将输入的作业放置到主存中与它所需大小最接近的空闲区中。
作业A
18KB空闲区队列结构空闲区大小由小到大排序
在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB-1主存os特点:优先利用了大小与程序要求最接近的空闲区。优点:保留了大空闲区。缺点:剩下的空闲区很小,且数量较多。最坏适应算法最坏适应算法是将输入的作业放置到主存中与它所需大小差距最大的空闲区中。
作业A
18KB空闲区队列结构空闲区大小由大到小排序
在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB-1主存os特点:总是挑选出最大的分区分配给程序。优点:分配给程序后剩下的空闲区较大,可能能装下其它作业。缺点:最大空闲区总是首先被分配而进行划分,难于满足大作业的要求。三种放置策略的讨论作业A要求18KB;作业B要求25KB;作业C要求30KB。用首次适应算法、最佳适应算法、最坏适应算法来处理该作业序列,看哪种算法合适。
三种放置策略的讨论首次适应算法、最佳适应算法、最坏适应算法的队列结构。
在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB-1主存os(a)首次适应算法的空闲区队列
20KB
030KB100KB
020KB160KB
05KB210KB
046KB
(a)最佳适应算法的空闲区队列160KB
05KB100KB
020KB20KB
030KB210KB
046KB
(a)最坏适应算法的空闲区队列210KB
046KB20KB
030KB100KB
020KB160KB
05KB
三种放置策略的讨论首次适应算法
作业A要求18KB
作业B要求25KB
作业C要求30KB
首次适应算法对该作业序列是不合适的
在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB-1主存os(a)首次适应算法的空闲区队列
20KB
030KB100KB
020KB160KB
05KB210KB
046KB
最佳适应算法
作业A要求18KB
作业B要求25KB
作业C要求30KB
最佳适应算法对该作业序列是合适的
在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB-1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《人工智能与无损检测课程设计》课程教学大纲
- 《刑法》课程教学大纲
- 仁爱英语单元、话题同步测试题-七年级上册
- 2024年出售杉木方木合同范本
- 2024年出售电泳漆设备合同范本
- 2024年承接土地转让合同范本
- 辽宁省七校2024-2025学年高二上学期11月期中联考语文试题(含答案)
- 供电营业厅培训
- 云南省2024-2025学年高二上学期11月期中考试 地理(含答案)
- 中国石油行业金融季度研究报告2012年二
- 质量总监考核表
- 台背填土现场质量检验报告单
- JJF(电子)0036-2019 示波器电流探头校准规范-(高清现行)
- 2020心肌梗死后心力衰竭防治专家共识课件
- 蓄水池防水施工方案
- 隧道的衬砌计算(85页清楚明了)
- 人教版八年级(初二)数学上册全册课件PPT
- Q∕GDW 10202-2021 国家电网有限公司应急指挥中心建设规范
- CNAS-CL01:2018(ISO17025:2017)改版后实验室首次内审及管理评审资料汇总
- 护理不良事件-PPT课件
- 商业银行两地三中心数据容灾备份方案建议书
评论
0/150
提交评论