连续分配存储的四种管理方式

连续分配方式指为一个用户程序分配给一个连续的内存空间

单一连续分配

原理:将内存分为用户区和系统区,每次运行时,都将整个用户区分配给当前执行的一道作业

固定分区分配

原理:将用户区分为若干个区域(两种方法:大小相等/分区大小不等),每个分区只执行一道作业,当该分区的作业执行完毕后则可从外存的后备队列种继续调入该分区
实现:为了便于内存的分配,系统会将分区按照大小进行排队,并且建立一张分区使用表,表中包括了各个分区的起始地址、大小、以及分配与否的状态
容易产生内碎片

动态分区分配

原理:根据进程的实际需要,动态的为之分配内存空间,作业装入内存时,把可用内存分出一个连续区域给作业,且分区的大小正好适合作业大小的需要,分区的大小和个数依装入作业的需要而定
实现
  1. 分区分配中的数据结构
    设置了两个表,一个为空闲分区表,另一个为空闲分区表
    因为数组的存储是顺序的,所以当表很长时,需要使用的连续内存空间就会很大,所以使用空闲链结构(两个指针域分别指向前一个后后一个,两个数据域分别存储分区大小和开始地址)
  2. 分区分配算法
    常用的分区分配算法
    a.首次适应算法FF

    b.循环首次适应算法

    c.最佳适应算法
  3. 分区分配及回收操作
    在进行分区分配的时候,系统会有两个表分别记录着已经分配和未分配的分区的编号、大小、开始地址、分区大小、分配情况等信息,在分配的时候采用某一种分配方法,将内存分配出去。
    回收时要根据具体情况,来进行资源的回收,如果释放的内存区域能够和前面或者后面一个程序结合起来,则将内存区域合并成一个新得更大的内存区域,如果没有可以合并的单独建立表项进行记录即可。
    动态分区分配容易产生内碎片

可重定位分区分配

可重定位的分区分配方式是在动态装入的基础上进行的,当程序采用了动态分区分配方式装入后,在程序执行的期间,在对每条指令访问时进行的地址变换。
其实动态分区分配方式与可重定位方式类似,只不过可重定位方式 增加了紧凑功能。

连续分配存储的四种管理方式相关推荐

  1. 利克特的四种管理方式(转载)

    利克特的四种管理方式 利克特的四种管理方式简介 密执安大学伦西斯·利克特(Rensis Likert)教授和他的同事对领导人员和经理人员的领导类型和作风做了长达30年之久的研究,利克特在研究过程中所形 ...

  2. 【IOS-COCOS2D游戏开发之十九】游戏数据存储的四种常用方式NSKEYEDARCHIVER/NSUSERDEFAULTS/WRITE写入/SQLITE3...

    本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2d/513.html ...

  3. 数据存储的四种常见方式

    作者将本文同时发布到:EMC中文支持论坛 https://community.emc.com/docs/DOC-26345 介绍 常见的数据存储方式有四种:在线存储.近线存储.脱机存储和站外保护.不同 ...

  4. 计算机存储密码的方式,关于数据加密存储的四种途径【图解】

    现如今,我们经常会提到一个词,那便是人权,而在咱们的众多人权之中,隐私又是咱们最为重视的一个部分.如何保护自己的隐私?就现在大部分人的习惯来看,越来越多的朋友倾向于使用电脑.硬盘来存储自己比较重要的数 ...

  5. Java的四种引用方式

    Java的四种引用方式 java内存管理分为内存分配和内存回收,都不需要程序员负责,垃圾回收的机制主要是看对象是否有引用指向该对象. java对象的引用包括   强引用,软引用,弱引用,虚引用 Jav ...

  6. 数据库mysql加密存储_数据库数据加密存储框架四种途径

    原标题:"关于数据加密存储的四种途径[图解]"最新电脑设置知识经验分享. - 来源:191路由网 - 编辑:小王. 现如今,我们经常会提到一个词,那便是人权,而在咱们的众多人权之中 ...

  7. 华人科学家发现第四种传热方式!真空声子传热将改写物理教科书

    早在上中学时,我们就知道传热一共有三种方式,热传导.热对流.热辐射.如今,这一教科书上的知识要被改写了. 近期,一篇发表在<自然>杂志上的论文让不少传热学.物理学.量子力学等领域的科学家们 ...

  8. 【读MFiX源代码】MFiX中四种传热方式全面详解(对流、导热、辐射、反应热)并且输出以供后处理(2020-12-15更新)

    文章目录 1 目标 2 代码结构 2.1 des_time_step外层总控制 2.2 颗粒导热 2.2.1 颗粒-颗粒导热:calc_force_dem.f和des_thermo_cond_mod. ...

  9. OAuth2.0的四种授权方式

    在OAuth2.0中,OAuth2.0 provider负责保护暴露在外的资源,第三方应用客户端Client可以独立的或代表用户Owner来访问这些受保护的资源,provider提供token令牌的管 ...

最新文章

  1. SAMBA服务器应用
  2. 顶级项目管理工具 Top 10
  3. 一个快速、高效的Levenshtein算法实现
  4. 使用.NET Core 2.1的Azure WebJobs
  5. python常用函数使用方法实例
  6. Python案例:打印杨辉三角形
  7. MySQL(25)---- ALTER命令
  8. delphi与java_Delphi XE8中Delphi和JAVA数据类型对应关系!
  9. 使用doctrine的内存耗尽解决办法
  10. [Python从零到壹] 三十四.OpenCV入门详解——显示读取修改及保存图像
  11. 收藏一些名人的博客,有空多看看
  12. CorelDRAW常用工具之橡皮擦工具
  13. redis-trib功能实现详解(转)
  14. python: base64 解码出现:Incorrect padding错误
  15. Android api升级到31 导致的兼容性问题
  16. 无敌python爬虫教程学习笔记(一)
  17. 上传截断_文件上传路径截断实例
  18. 乔布斯那些经典的激励我们的语录
  19. 汽车覆盖件冲压模具铸造工艺研究
  20. python之NetworkX的使用

热门文章

  1. python爬虫:批量刷新网页
  2. 用c语言写个简单的电话薄
  3. 在VS Code中调试nasm,使用golink连接
  4. 7系列FPGA数据手册:概述------中文翻译版
  5. 微信小程序checkbox的全选以及所有checkbox选中之后的全选
  6. 幸运数字c语言编程软件,幸运数 (C++代码)
  7. 蓝牙音频芯片,在交通灯提示语音更换的应用解析,WT2605X
  8. Day001--Scala中的下载安装配置及下载安装集成开发环境IDEA
  9. 云计算技术文章的创作心得
  10. 为什么MySql每晚12点都会弹出这个?