看完了《操作系统》后,感觉还是存储管理最重要。存储管理的方案有很多种,先简单的总结下早期的存储管理方式。
1.单一连续分配
优点:方法简单,易于实现。
缺点:仅适用于单道程序设计,不能使处理剂和贮存得到充分利用
2.分区分配
(1)固定分区法:系统生成时,将主存划分为若干那个分区,每个分区大小可以不等,但事先必须固定,以后不能改变
缺点:有内碎片,内存浪费
(2)可变分区:系统为了管理主存分区分配情况,需建立2张表,分别记录已分配和未分配区域的容量,位置和状态信息
*** 空白区域的分配算法:
i.最佳适应算法: 空白区域中按容量递增方式排序,当要求分配一个空白区时,从小到大查找, 即x1 <= x2 <= x3 <= x4 <= ... <= xn 当s <= xi 时,从xi中分配s,若 分配后有剩余,将剩余的空白区插入到合适位置,若xn仍不能满足要求分配失 败
优点:1.平均而言只要查找一般的表格便能够找到最佳的空白区。
2.若有一个空白区的容量刚好满足,则它必被选中
3.如果不存在恰好满足的空白区,则选中一个容量最接近的空白区,
而较大的空白区则可以以备后用
缺点:分配后造成的碎片很小,无法使用
ii.最差适应:空白区按容量递减派讯,即x1 >= x2 >= x3 >= ... >= xn ,若分配的容量是s
,并且x1 >= s ,则从x1里分配s,若有剩余,则将其插入到合适的位置;若x1<s
则分配失败
优点:只要比较s和x1即可
x1分配出去后,剩余的空白区仍然很大,仍可以使用
缺点:个空白区比较均匀的减少,工作一段时间后,不能满足大空白区的要求
iii.最先适应:空白区按照地址大小顺序递增排序,对于要求分配的分区s,从头开始比较,知道 找到xi >= s为止,若满足则分配,剩余部分保留位置不变
优点:在释放内存分区时,若有相邻空白区就合并,使其成为一个较大的空白 区,以后要使用较大空白区,较容易满足。
缺点:低地址区域集中了很多较小的空白区,因而在空白区的分配时搜索次数 增加了,影响效率
*********************************************
固定式分区和可变式分区的优点和缺点分析:
优点:利于多道程序设计
不受过多硬件限制,只需要地址寄存器,用于存储保护
算法简单
缺点:会产生碎片,降低存储器利用率
分区的大小受到了主存容量的限制,无法扩充主存容量
*********************************************
(3)可在定位式分区:移动所有分配了的分区,使之成为一个连续区域,而留下一个较大的空白区,将碎片统一使用, 优点:高了存储器的利用率,
缺点:需要硬件支持,成本很高,降低了计算速度,耗时
解决浮动问题:1.模块装入程序重新装入(耗时,一旦执行不能重新开始)
2.动态在定位
解决聚集靠拢时机:1.某分区内的作业一完成,就靠拢(频繁,耗时)
2.为某个作业请求一个分区时(较好)
(4)多重分区:给一个作业分配一个以上的分区(提高了利用率,但是需要很多硬件支持,管理复杂)
*********************
分区的优点:实现了主存共享
算法简单
实现存储保护的措施比较简单
多重分区实现了对子程序,数据段的共享
分区的缺点:主存仍不能使用
不能实现对主存的扩容
和单一连续分配一样,要求作业执行前,全部装入主存
采用靠拢方法,虽然解决了碎片,但是需要移动大量信息,损失了处理时间
除了多重分区外,几个共行作业间不能共享存入主存的单一信息副本(子程序,数据段)
*********************
分享到:
相关推荐
请求分页存储管理--课程设计报告和代码
day09-存储管理----
存储管理---动态分区分配算法的模拟 包含流程图 含有源代码 包含算法:首次适应,循环首次,最佳适应
试验三:存储管理----可变分区
存储管理---动态分区分配算法的模拟 .doc
内存的存储管理--段式和页式管理的区别 介绍连续分配存储管理、覆盖与交换技术以及页式与段式存储管理等基本概念和原理。
设计一个可变式分区分配的存储管理方案。并模拟实现分区的分配和回收过程。 对分区的管理法可以采用下面三种算法之一: 首次适应算法 循环首次适应算法 最佳适应算法 必须建立空闲区表和占用区表,回收算法...
操作系统-存储管理-cch09-1PPT课件.ppt
实验二-存储管理-操作系统实验报告.doc
佛山科学技术学院-操作系统-存储管理-实验报告.doc
佛山科学技术学院-操作系统-存储管理-实验报告.pdf
AIX设备与存储管理-学习笔记.pdf
第4章_存储管理-1.pptx
模拟页式存储管理-操作系统课程设计报告.pdf
模拟页式存储管理-操作系统课程设计报告 2.pdf
本程序实现操作系统实验 存储管理—动态分区管理 对内存为1024k的内存进行动态分区管理 程序在Dev-c++环境下调试通过
请参考本人上传课件-实验1- 可变分区存储管理
消防物资存储-消防物资存储系统-消防物资存储系统源码-消防物资存储管理系统-消防物资存储管理系统java代码-消防物资存储系统设计与实现-基于springboot的消防物资存储系统-基于Web的消防物资存储系统设计与实现-...
什么是成本管理 大数据成本管理架构 快手存储管理策略(现状及问题、成本分析、成本控制) 快手存储管理实施方法 专项数据治理 自驱式数据管理 全周期成本管理 全范围成本管理