[发明专利]嵌入式系统多类内存管理方法及装置无效
| 申请号: | 201010188721.1 | 申请日: | 2010-05-31 |
| 公开(公告)号: | CN101901191A | 公开(公告)日: | 2010-12-01 |
| 发明(设计)人: | 徐佳宏;程伯钦;连重明 | 申请(专利权)人: | 深圳市茁壮网络股份有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 彭愿洁;李文红 |
| 地址: | 518002 广东省深圳市罗湖区沿河*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 嵌入式 系统 内存 管理 方法 装置 | ||
技术领域
本发明涉及内存管理技术领域,更具体地说,涉及一种嵌入式系统多类内存管理方法及装置。
背景技术
在嵌入式系统比如数字电视嵌入式浏览器中,通常会有很多模块,这些模块因其数据形式不同,为了更加有效使用内存,减少内存碎片,对内存分配和存取策略、以及内存使用和释放方式都是不同的。
在这种情况下,在需要传递和共享数据时,模块间需要相互了解其内存特性及使用方式,从而使得模块间的数据共享和传递会变得异常繁琐,不仅会导致程序结构繁琐,难以修改且难以添加新的内存使用方式,而且也容易出现修改一个地方代码忽略另外一个地方代码的情况,降低程序的可读性,引入更多的缺陷,增加了系统的不稳定性。
因此,为了能方便地进行模块间的通信、模块间传递数据、同时降低模块耦合性,采用一种统一的内存表现形式同时又可以保证各个模块内存分配策略需求,最大化地有效利用内存,就显得非常重要。
发明内容
本发明实施例提供一种嵌入式系统多类内存管理方法及装置,提高嵌入式系统中多类内存的使用效率,减少内存碎片,进而方便进行不同模块间的通信及数据传递,提高系统的可靠性和稳定性。
为此,本发明实施例提供如下技术方案:
一种嵌入式系统多类内存管理方法,包括:
应用模块需要将数据流写入内存时,建立数据流管理器并设置对应的内存分配策略;
所述应用模块将所述数据流传送给数据流管理器;
所述数据流管理器按照所述内存分配策略为所述数据流分配内存,并将所述数据流写入分配的内存中。
可选地,所述内存分配策略包括以下任意一项或多项策略:图片内存分配策略、字库内存分配策略、页面内存分配策略、通用内存分配策略。
可选地,所述方法还包括以下任意一个或多个步骤:
所述数据流管理器从当前读数据指针位置读取所需长度的数据返回给应用模块,并将读数据指针移到相应位置;
所述数据流管理器从当前读数据指针位置读取所需长度的数据返回给应用模块,并保持读数据指针位置不变;
所述数据流管理器向应用模块返回当前的读数据指针位置和当前的写数据指针位置;
所述数据流管理器将所述内存中的数据流保存到文件;
所述数据流管理器将所述内存中的数据流复制到所述内存中的其他位置;
所述数据流管理器建立对应所述内存中的数据流的其他数据流管理器;
所述数据流管理器删除所述数据流管理器分配的内存中的所有数据。
可选地,所述方法还包括:
所述应用模块在将所述数据流写入数据流管理器之后,将所述数据流管理器传送给目标模块,以使所述目标模块通过所述数据流管理器的各接口对所述内存中的数据进行操作。
可选地,所述方法还包括:
当不需要再使用所述数据流管理器时,删除所述数据流管理器,并释放所述数据流管理器分配的所有内存资源。
一种嵌入式系统多类内存管理装置,包括:至少一个应用模块和所述应用模块建立的数据流管理器;
所述应用模块包括:
建立单元,用于需要将数据流写入内存时,建立数据流管理器并设置对应的内存分配策略;
写入单元,用于将所述数据流传送给数据流管理器;
所述数据流管理器包括:写数据接口,用于按照所述内存分配策略为所述数据流分配内存,并将所述数据流写入分配的内存中。
可选地,所述内存分配策略包括以下任意一项或多项:图片内存分配策略、字库内存分配策略、页面内存分配策略、通用内存分配策略。
可选地,所述数据流管理器还包括以下任意一个或多个接口:
读数据接口,用于从当前读数据指针位置读取所需长度的数据返回给所述应用模块,并将读数据指针移到相应位置;
预读数据接口,用于从当前读数据指针位置读取所需长度的数据返回给所述应用模块,并保持读数据指针位置不变;
指针位置获取接口,用于向所述应用模块返回当前的读数据指针位置和当前的写数据指针位置;
指针位置设置接口,用于将当前读数据指针的位置和当前写数据指针的位置移动到所述应用模块设置的位置;
文件保存接口,用于将所述内存中的数据流保存到文件中;
复制接口,用于将所述内存中的数据流复制到所述内存中的其他位置;
克隆接口,用于建立对应所述内存中的数据流的其他数据流管理器;
复位接口,用于删除所述数据流管理器分配的内存中的所有数据;
所述应用模块还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市茁壮网络股份有限公司,未经深圳市茁壮网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010188721.1/2.html,转载请声明来源钻瓜专利网。





