[发明专利]一种内存管理方法及装置有效
申请号: | 201811121410.6 | 申请日: | 2018-09-28 |
公开(公告)号: | CN109522113B | 公开(公告)日: | 2020-12-18 |
发明(设计)人: | 张贤义;叶国洋 | 申请(专利权)人: | 迈普通信技术股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610041 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 管理 方法 装置 | ||
本发明实施例公开一种内存管理方法及装置,涉及数据通信领域,本发明通过对转发核上业务模块处理数据报文的内存需求进行预分配,避免了在进行报文处理过程中才进行内存申请,提高了报文转发效率。本发明中的转发核检测到为业务模块预分配的内存不足时按照一定比例进行扩容,使得业务模块能够依据实际需求进行内存分步占用,节省设备内存开销。该方法包括:控制核依据转发核上的业务模块的内存需求参数为所述业务模块预分配内存;当所述转发核检测到为所述业务模块预分配的内存中的内存剩余量小于设定的阈值时,触发控制核对预分配给所述业务模块的内存进行扩容。
技术领域
本发明属于数据通信领域,尤其涉及一种内存管理方法及装置。
背景技术
数据转发平台(Data Forwarding PlatForm,简称DFP)是运行于转发核上的负责报文转发处理的框架模块。在包含DFP框架模块的多核环境中,转发核负责数据转发,控制核进行资源的分配和回收。现有技术中使用内存延迟释放技术实现核间临界资源的无锁化来提高报文转发效率,而内存延迟释放技术必须依赖于每个转发核处理当前报文的最大时长是可控的。然而转发面的业务模块收到数据报文且需要分配内存时,由于操作系统现有的内存申请或释放接口可能会阻塞,如果转发面的业务模块线程因此而阻塞,则会影响内存延迟释放技术的实现,导致CPU可能访问已经释放的内存。为了解决该问题,目前有两种解决方案:一种解决方案是转发核通过核间消息队列,通知控制核分配内存,当前报文被丢弃;待控制核完成内存分配后,转发核在收到后续的重传报文时才能继续处理。另一种解决方案是转发核通过核间消息队列,将当前报文送给控制核,在控制核上进行报文的处理(包含内存分配)。但是该两种解决方案均会影响报文转发效率。
发明内容
本发明提供了一种内存管理方法及装置,用以解决现有的内存分配技术影响报文转发效率的问题。
为了达到上述目的,第一方面,本发明提供了一种内存管理方法,所述方法包括:
控制核依据转发核上的业务模块的内存需求参数为所述业务模块预分配内存;
当所述转发核检测到为所述业务模块预分配的内存中的内存剩余量小于设定的阈值时,触发控制核对预分配给所述业务模块的内存进行扩容。
第二方面,本发明提供了一种内存管理装置,所述装置包括控制核和至少一个转发核,
所述控制核,用于依据转发核上的业务模块的内存需求参数为所述业务模块预分配内存;
所述转发核,用于当检测到为所述业务模块预分配的内存中的内存剩余量小于设定的阈值时,触发控制核对预分配给所述业务模块的内存进行扩容。
本发明通过对转发核上业务模块处理数据报文的内存需求进行预分配,避免了在进行报文处理过程中才进行内存申请,提高了报文转发效率。本发明中的转发核检测到为业务模块预分配的内存不足时按照一定比例进行扩容,使得业务模块能够依据实际需求进行内存分步占用,节省设备内存开销。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种内存管理方法的方法流程图;
图2为本发明实施例内存池的结构示意图;
图3为应用本发明实施例所述方法的控制核与转发核的架构示意图;
图4为本发明实施例提供的一种内存管理装置的架构示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于迈普通信技术股份有限公司,未经迈普通信技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811121410.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据采集系统
- 下一篇:虚拟化框架的雷达数据高速通信处理模块