[发明专利]一种数据包的并发处理方法及设备有效
申请号: | 201180001485.0 | 申请日: | 2011-08-26 |
公开(公告)号: | CN102395958A | 公开(公告)日: | 2012-03-28 |
发明(设计)人: | 王工艺;侯新宇;常胜;杨宝川 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F13/16;G06F5/06 |
代理公司: | 北京凯特来知识产权代理有限公司 11260 | 代理人: | 郑立明;孟丽娟 |
地址: | 518129 中国广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据包 并发 处理 方法 设备 | ||
1.一种数据包的并发处理方法,其特征在于,包括:
在地址池中采用至少两个单向空闲链表存储共享存储器的空闲地址,所述地址池用于存储共享存储器中所有的空闲地址;
获取所述共享存储器的消息类型,并根据所述共享存储器中的消息类型建立对应的地址先进先出队列FIFO;
在接收到要同时写入所述共享存储器的至少两个消息时,由所述至少两个单向空闲链表为所述至少两个消息分别提供写入共享存储器的空闲地址,并将分别与所述至少两个消息对应的所述地址更新到所述消息对应的地址FIFO中。
2.根据权利要求1所述的处理方法,其特征在于,所述方法还包括:
在接收到要同时读出所述共享存储器的至少两个消息时,分别从与所述至少两个消息对应的地址FIFO中取出所述消息的地址,作为所述消息读出所述共享存储器的地址,并分别将与所述至少两个消息对应的读出所述共享存储器的地址更新到所述至少两个单向空闲链表中。
3.根据权利要求2所述的处理方法,其特征在于,所述方法还包括:
建立至少两个单向空闲链表;所述单向空闲链表包括共享存储器中的空闲地址以及指向下一个可用空闲地址的指针部分;
将头指针和尾指针分别指向所述单向空闲链表的头和尾。
4.根据权利要求3所述的处理方法,其特征在于,在接收到要同时写入所述共享存储器的至少两个消息时,由所述至少两个单向空闲链表分别为所述至少两个消息分别提供写入共享存储器的空闲地址,并将分别与所述至少两个消息对应的所述地址更新到所述消息对应的地址FIFO中,包括:
分别从所述至少两个单向空闲链表的表头中取出空闲地址,作为所述至少两个消息写入共享存储器的空闲地址;
分别将与所述至少两个消息对应的所述地址,写入到与所述消息对应的地址FIFO的表尾。
5.根据权利要求3所述的处理方法,其特征在于,在接收到要同时读出所述共享存储器的至少两个消息时,分别从与所述至少两个消息对应的地址FIFO中取出所述消息的地址,作为所述消息读出所述共享存储器的地址,并分别将与所述至少两个消息对应的读出所述共享存储器的地址更新到所述至少两个单向空闲链表中,包括:
分别从与所述至少两个消息对应的地址FIFO的表头中取出所述消息的地址,作为所述消息读出所述共享存储器的地址;
分别将与所述至少两个消息对应的读出所述共享存储器的地址,分别更新到两个空闲链表的表尾。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述至少两个单向空闲链表之间动态平衡长度;进一步包括:
在接收到要写入共享存储器中的一个消息时,根据所述单向空闲链表的长度选择较长的单向空闲链表提供所述消息写入共享存储器的空闲地址;
在接收到要读出共享存储器中的一个消息时,从所述消息对应的地址FIFO中取出所述消息的地址,并根据所述单向空闲链表的长度选择较短的单向空闲链表,将所述读出共享存储器的地址更新到所述单向空闲链表中。
7.根据权利要求1-6中任一所述的处理方法,其特征在于,所述方法适用于不同消息类型下,对两个消息的同时读取和写入;以及,相同消息类型下,一个消息的同时读取和写入。
8.一种数据包的并发处理设备,其特征在于,包括:
配置处理模块,用于采用至少两个单向空闲链表存储共享存储器的空闲地址,所述地址池用于存储共享存储器中所有的空闲地址;获取所述共享存储器的消息类型,并根据所述共享存储器中的消息类型建立对应的地址先进先出队列FIFO;
消息控制模块,用于在接收到要同时写入所述共享存储器的至少两个消息时,由所述配置处理模块配置的所述至少两个单向空闲链表为所述至少两个消息分别提供写入共享存储器的空闲地址,并将分别与所述至少两个消息对应的所述地址更新到所述消息对应的所述配置处理模块建立的所述地址FIFO中。
9.根据权利要求8所述的处理设备,其特征在于,所述消息控制模块还用于:
在接收到要同时读出所述共享存储器的至少两个消息时,分别从与所述至少两个消息对应的地址FIFO中取出所述消息的地址,作为所述消息读出所述共享存储器的地址,并分别将与所述至少两个消息对应的读出所述共享存储器的地址更新到所述至少两个单向空闲链表中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180001485.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:电源电路
- 下一篇:数据处理的方法和装置