发明名称 快速定位错误源头的内存管理方法
摘要 本发明提供一种快速定位错误源头的内存管理方法,从内存单元中预分配出部分内存作为静态内存,其余内存均为用于动态分配的内存;将所述静态内存划分为复数个静态管理块;通过内存分配登记步骤、执行内存变更步骤以及内存释放步骤实现,极大地节约了开发过程中的关于动态内存的除错时间,同时大幅提高产品在这方面的稳定性和可靠性。
申请公布号 CN102981919A 申请公布日期 2013.03.20
申请号 CN201210436150.8 申请日期 2012.11.02
申请人 福建升腾资讯有限公司 发明人 翁俊峰;张登峰;余杭军
分类号 G06F11/07(2006.01)I 主分类号 G06F11/07(2006.01)I
代理机构 福州市鼓楼区京华专利事务所(普通合伙) 35212 代理人 宋连梅
主权项 快速定位错误源头的内存管理方法,其特征在于:所述内存管理方法适用于基于C语言的嵌入式软件,首先从内存单元中预分配出部分内存作为静态内存,其余内存均为用于动态分配的内存;其次,将所述静态内存划分为复数个静态管理块;当动态分配新的内存时,执行内存分配登记步骤;当已分配的内存大小发生变化时,执行内存变更步骤;当已分配的内存需要释放时,执行内存释放步骤;所述内存分配登记步骤具体为:步骤1、查找未使用的静态管理块,若找到,执行步骤2,若未找到,输出错误信息并等待开发人员快速分析定位错误;步骤2、动态分配内存,若分配成功,将被分配的内存的首地址和内存大小记录到所述静态管理块,并将该静态管理块标记为已使用;若分配不成功,输出错误信息并等待开发人员快速分析定位错误;若需要多次动态分配内存,重复执行步骤1和步骤2;所述内存变更步骤具体为:步骤3、根据将要发生变更的内存的首地址从所述静态内存中搜索出该首地址对应的静态管理块;搜索到,执行步骤4,未搜索到,输出错误信息并等待;步骤4、若变更后的内存大小比原来大,则重新动态分配内存,若分配成功,则将重新分配的内存的新首地址以及内存大小更新至所述静态管理块,若分配不成功,输出错误信息并等待开发人员快速分析定位错误;若变更后的内存大小比原来小,则直接把变更后的内存大小直接更新所述静态管理块中;所述内存释放步骤具体为:步骤5、根据需要释放的内存的首地址从所述静态内存中搜索出该首地址对应的静态管理块,释放该内存,并将该静态管理块标记为未使用;若未 搜索到,输出错误信息并等待开发人员快速分析定位错误。
地址 350000 福建省福州市仓山区金山工业区金山大道618号21#、22#、55#