一种内存块管理方法及系统技术方案

技术编号:15878619 阅读:63 留言:0更新日期:2017-07-25 16:36
本申请公开了一种内存块管理方法,包括:当目标节点保存至链表之前,利用目标节点的位置信息和历史节点的位置信息,判断目标节点是否与链表中已保存的历史节点相邻;若是,则将相邻的节点合并,得到合并节点,并保存至链表中。可见,本发明专利技术中,在保存目标节点前,利用目标节点中的位置信息和历史节点的位置信息,判断目标节点在链表中的保存位置是否与链表中的历史节点相邻,当判定相邻后,则将相邻的节点全部合并为一个节点,得到合并后的合并节点,并保存至链表中,从而减少了链表中的节点数量,实现了快速结束对链表的锁定,加快对申请和释放内存的处理速度,提高了系统的运行效率。另外,本申请还相应公开了一种内存块管理系统。

Memory block management method and system

The invention discloses a memory block management method, including: when the target node is saved to the list, using the location information and the history of the destination node, the adjacent node has saved history list and whether the target node; if, will merge the adjacent nodes, were consolidated and preserved to the node. In the list. Therefore, the invention, in the preservation of the target node, using location information and the destination node in history, determine the location of the target node in the list to save the history and whether the adjacent node in the linked list, when determining the adjacent, the adjacent nodes are merged into one node, by merging nodes after the merger, and save to the list, thereby reducing the number of nodes in the list, to achieve a rapid end lock on the list, to speed up the processing speed of the application and release the memory, improve the efficiency of the system. In addition, a memory block management system is correspondingly disclosed.

【技术实现步骤摘要】
一种内存块管理方法及系统
本专利技术涉及存储资源管理领域,特别涉及一种内存块管理方法及系统。
技术介绍
RDMA(RemoteDirectMemoryAccess,远程直接数据存取)是一种网卡技术,采用该技术可以通过提前注册到网卡的内存块,使一台计算机直接将信息放入另一台计算机的内存中。在ceph(分布式文件系统)集群中自建使用基于InfiniBand(无限带宽技术)的verbs接口封装底层RDMA通信架构时,需要考虑对通过函数注册内存块占用、释放的管理。基于InfiniBand的verbs接口封装底层通信架构,在客户端向服务端写数据的过程中,客户端需要先在自己注册内存中获取可用的内存,把要传输的数据写入到其中,再调用函数提交写任务,当数据被写入到服务端的注册内存中后,客户端通过函数可以获取到之前占用的内存信息,在合适的时机将其释放掉。一般情况下,程序在使用预分配的大块内存时,采用顺序遍历的方法,从头开始使用,当使用到结尾位置的时候,再从头开始循环。这种方法存在一些缺陷,比如如下场景:程序对内存的占用和释放是多线程且异步的,预分配的内存块比较大(500M),而每个节点对应的的内存较小本文档来自技高网...
一种内存块管理方法及系统

【技术保护点】
一种内存块管理方法,其特征在于,包括:当目标节点保存至链表之前,利用所述目标节点的位置信息和历史节点的位置信息,判断所述目标节点是否与所述链表中已保存的历史节点相邻;若是,则将相邻的节点合并,得到合并节点,并保存至所述链表中。

【技术特征摘要】
1.一种内存块管理方法,其特征在于,包括:当目标节点保存至链表之前,利用所述目标节点的位置信息和历史节点的位置信息,判断所述目标节点是否与所述链表中已保存的历史节点相邻;若是,则将相邻的节点合并,得到合并节点,并保存至所述链表中。2.根据权利要求1所述的内存块管理方法,其特征在于,所述利用所述目标节点的位置信息和历史节点的位置信息,判断所述目标节点是否与所述链表中已保存的历史节点相邻的过程,包括:从所述目标节点中获取位置信息,并对所述链表进行遍历,获取历史节点的位置信息,利用所述目标节点的位置信息和历史节点的位置信息,判断所述目标节点是否与历史节点相邻。3.根据权利要求2所述的内存块管理方法,其特征在于,所述位置信息,包括偏移位置和长度。4.根据权利要求1至3任一项所述的内存块管理方法,其特征在于,所述若是,则将相邻的节点合并,并保存至链表中的过程,包括:将所述目标节点与其相邻的历史节点合并,得到新节点,并保存至所述链表中;利用所述新节点的指针中的历史节点位置信息,判断所述新节点是否与...

【专利技术属性】
技术研发人员:刘杰
申请(专利权)人:广东浪潮大数据研究有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1