- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于线段树高效内存管理算法及其空间优化
基于线段树高效内存管理算法及其空间优化
摘要:现有的内存管理的工作多集中在内存分配的效率上,实时性较好,但易产生内存碎片。为此,提出基于线段树的高效内存管理方法。该方法将内存地址空间划分为内存段,建立内存管理线段树,基于所建立的内存管理线段树,进行高效灵活的内存分配和回收管理,减少了内存碎片的产生。另外,针对线段树空间开销大的问题,提出了线段树空间优化的方法。实验结果表明,所提出的内存管理方法,具有效率高、产生的内存碎片少、内存管理空间开销小等优势。
关键词:内存管理;线段树;空间优化;内存分配;内存回收;延迟更新;二叉树
中图分类号: TP316
文献标志码:A
Abstract:
Most existing works on memory management focus on the efficiency, which are realtime, but have memory fragmentation problems. To address the problem, an efficient memory management algorithm based on segment tree was proposed. The proposed method built a memory management segment tree by dividing memory space into segments, and allocated and reclaimed memory efficiently and flexibly based on the memory management segment tree to reduce the memory fragmentation. Furthermore, a method was proposed to optimize the space complexity of segment trees. The experimental results show that the proposed method has advantages in terms of efficiency, memory fragmentation, storage space, and so on.
英文关键词Key words:
memory management; segment tree; space optimization; memory allocation; memory reclaim; deferred update; binary tree
0引言
随着计算机系统性能的不断提高,高效的内存管理变得越来越重要。高效的内存管理应具备以下特征[1-3]:1)高效的内存分配和回收策略;2)较高内存的利用率,产生的碎片少;3)较低的内存管理开销。对内存管理方法的研究已经有50多年的历史,研究的着眼点是如何提高以上3个方面的性能。
可变式分区管理[4]是对固定式内存管理的改进,是目前有影响的内存管理方式,其分区大小、分配分区的个数及位置不是预先固定的,而是按作业需求量来划分的;它克服了固定分区方式由于分区内部剩余内存空置造成浪费。但该方法易产生外部碎片,而且该方法将可用内存分区以线性表的形式管理,内存的回收和分配时间复杂度较大。为了解决可变式分区管理产生的外部碎片问题,Linux系统采用伙伴算法来管理空闲的内存页框(内存块)。页框是伙伴算法内存分配和回收的内存最小单位,伙伴算法把空闲的内存块按包含的页框数组织成11个链表,分别管理大小为20,21,…,210个连续页框组成的内存块[5]。内存的分配和回收均在这11个链表上进行。伙伴系统算法相对于可变式分区管理方法,内存分配和回收的效率提高了,但不足是:1)该算法按照2 的幂次来分配内存块,即若按照略大于2 的幂次来申请内存,存在内存浪费的现象。2)仍然存在外部碎片问题。例如,两个相邻的非伙伴内存块即使能满足进程的内存要求,伙伴系统也不会把它们连起来分配给进程。3)伙伴算法涉及了较多的链表和位图的操作,存在一定的空间开销。为此,郑晓曦等[6]提出了一种改进的伙伴算法,其思想是内存分配时,如果空闲内存与申请内存的差值小于阈值,则全部分配给进程;否则将空闲内存继续分割,直到满足条件为止。该方法提高了内存的利用率,但执行效率有所下降。Demaine等[7]提出了一种高效的伙伴算法,但该方法需要额外的内存开销。胡滨等[8]提出了基于二叉树内存管理方法,二叉树的节点中记录内存分区的起始地址,以及该节点左右子树中的最大分区。当需要插入一个新的内存分区时,首先检查树中是否存
您可能关注的文档
最近下载
- 水土保持监督管理培训课件.pptx VIP
- 输变电工程环境保护和水土保持全过程管控培训课件.pptx VIP
- 生产建设项目水土保持方案管理办法培训课件.pptx VIP
- 培训课件_1411dxs小天鹅纯臻2.0新品1411DXS系列.pdf VIP
- 2022年内蒙古农业大学硕士研究生入学考试公共管理专业综合基础考研真题.pdf VIP
- 郑州市第七高级中学2024-2025学年高一上学期第一次月考物理试卷.docx VIP
- 《民族音乐鉴赏方法:音乐鉴赏课教学教案》.doc VIP
- 《中国传统民族音乐赏析:音乐鉴赏课程教案》.doc VIP
- 水果店的创业计划书.docx VIP
- 一种模块式双向卡瓦锚定机构.pdf VIP
文档评论(0)