CN100456262C - 一种主动回收数据缓冲区的方法 - Google Patents

一种主动回收数据缓冲区的方法 Download PDF

Info

Publication number
CN100456262C
CN100456262C CNB2005100222169A CN200510022216A CN100456262C CN 100456262 C CN100456262 C CN 100456262C CN B2005100222169 A CNB2005100222169 A CN B2005100222169A CN 200510022216 A CN200510022216 A CN 200510022216A CN 100456262 C CN100456262 C CN 100456262C
Authority
CN
China
Prior art keywords
buffer
function
buffer zone
functional module
buffer area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005100222169A
Other languages
English (en)
Other versions
CN1979448A (zh
Inventor
刘洋
李本源
张晓东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Maipu Huaxin Information Technology Co., Ltd.
Original Assignee
MAIPU (SICHUAN) COMMUNICATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MAIPU (SICHUAN) COMMUNICATION TECHNOLOGY Co Ltd filed Critical MAIPU (SICHUAN) COMMUNICATION TECHNOLOGY Co Ltd
Priority to CNB2005100222169A priority Critical patent/CN100456262C/zh
Publication of CN1979448A publication Critical patent/CN1979448A/zh
Application granted granted Critical
Publication of CN100456262C publication Critical patent/CN100456262C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种主动回收数据缓冲区的方法,涉及网络通信技术,特别涉及数据通信系统中对缓冲区的回收处理技术。利用系统缓冲区池的统一管理函数,该管理函数一般包括系统缓冲区申请函数,增加系统缓冲区回收处理函数;当某一功能模块调用系统缓冲区申请函数,向系统缓冲区池申请可用的缓冲区失败时,利用系统缓冲区回收处理函数调用可以回收缓冲区的功能模块注册的缓冲区回收函数,回收到可用的缓冲区。本发明解决通信系统中因为可用缓冲区耗尽,功能模块无法申请到所需的缓冲区,导致数据处理停顿或者系统故障甚至崩溃的问题。

Description

一种主动回收数据缓冲区的方法
技术领域
本发明主要涉及网络通信领域,特别是数据通信系统中对缓冲区的回收处理技术。
背景技术
数据通信系统中,通常将用于临时存放待处理数据的内存区域叫做数据缓冲区,简称缓冲区。系统协议栈中的各种协议和功能模块,在进行数据处理之前,通常是把接收到的数据临时存放在其由数据缓冲区组成的缓冲区队列中。通信系统功能模块的缓冲区队列示意图参见图1,通信系统从外部接收来的数据,依次经过第一功能模块缓冲区队列21、第二功能模块缓冲区队列22、第三功能模块缓冲区队列23,并被以上三层功能模块处理完成后,再依次经过第四功能模块缓冲区队列24、第五功能模块的缓冲区队列25,在第四、第五功能模块完成对数据处理后,该通信系统完成了数据的整个处理过程,发送出去。各个功能模块缓冲区队列中的各个缓冲区11、12、13、14、15都是来自于通信系统的缓冲区池,系统缓冲区池示意图见图2,缓冲区池中的各个缓冲区空间大小一般是固定的,并且是有不同大小的。为存储空间考虑,所有缓冲区池中缓冲区的总数不会超过所有系统功能模块的队列长度的和。每个功能模块在处理任务时一般按照一定的空间大小要求申请缓冲区,因此,系统很难避免出现缓冲区池中可用大小的缓冲区被申请空的情况,即所有空间大小合适的缓冲区都在各个功能模块的缓冲队列中没有被释放,这时系统会因为当前功能模块不能申请到可用的缓冲区而不能继续数据处理操作,在这种情况下,当前功能模块的任务可能会长时间的挂起等待从而引起数据处理的停顿,引起正常业务的中断;或者因为反复多次申请不能成功出现错误,引起系统故障甚至崩溃。
发明内容
本发明要解决的技术问题就是克服现有技术中,当通信系统中某一功能模块申请不到所需的缓冲区时,可能导致数据处理停顿或者系统故障甚至崩溃的缺点,提出一种改变传统缓冲区申请处理过程,主动回收当前通信系统中被其它功能模块占用,但可以暂时释放掉的可用缓冲区以满足但前功能模块的需要,从而保证系统正常运行的解决方法。
本发明所采用的技术方案是:利用通信系统缓冲区池的统一管理函数,该管理函数一般包括系统缓冲区申请函数,本发明增加系统缓冲区回收处理函数;并且系统中各个可以回收数据缓冲区的功能模块首先要注册自己的缓冲区回收函数到系统,供以上所述的系统回收处理函数调用;缓冲区申请过程包括如下步骤:
a、功能模块从系统缓冲区池申请所需的缓冲区不成功,所述系统缓冲区的申请函数调用所述系统缓冲区回收处理函数;
b、所述系统缓冲区回收处理函数调用各功能模块注册的缓冲区回收函数;
c、所述功能模块判断并释放可以回收的缓冲区;
d、申请缓冲区的所述功能模块可以通过重新调用系统缓冲区申请函数申请被其它功能模块释放的合适缓冲区。
具体的说,以上步骤b所述系统缓冲区回收处理函数按照各功能模块注册回收函数的顺序进行缓冲区回收函数的调用。
当以上步骤c完成之后,被其它功能模块释放的缓冲区被放入缓冲池。
本发明的有益效果是:可以有效解决通信系统中因为可用缓冲区耗尽,功能模块无法申请到所需的缓冲区时,导致数据处理停顿或者系统故障甚至崩溃的问题。本发明可以使通信系统更加稳健可靠,提高了可用性。
附图说明
图1为通信系统中缓冲区队列示意图。
图2为系统缓冲区池示意图。
图3为本发明流程图。
附图中标记说明:
11、12、13、14、15缓冲区
21第一功能模块缓冲区队列
22第二功能模块缓冲区队列
23第三功能模块缓冲区队列
24第四功能模块缓冲区队列
25第五功能模块缓冲区队列
以下通过具体实施方式,对本发明作进一步的阐述。
具体实施方式
在本发明中,参见图3,在一个通信系统中,当某一功能模块任务需要使用缓冲区时,它首先调用系统缓冲区申请函数。系统缓冲区申请函数首先检查缓冲区池中是否有可用的空闲缓冲区,如果缓冲区池中没有合适的缓冲区,则调用系统缓冲区回收处理函数。系统缓冲区回收处理函数先从缓冲区回收函数表中取已经注册的协议模块缓冲区回收函数。在这里,我们可以考虑按照已经注册的有限的功能模块注册缓冲区回收函数的顺序规则,依次调用,一直到调用完所有注册的回收函数。在调用过程中,每个模块的缓冲区回收函数判断其缓冲区队列中哪些为空闲缓冲区并释放。所有被释放的缓冲区被系统缓冲区回收处理函数放回系统缓冲区池。需要缓冲区的功能模块利用缓冲区申请函数可以从系统缓冲区池中去取出被模块冲区函数释放的缓冲区。
当前知道的可以采取这样的机制暂时释放回收缓冲区的有TCP队列,IP队列,QOS队列,驱动队列,PPP协议队列,PPP多链路队列,帧中继协议队列,帧中继多链路队列等。无论是协议还是其它功能模块,只要是采用缓冲区缓存机制,可能出现可用缓冲区耗尽引起引起系统不能正常运行的某些功能模块的任务,均可以采用此办法解决。本专利的保护的是主动回收缓冲区的方法,不限于上面提到的功能模块。

Claims (3)

1、一种主动回收数据缓冲区的方法,该方法利用系统缓冲区池的管理函数,该管理函数包括系统缓冲区申请函数,其特征在于:增加系统缓冲区回收处理函数,在缓冲区中请过程中,系统缓冲区申请函数可以调用系统缓冲区回收处理函数;
系统中各个可以回收数据缓冲区的功能模块注册自己的缓冲区回收函数到系统,供所述的系统缓冲区回收处理函数调用;
缓冲区申请过程包括如下步骤:
a、功能模块从系统缓冲区池申请所需的数据缓冲区不成功,所述系统缓冲区申请函数调用所述系统缓冲区回收处理函数;
b、所述系统缓冲回区收处理函数调用各功能模块注册的缓冲区回收函数;
c、所述功能模块判断并释放可以回收的缓冲区;
d、功能模块重新调用系统缓冲区申请函数申请回收到的缓冲区。
2、如权利要求1所述主动回收数据缓冲区的方法,其特征在于,所述步骤b中,系统缓冲区回收处理函数按照各功能模块注册缓冲区回收函数的顺序进行缓冲区回收函数的调用。
3、如权利要求1所述主动回收数据缓冲区的方法,其特征在于,所述步骤c中,被释放的缓冲区被放入系统缓冲区池。
CNB2005100222169A 2005-12-05 2005-12-05 一种主动回收数据缓冲区的方法 Expired - Fee Related CN100456262C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100222169A CN100456262C (zh) 2005-12-05 2005-12-05 一种主动回收数据缓冲区的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100222169A CN100456262C (zh) 2005-12-05 2005-12-05 一种主动回收数据缓冲区的方法

Publications (2)

Publication Number Publication Date
CN1979448A CN1979448A (zh) 2007-06-13
CN100456262C true CN100456262C (zh) 2009-01-28

Family

ID=38130624

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100222169A Expired - Fee Related CN100456262C (zh) 2005-12-05 2005-12-05 一种主动回收数据缓冲区的方法

Country Status (1)

Country Link
CN (1) CN100456262C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108536609B (zh) * 2017-03-02 2022-02-22 迈普通信技术股份有限公司 内存碎片管理系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991520A (en) * 1996-02-02 1999-11-23 Sony Corporation Application programming interface for managing and automating data transfer operations between applications over a bus structure
US6175906B1 (en) * 1996-12-06 2001-01-16 Advanced Micro Devices, Inc. Mechanism for fast revalidation of virtual tags
JP2002149438A (ja) * 2000-11-10 2002-05-24 Hitachi Ltd リカバリ制御用バッファ記憶の制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991520A (en) * 1996-02-02 1999-11-23 Sony Corporation Application programming interface for managing and automating data transfer operations between applications over a bus structure
US6175906B1 (en) * 1996-12-06 2001-01-16 Advanced Micro Devices, Inc. Mechanism for fast revalidation of virtual tags
JP2002149438A (ja) * 2000-11-10 2002-05-24 Hitachi Ltd リカバリ制御用バッファ記憶の制御方法

Also Published As

Publication number Publication date
CN1979448A (zh) 2007-06-13

Similar Documents

Publication Publication Date Title
CN101540990B (zh) 实现寻呼处于寻呼盲区的用户的方法及系统
CN101128050B (zh) 无线承载控制方法、系统和服务无线网络控制器
CN110831260B (zh) Rrc连接恢复的处理方法、装置及终端
CN103503520A (zh) 针对无线局域网的数据的卸载
US20120102482A1 (en) Method for Communication System Service Upgrade and Upgrade Container Device Thereof
WO2009109145A1 (zh) 提高通信设备可靠性的方法及装置
CN107291555A (zh) 一种Java虚拟机的垃圾回收、负载均衡方法及系统
CN107409062A (zh) 移动网络功能的升级
CN101068374A (zh) 空中数据传输的承载方式的切换方法及系统
CN100456262C (zh) 一种主动回收数据缓冲区的方法
CN105095529A (zh) 软件的垃圾内容清理方法、装置及终端
CN100499497C (zh) 一种快速处理告警的方法和系统
CN102404319A (zh) 一种af会话的处理方法及装置
CN107357664B (zh) 一种分布式锁的实现方法和装置
CN101436993A (zh) 一种抓包方法、设备及系统
CN101184323B (zh) 直接信令连接重建方法
CN102131002A (zh) 一种手机数据处理方法和装置
CN100589372C (zh) 一种网络业务虚连接模块间数据同步的方法
CN103617023A (zh) 一种系统垃圾资源的回收方法和装置
CN101123558A (zh) 一种实现Wimax接入网络中设备重启通知的方法
CN100456698C (zh) 一种基站启动方法
CN108287746B (zh) 一种对epc网元的虚拟资源扩容或缩容的方法及装置
CN101232648B (zh) 一种快速卸载终端的方法及装置
CN1801737A (zh) 一种网关服务节点处理业务服务节点重启的方法
CN101320443A (zh) 一种电子工单的处理方法及处理装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: MAIPU COMMUNICATION TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: MAIPU (SICHUAN) COMMUNICATION TECHNOLOGY CO., LTD.

CP03 Change of name, title or address

Address after: Sichuan city of Chengdu province high tech Zone nine Hing Road No. 16 building, Maipu

Patentee after: Maipu Communication Technologies Co., Ltd.

Address before: Sichuan city of Chengdu province high tech Zone nine Hing Road No. 16 building, Maipu

Patentee before: Maipu (Sichuan) Communication Technology Co., Ltd.

ASS Succession or assignment of patent right

Owner name: BEIJING MAIPU HUAXIN INFORMATION TECHNOLOGY CO., L

Free format text: FORMER OWNER: MAIPU COMMUNICATION TECHNOLOGIES CO., LTD.

Effective date: 20150505

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 610041 CHENGDU, SICHUAN PROVINCE TO: 100000 HAIDIAN, BEIJING

TR01 Transfer of patent right

Effective date of registration: 20150505

Address after: 100000, room 58, No. 918 West Fourth Ring Road, Haidian District, Beijing

Patentee after: Beijing Maipu Huaxin Information Technology Co., Ltd.

Address before: 610041 Sichuan city of Chengdu province high tech Zone nine Hing Road No. 16 building, Maipu

Patentee before: Maipu Communication Technologies Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090128

Termination date: 20151205

EXPY Termination of patent right or utility model