[发明专利]内存管理方法及系统有效
| 申请号: | 201610073294.X | 申请日: | 2016-02-02 |
| 公开(公告)号: | CN105786616B | 公开(公告)日: | 2019-03-12 |
| 发明(设计)人: | 宋鑫;张钦;朱仲颖 | 申请(专利权)人: | 上海达梦数据库有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆;胡彬 |
| 地址: | 201203 上海*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内存 管理 方法 系统 | ||
1.一种内存管理方法,其特征在于,包括:
按照待处理语句中处理标识的处理次序优先级由低到高的顺序,将所述待处理语句逐级分解成多个子语句,其中,所述处理标识用于标识同级子语句之间的逻辑处理关系;
将分解后的各级含有处理标识的子语句按照优先级保存在多个内存段中;
根据处理标识的处理次序优先级由高到低的顺序,确定最高优先级为当前优先级;
从当前优先级对应的内存段中读取子语句,进行语句处理,获得处理结果,并将处理结果保存至下一优先级对应的内存段中;
释放当前优先级对应的内存段;
将下一优先级更新为当前优先级,并返回执行子语句的读取和处理操作,直至所述待处理语句处理完成。
2.根据权利要求1所述的内存管理方法,其特征在于,所述待处理语句包括:数据库语句和/或逻辑运算语句。
3.根据权利要求1所述的内存管理方法,其特征在于,将所述待处理语句逐级分解成多个子语句之前,还包括:
按照待处理语句中的处理标识的优先级,将待处理语句中子语句和处理标识基于二叉树结构进行设置。
4.根据权利要求1所述的内存管理方法,其特征在于:采用内存堆栈作为各内存段。
5.根据权利要求1所述的内存管理方法,其特征在于,所述将分解后的各级含有处理标识的子语句按照优先级保存在多个内存段中包括:
将分解后同一优先级的多个处理标识,以及所连接的子语句保存在同一内存段中。
6.根据权利要求1所述的内存管理方法,其特征在于,所述内存段包括:工作区域和输出区域;则从当前优先级对应的内存段中读取包含处理标识的子语句,进行语句处理,获得处理结果,并将处理结果保存至下一优先级对应的内存段中包括:
从当前优先级对应的内存段的工作区域中读取包含处理标识的子语句,进行语句处理,获得处理结果;
将所述处理结果保存在当前优先级对应的内存段的输出区域中,并传递至下一优先级对应的内存段的工作区域中。
7.根据权利要求5或6所述的内存管理方法,其特征在于,所述从当前优先级对应的内存段中读取包含处理标识的子语句,进行语句处理,获得处理结果,并将处理结果保存至下一优先级对应的内存段中包括:
从当前优先级对应的内存段中读取由多个处理标识连接的子语句;
判断所述子语句的多种处理方式中是否有符合存储在预先单独开辟的内存段中的优选处理方式;
若是,则按照所符合的优选方式,来进行语句处理,获得处理结果;
若否,则组合所述子语句的处理方式,并按照各处理方式分别进行语句处理;统计各处理方式的处理性能,并将优选的处理方式保存在所述预先单独开辟的内存段中。
8.根据权利要求7所述的内存管理方法,其特征在于,所述内存段中包含临时区域,则所述组合子语句的处理方式,并按照各处理方式分别进行语句处理包括:
若至少两个处理方式中包含相同处理部分,则将所述相同处理部分进行处理,获得临时处理结果并保存在所述临时区域中;
利用所述临时区域中的各临时处理结果和所对应的各处理方式,分别进行语句处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610073294.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于redis与RDMA技术的调度平台
- 下一篇:应用打开方法及系统





