[发明专利]基于MTK平台的内存分配状况监控方法有效
申请号: | 201110180904.3 | 申请日: | 2011-06-30 |
公开(公告)号: | CN102289410A | 公开(公告)日: | 2011-12-21 |
发明(设计)人: | 王建 | 申请(专利权)人: | 杭州斯凯网络科技有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/06 |
代理公司: | 杭州杭诚专利事务所有限公司 33109 | 代理人: | 尉伟敏 |
地址: | 310000 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 mtk 平台 内存 分配 状况 监控 方法 | ||
技术领域
本发明涉及一种基于MTK平台的内存分配状况监控方法。
背景技术
在编程时进行内存分配是十分重要的,动态内存可以在程序运行过程中帮助分配所需的内存空间,而不是在进程启动的时间就进行分配,然后,有效地管理动态内存同样也是非常重要的,特别是在嵌入式等资源受限环境的软件开发过程中。
在利用C语言进行嵌入式程序开发过程中,常存在如下几个内存问题:
1、内存越界使用,即使用了不该使用的内存,当内存输入超出了预分配的空间大小,就会覆盖该空间之后的一段存储区域,导致系统异常;
2、内存碎片,以小而不连续方式出现在系统不同位置的所有不可用的空闲内存;
3、内存泄露,以前分配的一片内存不再需要使用或无法访问时,没有被释放掉,导致某一进程的总可用内存减少,应用程序失去了对分配内存的控制;
开发人员往往需要花费很大的施加和精力调试内存越界导致的死机问题、内存碎片导致的内存不足问题、或是内存泄漏导致的因可用内存数量减少而导致的设备性能降低的问题。
现有技术中,程序开发过程中的内存优化全部依靠打印等方式进行,不仅无法实时的显示当前的系统内存情况、应用内存情况,而且不够形象直观。
发明内容
本发明的目的在于克服现有技术中存在的问题,提出一种通过图形化的方式显示内存使用情况的基于MTK平台的内存分配状况监控方法。
为达到上述目的,本发明所采用的技术方案是:
一种基于MTK平台的内存分配状况监控方法,包括如下步骤:
(S001)获取系统整个内存块的起始地址、结束地址、内存总量;
(S002)获取所有空闲块的起始地址、结束地址;
(S003)绘制形成一个内存总量占空图,在内存图中,以第一颜色填充内存空闲块,以第二颜色填充内存占用块。
应用上述技术方案,可以直观的了解当前系统内存的使用量、剩余量、碎片分布情况,便于优化程序的内存管理;另外,在程序运行过程中,可以实时监控内存峰值情况,便于优化程序峰值内存;再者,采用实地址模式的程序编写过程中,经常出现内存越界造成的内存管理数据破坏,通过图形化的内存监控方法可以判断导致异常发生的原因及异常情况,例如,已申请内存无故变大、变小,剩余内存块异常变化等;最后,可以检测到内存泄漏的产生,如果剩余内存块在程序运行过程中持续减少,那很可能是程序中发生了内存泄漏。
上述技术方案还可以进一步优化:
作为优选,它还包括如下步骤:
(S004)用户指定一个内存占用块;
(S005)获取指定占用块的起始地址、结束地址、占用量;
(S006)获取指定占用块内的所有空闲块的起始地址、结束地址;
(S007)绘制形成一个第一级指定占用块的占空图。
作为优选,在指定占用块的占空图中,以第一颜色填充内存空闲块、以第二颜色填充内存占用块。
作为优选,它还包括如下步骤:
(S008)对一个第一级指定占用块的占空图重复执行步骤(S004)~(S007),获取一个第二级指定占用块的占空图;
(S009)对一个第n-1级指定占用块的占空图重复执行步骤(S004)~(S007),获取一个第n级指定占用块的占空图。
作为优选,它还进一步包括如下步骤:
(S0010)组合内存总量占空图、根据指定生成的一个第一级至第n级指定占用块的占空图,形成内存调试界面并显示。
作为优选,设定优先级最高的当前应用所在的内存占用块为默认的指定占用块。
作为优选,内存调试界面通过设定的快捷键呼出。
作为优选,它还包括如下步骤:
(S011)当运行的应用出现内存管理节点异常时,在内存调试界面显示错误信息。
由于上述技术方案的采用,本发明与现有技术相比,具有以下优点:
在MTK平台的终端开发中,通过图形的方式展现应用内存的分配情况,可以在程序运行的任意时刻通过快捷键呼出调试界面,在调试界面可以清晰的展示当前应用对系统内存总量的占用情况、空闲情况。采用本发明所提供的技术方案还可以根据用户指定获取某一运行应用的详细内存占空情况,进一步的,获取下一级或多级的内存占空情况。程序运行中,这种形象直观的实时内存占空情况获取方式,有助于帮助用户在开发过程中及时发现内存越界使用、内存碎片内存泄露等问题,及时对内存进行调试、优化。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州斯凯网络科技有限公司,未经杭州斯凯网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110180904.3/2.html,转载请声明来源钻瓜专利网。