- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
存储器管理 第四章 存储器管理 4.1存储器的层次结构 4.1.1多级存储器结构 4.1.2主存储器与寄存器 4.13.高速缓存和磁盘缓存 程序在成为进程前的准备工作 –编辑:形成源文件(符号地址) –编译:形成目标模块(模块内符号地址解析) –链接:由多个目标模块或程序库生成可执行文件(模块间符号地址解析),形成一个装入模块 –装入:由装入程序将装入模块装入内存,构造PCB,形成进程(使用物理地址) 将一个模块装入内存时,可采用三种方式: –绝对装入 –可重定位装入 –动态装入 4.2 程序的装入和链接 编辑―――编译―――链接―――装入―――运行 图4.1 4.2.1 程序的装入 1、绝对装入: 编译后,装入前已产生了绝对地址(内存地址),装入时不再作地址重定位。 绝对地址的产生:(1)由编译器完成,(2)由程序员编程完成。 对(1)而言,编程用符号地址。 优点:装入过程简单,实现容易。 缺点:过于依赖于硬件结构,不适于多道程序系统。 2、可重定位装入 编译程序所生成的目标模块中采用逻辑地址,而地址映射是在装入模块装入内存时一次性进行的,即采用静态重定位。 装入时完成,主要工作是对相对地址中的指令和数据地址的调整过程,例:图4-2 优点:不需硬件支持,可以装入有限多道程序。 ?缺点:一个程序通常需要占用连续的内存空间,程序装入内存后不能移动。不易实现共享。 3.动态运行时装入 将装入模块原样装入内存,而地址映射工作推迟到程序真正执行时才进行,即采用动态重定位。 ?优点: OS可以将一个程序分散存放于不连续的内存空间,可以移动程序,有利用实现共享。 能够支持程序执行中产生的地址引用,如指针变量(而不仅是生成可执行文件时的地址引用)。 ?缺点: 需要硬件支持,OS实现较复杂。 4.2.2 程序的链接 1、静态链接 a.对相对地址的修改 b.变换外部调用符号 2、装入时动态链接 a.便于修改和更新 b.便于实现对目标模块的共享 3、运行时动态链接 执行时需要用到的模块才会被调入内存 加快程序的装入过程,节省大量的内存空间。 4.3连续分配方式 单一连续分配 用于单用户,单任务OS中 分区式分配 固定式 可变式(动态) 可重定位分区分配 4.3.1 单一连续分区 系统区 用户区 存贮保护 一般不设置保护也可以,因单任务。 4.3.2 固定分区 特点:有n个分区,则可同时装入n个作业/任务。 一、分区大小: 相等: 不相等:不相等利用率更高。 二、内存分配: 数据结构 将分区按大小排序,并将其地址、分配标识作记录 例:dos的MCB(memory control block) 三、特点: 简单,分区大小固定,造成存储空间的浪费 图4-4a 分区说明表 4.3.3 可变式分区(比固定式分区有改善) 一、数据结构 1.空闲分区表 2.空闲分区链 二、可变式分区分配算法 1.首次适应算法FF。 要求:分区按低址――高址链接 特点:找到第一个大小满足的分区,划分。这种方案的出发点是尽量减少查找时间,它实现简单。但低址内存使用频繁,有可能把大的空闲分区分割成许多小的分区,因此对大作业有利有弊。每次都从低址开始查找,增加了查找的开销。 2.循环首次适应算法。 从1中上次找到的空闲分区的下一个开始查找。 特点:空闲分区分布均匀,提高了查找速度;缺乏大的空闲分区。 3.最佳适应算法 要求:分区按大小递增形成空闲分区链。 特点:实行这种分配算法时,总是从当前所有空闲区中找出一个能够满足存储需求的、最小的空闲分区作为分配的对象。能保证大作业的需要。实现比较费时,麻烦。留下许多难以利用的小分区。 4.最坏适应算法 挑选最大的空闲分区, 优点:使剩下的空闲分区不至于太小,对中小作业有利,查找效率高。所有空闲分区按容量大小形成空闲分区链。 缺点:是存储器中缺乏大的分区 5.快速适应算法(分类搜索算法) 将空闲分区按容量大小进行分类,同类具有相同容量,并为其单独设立一个空闲分区链,因此系统中存在多个空闲分区链表,设立一张管理索引表,每个表项对应一类空闲分区。 三、可变式分区分配操作 1.分配:图4-6 2.回收:图4-7 (1)上邻空闲区:合并,无需分配新表项,只需修改大小 (2)下邻空闲区:合并,改大小,首址。 (3)上、下邻空闲区:合并,改大小。 (4)不邻接,则建立一新表项。根据首址插入到空闲链表的适当位置。 4.3.4 可重定位分区分配 1.动态重定位的引入 连续式分配中,总量大于作业大小的多个小分区不能容纳作业。 紧凑 通过作业移动将原来分散的小分区拼接成一个大分区。 作业的移动需重定位。是动态(因作业已经装入) 紧凑 2、动态重定位的实现 图4.10动态重
您可能关注的文档
最近下载
- 2025年山西中考历史试卷真题解读及答案讲解课件.pdf
- Unit 4 Amazing Plants and Animals Section A(Grammar Focus 3a-3c)课件 2025人教版英语八年级上册.ppt
- 2025年安徽省黄山市辅警(协警)招聘考试题库及答案.docx VIP
- 竞选班干部申请表.docx VIP
- 2025中级经济师《经济基础知识》三色笔记.pdf VIP
- 高浓及膏体充填新技术 中国恩菲工程技术.pptx VIP
- 《中华人民共和国劳动法》培训解读课件.pptx VIP
- 初中科学浙教版九年级上册 第2章《第1节 金属材料》第一课时金属与非金属 课件(共27张PPT).ppt VIP
- 鲁迅《伤逝》课件.pdf
- T_BEPIA 0002—2025(高压电力用户配电室智能化运维规范).pdf VIP
文档评论(0)