预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN112286681A(43)申请公布日2021.01.29(21)申请号202011159331.1(22)申请日2020.10.26(71)申请人苏州浪潮智能科技有限公司地址215100江苏省苏州市吴中区吴中经济开发区郭巷街道官浦路1号9幢(72)发明人吴庆凯(74)专利代理机构济南诚智商标专利事务所有限公司37105代理人王申雨(51)Int.Cl.G06F9/50(2006.01)G06F12/02(2006.01)权利要求书1页说明书4页附图2页(54)发明名称一种内存分配管理方法、系统、设备及存储介质(57)摘要本发明公开了一种内存分配管理方法、系统、设备及存储介质。所述方法包括:系统启动,存储控制器申请内存,并将申请到的内存设置为不可回收状态;根据存储控制器数据处理的阶段将申请到的内存划分为多个内存池,每个内存池对应数据处理的一个阶段;根据各个内存池中内存使用情况,动态调节每个内存池的大小。所述系统包括内存申请模块、内存划分模块和内存管理模块。本发明在根本上杜绝了用于处理IO的内存被操作系统收回,避免了内存回收可能造成的IO响应延迟和IO处理速度下降,也避免了存储故障后,由于监控模块不能及时收集有效信息而导致的故障无法恢复的风险,保证了存储故障时数据恢复信息的收集。CN112286681ACN112286681A权利要求书1/1页1.一种内存分配管理方法,其特征在于,包括:系统启动,存储控制器申请内存,并将申请到的内存设置为不可回收状态;根据存储控制器数据处理的阶段将申请到的内存划分为多个内存池,每个内存池对应数据处理的一个阶段;根据各个内存池中内存使用情况,动态调节每个内存池的大小。2.根据权利要求1所述的内存分配管理方法,其特征在于,所述根据存储控制器数据处理的阶段将申请到的内存划分为多个内存池,每个内存池对应数据处理的一个阶段,包括:根据各个数据处理阶段对内存需求量的经验值,分配每个内存池的初始容量。3.根据权利要求1所述的内存分配管理方法,其特征在于,所述方法还包括:写入数据时,当前数据处理阶段处理完成,若后一数据处理阶段运行空闲,则开放后一数据处理阶段对当前数据处理阶段内存池的访问权限;若后一数据处理阶段繁忙,则将数据由当前数据处理阶段内存池转存入后一数据处理阶段内存池,释放当前数据处理阶段内存池。4.根据权利要求1所述的内存分配管理方法,其特征在于,所述方法还包括:读取数据时,当前数据处理阶段处理完成,若后一数据处理阶段运行空闲,则开放后一数据处理阶段对当前数据处理阶段内存池的访问权限;若后一数据处理阶段繁忙,则将数据由当前数据处理阶段内存池转存入后一数据处理阶段内存池,释放当前数据处理阶段内存池。5.根据权利要求1所述的内存分配管理方法,其特征在于,所述内存池以内存页的方式管理。6.根据权利要求1所述的内存分配管理方法,其特征在于,所述根据各个内存池中内存使用情况,动态调节每个内存池的大小,包括:定期评估各数据处理阶段内存池中内存的使用情况,根据各内存池中已使用与未使用的内存比例,增减调节内存池的容量。7.根据权利要求1所述的内存分配管理方法,其特征在于,所述数据处理的阶段包括:前端接口层阶段、缓存阶段、存储池阶段、磁盘阵列阶段和后端接口层阶段。8.一种内存分配管理系统,其特征在于,包括:内存申请模块,用于在系统启动时,存储控制器申请内存,并将申请到的内存设置为不可回收状态;内存划分模块,用于根据存储控制器数据处理的阶段将申请到的内存划分为多个内存池,每个内存池对应数据处理的一个阶段;内存管理模块,用于根据各个内存池中内存使用情况,动态调节每个内存池的大小。9.一种内存分配管理的设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述内存分配管理方法的步骤。10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述内存分配管理方法的步骤。2CN112286681A说明书1/4页一种内存分配管理方法、系统、设备及存储介质技术领域[0001]本发明涉及存储设备内存优化领域,具体涉及一种内存分配管理方法、系统、设备及存储介质。背景技术[0002]存储控制器主要用于存储端的硬盘及其上存储数据的管理,同时对服务器端提供数据访问服务。在对服务器端提供数据访问的过程中,由于短时间内处理的输入/输出(Input/Output,IO)数量巨大,存储控制器中的内存会被大量消耗,而当系统内存压力较大时,操作系统(OperatingSystem,OS)会遍历系统中各进程的使用情况,并回收一部分内存,同时将内存中的数据通过某种算法