[发明专利]嵌入式点对点下载系统的内存分配方法无效

专利信息
申请号: 200810304240.5 申请日: 2008-08-27
公开(公告)号: CN101354679A 公开(公告)日: 2009-01-28
发明(设计)人: 梁应龙;居文军;尤金刚;彭世伟;蔡琳 申请(专利权)人: 四川长虹电器股份有限公司
主分类号: G06F12/02 分类号: G06F12/02;H04L12/58
代理公司: 成都虹桥专利事务所 代理人: 李顺德
地址: 621000四川*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 嵌入式 点对点 下载 系统 内存 分配 方法
【说明书】:

技术领域

发明涉及到嵌入式技术领域以及网络下载技术领域,其中特别涉及到一种嵌入式点对点(BitTorrent,BT)下载系统的内存分配技术。

背景技术

随着信息技术的发展嵌入式技术也不断的发展壮大,嵌入式技术针对特有的应用而设计,具有功耗小,体积小和使用方便的特点。然而也正是由于这些特点限制了嵌入式系统的某些功能,比如嵌入式系统的处理器功能不够强大,嵌入式系统的内存资源比较小,从而限制了比较大型的较占内存资源的应用程序在其上的应用。

BT下载技术是超文本传输协议(Hyper Text Transfer Protocol,HTTP)下载技术和文件传输协议(File Transfer Protocol,FTP)下载技术之后出现的另一种网络资源共享技术。将BT下载应用于嵌入式系统中存在一些技术难点,比如BT下载技术需要占用比较大的内存开销和处理器资源,而嵌入式系统的内存资源很有限。另外,BT下载过程中需要不断地动态地向系统申请内存和释放内存资源,这样的内存操作会造成嵌入式系统产生较多的内存碎片。

发明内容

本发明所要解决的技术问题是,提出一种嵌入式BT下载系统的内存分配方法,能有效分配嵌入式系统中有限的内存资源,使BT下载这种较占内存资源的应用能在嵌入式系统中稳定运行;进一步的,还能降低内存碎片的产生。

本发明为解决上述技术问题所采用的技术方案是,嵌入式点对点下载系统的内存分配方法,下载系统为节点分配一段内存链表作为下载分配内存;所述内存链表指向下载系统中若干小块内存区域。

在所述节点使用过程中,下载系统将该节点标识为使用中状态;所述使用中状态表示其它节点无法复用该节点所对应的该段内存链表所指向的小块内存区域;在所述节点使用完毕后,下载系统将该节点标识为空闲状态;所述空闲状态表示其它节点可复用该节点所对应的该段内存链表所指向的小块内存区域。

具体包括以下步骤:

a、下载系统获得节点信息,并创建该节点为新节点;

b、下载系统遍历节点链表,查找是否有被标识为空闲状态的节点;若是,进入步骤c;若否,进入步骤d;

c、下载系统控制新节点复用查找到的空闲状态的节点所对应的一段内存链表所指向的小块内存区域,并重新标识所述空闲状态的节点为使用中状态;进入步骤e;

d、下载系统为新节点重新分配一段内存链表作为下载分配内存;并将所述新节点添加至节点链表,并标识该新节点为使用中状态;进入步骤e;

e、下载系统与新节点数据传输完毕,将该处于使用中状态的节点标识为空闲状态。

本发明的有益效果是,使用一连串小块的内存来代替一大块连续内存,解决了嵌入式系统内存资源有限,大块连续内存申请难度大,而BT下载需要较大的内存消耗的矛盾;进一步的,通过对已分配的内存资源复用,最大程度的降低了内存碎片的产生。

附图说明

图1为现有的BT下载系统中对节点的内存分配和释放流程图;

图2为本发明的内存分配方法流程图。

具体实施方式

本发明主要是要解决了现有技术的两大矛盾,矛盾一是嵌入式系统内存资源有限,而BT下载是需要较大的内存消耗,并有时需要向系统申请较大块连续内存区域;

矛盾二是嵌入式系统通存的问题,因而在进行嵌入式软件开发的时候需要特别留意,而BT下载应用对内存使用的特点使得内存碎片问题日益突出,如附图1所示是传统BT下载方法中Peer的内存分配和释放示意图,在传统的BT下载方法中,每一个Peer先后经历获取Peer、创建Peer、为Peer分配内存、传输数据、完成传输和释放内存等六个阶段,如此反复直到下载完成。通过下载系统不断的获取Peer,创建新Peer并为新Peer分配内存,最后释放Peer所占用内存,如此一直循环导致内存碎片产生,可供分配的较大块内存越来越少,最后导致大块内存分配失败,系统出现死机的严重后果。

本发明通过将大块连续内存化整为零,以一个内存链表来代替大块连续内存,内存链表指向下载系统中若干小块内存区域。因为大块连续内存可能申请不到,但是一连串小块的内存是可以分配到的,从而解决了上文提到的矛盾一。

本方法通过内存复用的方式来解决矛盾二。具体方法如下:

当新Peer创建时,系统为其分配内存,并将该Peer添加入一个Peer链表中,当该Peer使用完毕后其所占用的内存资源不被释放,而只是在Peer链表中标识该节点区域内存资源处于空闲状态;空闲状态表示其它节点可复用该节点所对应的该段内存链表所指向的小块内存区域。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200810304240.5/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top