[发明专利]一种动态管理应用程序内存的方法有效
申请号: | 201511018399.7 | 申请日: | 2015-12-29 |
公开(公告)号: | CN106933670B | 公开(公告)日: | 2022-01-25 |
发明(设计)人: | 张强 | 申请(专利权)人: | 航天信息股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京工信联合知识产权代理有限公司 11266 | 代理人: | 郭一斐 |
地址: | 100195 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态 管理 应用程序 内存 方法 | ||
本发明公开了一种动态管理应用程序内存的方法,通过为所述应用程序各功能模块分配最小内存配额,同时为所述应用程序分配动态内存,应用程序启动后,各功能模块获取各自的最小内存配额,当应用程序业务流程启动后,各功能模块从所述动态内存中申请附加内存;各功能模块完成自身业务流程后,释放从所述动态内存中申请的附加内存,回归动态内存,再次给其他有需求的模块使用。本发明确保了各模块在保证能够正常运行的情况下最大化利用所有的可用内存,提升内存的使用效率,通过对内存的动态管理,优化软件的运行效率。
技术领域
本发明属于计算机软件管理领域,具体涉及一种动态管理应用程序内存的方法。
背景技术
随着计算机技术的不断发展,各种应用程序也应运而生。而大量的应用程序在同一台电脑上应用,PC内存的管理及分配会影响到应用程序的运行速度及效率,电脑的内存如何在众多的应用程序间进行分配,以及同一个应用程序的各模块间如何合理的使用内存,则成为一个重中之重的问题。
现有技术中,大多采用内存池的方式管理内存。这种方式只针对整个软件的内存使用进行管理,在软件运行过程中无法有效控制各功能模块的内存使用,各模块会争抢可用内存,极端情况下会造成某些模块无内存可用及死锁的状况。还有一种内存管理方式,为各模块划分固定内存,这种方式在软件实际运行过程中会造成某些模块内存未使用,而另一些模块无内存可用的状况,实际内存使用效率较低。
发明内容
本发明实施例的目的是提供一种动态管理应用程序内存的方法,控制应用程序各模块内存使用量,并进行内存动态管理,使各模块在不影响其他模块正常运行的情况下最大化利用可分配内存,从而优化软件的运行效率。
根据本发明的一个方面,提供了一种动态管理应用程序内存的方法,所述方法包括:
为所述应用程序各功能模块分配最小内存配额,同时为所述应用程序分配动态内存;
应用程序启动后,各功能模块获取各自的最小内存配额;
应用程序业务流程启动后,各功能模块从所述动态内存中申请附加内存;
各功能模块完成自身业务流程后,释放从所述动态内存中申请的附加内存。
上述方案中,所述方法还包括:为所述应用程序分配最大可用内存,所述最大可用内存为所述各功能模块最小内存配额和应用程序动态内存之和。
上述方案中,所述应用程序业务流程启动后,各功能模块从所述动态内存中申请附加内存,进一步为:
所述各功能模块首先使用最小内存配额运行;
当业务增加时,各功能模块根据自身需要按预设算法计算附加内存;
当所述附加内存大于所述动态内存时,返回内存不足的提醒信息;
当所述附加内存小于所述动态内存时,申请附加内存,继续业务流程。
上述方案中,所述各功能模块根据自身需要按预设算法计算附加内存进一步为:
当各功能模块运行速率超过各自预设阈值时,启动附加内存算法,计算当前业务流程下所需的内存;
用所计算的所需内存,减去最小内存配额,得到附加内存。
上述方案中,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天信息股份有限公司,未经航天信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511018399.7/2.html,转载请声明来源钻瓜专利网。