【技术实现步骤摘要】
本专利技术涉及计算机处理领域,尤其涉及一种内存管理方法及系统。
技术介绍
内存管理对于一个大型系统有着至关重要的影响,占用大量的内存和频繁的内存申请都会加重系统的负担,最终导致系统的运行效率下降。现有的内存管理基本原则为:减少向操作系统分配内存的次数,即一次申请多次利用。一般的方式采用一次性向操作系统分配一个大的内存,并准备两个链表;将此大内存划分为多个小内存块,所有的小内存块加入空闲链表,系统使用的时候从空闲链表中摘除,放入工作链表,使用完之后再次放回空闲链表;在对链表操作时,需要先上锁保护共享资源。当进行复杂运算、或数据处理时,系统仅以复杂运算的处理过程为整体,提供一个较大的内存空间,并利用链表方式维护所提供的内存空间,但却未能细化内存空间的使用,使得复杂运算过程中对该内存空间的管理不够精细,内存使用率低。
技术实现思路
本专利技术提供一种内存管理方法及系统,用于解决现有技术中复杂运算、或数据处理过程中未提供有针对性的内存管理的问题。为解决上述问题,本专利技术提供一种内存管理方法,包括:按照待处理语句中处理标识的处理次序优先级由低到高的顺序,将所述待处理语句逐级分解成多个子语句,其中,所述处理标识用于标识同级子语句之间的逻辑处理关系;将分解后的各级含有处理标识的子语句按照优先级保存在多个内存段中;根据处理标识的处理次序优先级由高到低的顺序,确定最高优先级为当前优先级;从当前 ...
【技术保护点】
一种内存管理方法,其特征在于,包括:按照待处理语句中处理标识的处理次序优先级由低到高的顺序,将所述待处理语句逐级分解成多个子语句,其中,所述处理标识用于标识同级子语句之间的逻辑处理关系;将分解后的各级含有处理标识的子语句按照优先级保存在多个内存段中;根据处理标识的处理次序优先级由高到低的顺序,确定最高优先级为当前优先级;从当前优先级对应的内存段中读取子语句,进行语句处理,获得处理结果,并将处理结果保存至下一优先级对应的内存段中;释放当前优先级对应的内存段;将下一优先级更新为当前优先级,并返回执行子语句的读取和处理操作,直至所述待处理语句处理完成。
【技术特征摘要】
1.一种内存管理方法,其特征在于,包括:
按照待处理语句中处理标识的处理次序优先级由低到高的顺序,将所述待
处理语句逐级分解成多个子语句,其中,所述处理标识用于标识同级子语句之
间的逻辑处理关系;
将分解后的各级含有处理标识的子语句按照优先级保存在多个内存段中;
根据处理标识的处理次序优先级由高到低的顺序,确定最高优先级为当前
优先级;
从当前优先级对应的内存段中读取子语句,进行语句处理,获得处理结果,
并将处理结果保存至下一优先级对应的内存段中;
释放当前优先级对应的内存段;
将下一优先级更新为当前优先级,并返回执行子语句的读取和处理操作,
直至所述待处理语句处理完成。
2.根据权利要求1所述的内存管理方法,其特征在于,所述待处理语句包
括:数据库语句和/或逻辑运算语句。
3.根据权利要求1所述的内存管理方法,其特征在于,将所述待处理语句
逐级分解成多个子语句之前,还包括:
按照待处理语句中的处理标识的优先级,将待处理语句中子语句和处理标
识基于二叉树结构进行设置。
4.根据权利要求1所述的内存管理方法,其特征在于:采用内存堆栈作为
各内存段。
5.根据权利要求1所述的内存管理方法,其特征在于,所述将分解后的各
级含有处理标识的子语句按照优先级保存在多个内存段中包括:
将分解后同一优先级的多个处理标识,以及所连接的子语句保存在同一内
\t存段中。
6.根据权利要求1所述的内存管理方法,其特征在于,所述内存段包括:
工作区域和输出区域;则从当前优先级对应的内存段中读取包含处理标识的子
语句,进行语句处理,获得处理结果,并将处理结果保存至下一优先级对应的
内存段中包括:
从当前优先级对应的内存段的工作区域中读取包含处理标识的子语句,进
行语句处理,获得处理结果;
将所述处理结果保存在当前优先级对应的内存段的输出区域中,并传递至
下一优先级对应的内存段的工作区域中。
7.根据权利要求5或6所述的内存管理方法,其特征在于,所述从当前
优先级对应的内存段中读取包含处理标识的子语句,进行语句处理,获得处理
结果,并将处理结果保...
【专利技术属性】
技术研发人员:宋鑫,张钦,朱仲颖,
申请(专利权)人:上海达梦数据库有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。