[发明专利]RFID中间件进程间数据通讯的方法及装置有效
申请号: | 200910057871.6 | 申请日: | 2009-09-03 |
公开(公告)号: | CN102004891A | 公开(公告)日: | 2011-04-06 |
发明(设计)人: | 陈圣煜;李尚春;丛力群;陈松;张洋 | 申请(专利权)人: | 上海宝信软件股份有限公司 |
主分类号: | G06K7/00 | 分类号: | G06K7/00;G06F12/08 |
代理公司: | 上海浦一知识产权代理有限公司 31211 | 代理人: | 戴广志 |
地址: | 201203 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | rfid 中间件 进程 数据通讯 方法 装置 | ||
1.一种RFID中间件进程间数据通讯的方法,其特征在于:RFID中间件主模块与每个RFID中间件电子标签采集模块都建立各自独立的消息队列;RFID中间件主模块定时向各RFID中间件电子标签采集模块的消息队列发送电子标签采集或电子标签写入指令;RFID中间件电子标签采集模块收到电子标签采集指令后,从RFID设备采集电子标签,并将采集到的标签数据及设备状态发送到RFID中间件主模块的消息队列上。
2.如权利要求1所述的方法,其特征在于:所述消息队列构建在操作系统的共享内存上,所述操作系统包括:Windows、Win CE、Linux和Unix系统。
3.如权利要求1所述的方法,其特征在于:所述消息队列包括数据队列和空闲空间队列;当不同进程需要进行数据通讯时,发送进程向数据队列中投递消息数据,接收进程从数据队列实时取出消息数据;消息数据从数据队列中取出后放到空闲空间队列中。
4.如权利要求1所述的方法,其特征在于:所述消息队列为每个消息分配预订长度的块数据空间。
5.如权利要求1所述的方法,其特征在于:所述消息队列包括多个消息包,每个消息包包括元数据和实际数据;所述元数据描述实际数据的大小、消息包的大小、消息包的消息类型和消息包的标识。
6.如权利要求1所述的方法,其特征在于:所述消息队列采用两层内存分配器实现快速数据交换,第一层内存分配器直接调用操作系统接口及相应内存分配请求;第二层内存分配器根据不同情况采取不同的策略,当需要分配的内存空间大小超过32K字节时,直接调用第一层分配器;否则,则认为其是小块空间;
第二层分配器自动将任何小块区间上调至32字节的倍数。
7.如权利要求1所述的方法,其特征在于:消息队列进行初始化的方法包括如下步骤:检测消息队列是否已经初始化;如果消息队列尚未初始化,则初始化空闲空间队列:分配1024个空闲空间队列,每个空闲空间队列管理定长的空闲空间;初始化互斥信号量,以同步多任务或多线程对消息队列进行访问;如果消息队列已经初始化,则打开指定消息队列所对应的共享内存,获取当前的数据队列和空闲空间队列的信息。
8.如权利要求1所述的方法,其特征在于:消息队列的分配方法包括如下步骤:如果请求的空间大于32K字节,则通过第一层分配器直接调用操作系统来分配内存;如果当前请求的空间小于32K字节,则自动调整到32K字节的整数倍,并直接定位到对应的空闲空间队列;如果该空闲空间队列有空闲数据,则直接从中获取一块空闲空间即可;如果该空闲空间队列没有空闲数据,则需要重新对该空闲空间队列进行填充。
9.如权利要求1所述的方法,其特征在于:消息队列的回收方法包括如下步骤:回收的数据大于32K字节的通过第一层分配器交由操作系统来释放空间;小于32K字节的直接定位到对应的空闲空间队列。
10.一种用于RFID中间件中进程间数据通讯装置,其特征在于:包括,RFID中间件主模块和多个RFID中间件电子标签采集模块,RFID中间件电子标签采集模块负责采集RFID阅读器上的电子标签数据,RFID中间件主模块接收每个RFID中间件电子标签采集模块的电子标签数据;
RFID中间件主模块与每个RFID中间件电子标签采集模块都建立各自的消息队列,RFID中间件主模块定时向各RFID中间件电子标签采集模块的消息队列发送各种指令;RFID中间件电子标签采集模块收到电子标签采集指令后,从RFID设备采集电子标签,并将采集到的标签数据及设备状态发送到RFID中间件主模块的消息队列上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海宝信软件股份有限公司,未经上海宝信软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910057871.6/1.html,转载请声明来源钻瓜专利网。