数据处理方法和装置制造方法及图纸

技术编号:9906915 阅读:100 留言:0更新日期:2014-04-11 05:50
本发明专利技术提供了一种数据处理方法和装置,其中,数据处理方法包括:接收用户设备发送的数据包;将数据包中的数据按照第一设定规则复制到任务控制块中,并将任务控制块中的数据设定为完成状态;调用USB接口向USB数据卡发送任务控制块中的数据,同时继续接收用户设备发送的其他数据包,并将数据按照第一设定规则分别复制到其他任务控制块中,将其他任务控制块组织成待发送任务控制块链表;在设定为完成状态的任务控制块中的数据发送完成后,对待发送任务控制块链表中的各个任务控制块中的数据进行组包;调用USB接口发送组包后的数据至USB数据卡。通过本发明专利技术,避免了USB总线的传输效率不能得到充分利用,USB数据传输速率低的问题。

【技术实现步骤摘要】
数据处理方法和装置
本专利技术涉及数据卡
,特别是涉及一种数据处理方法和装置。
技术介绍
USB(UniversalSerialBus,通用串行总线)已成为计算机领域的标准接口技术,由于其具有即插即用、使用方便、低成本等特点,迅速得到业界的强力支持,目前已成为主流的总线标准。USB广泛应用于传统PC(PersonalComputer,个人电脑)外设,如鼠标、键盘、显示器等,移动存储设备如移动硬盘、闪存盘等,以及新兴的消费类电子,如MP3播放器、数码相机、移动电话等。同时,其应用范围也在不断扩大,基于USB的数据通信系统也在日益增多,其中,最具有代表性的为USB数据卡。USB数据卡的上行业务需要遵循NDIS(NetworkDriverInterfaceStandard,网络驱动器接口规范)要求的串行方式。目前,基于USB的数据卡进行数据传输时,数据包的传输流程为:PC(PersonalComputer,个人电脑)操作系统把数据包通过按照NDIS调用的接口发送给PC中的USB数据卡驱动程序;USB数据卡驱动程序通过USB总线把数据包发送给USB数据卡;待USB数据卡确认收到该数据包后,USB数据卡驱动程序再通知PC操作系统该数据包已发送完成;PC操作系统接收USB数据卡驱动程序发送的USB总线已发送完该数据包的消息;PC操作系统会根据需求决定是否发送下一个数据包。上述现有的USB数据传输方式,在进行数据包的传输时,PC操作系统必须等前一个数据包发送至USB数据卡,并收到USB数据卡驱动程序发送的完成消息后,才可以再次向USB数据卡驱动程序发送下一个数据包。由于PC操作系统与USB数据卡驱动程序的交互速率小于USB总线的传输速率,使得USB总线的传输效率不能得到充分利用,导致USB数据传输速率低。
技术实现思路
本专利技术提供了一种数据处理方法和装置,以解决现有的USB数据传输方式在进行数据包的传输时,USB总线的传输效率不能得到充分利用,USB数据传输速率低的问题。为了解决上述问题,本专利技术公开了一种数据处理方法,包括:接收用户设备发送的数据包;将所述数据包中的数据按照第一设定规则复制到任务控制块中,并将所述任务控制块中的数据设定为完成状态;调用通用串行总线接口向所述通用串行总线数据卡发送所述任务控制块中的数据,同时继续接收所述用户设备发送的其他数据包,并将所述其他数据包中的数据按照所述第一设定规则分别复制到其他任务控制块中,将所述其他任务控制块组织成待发送任务控制块链表;在设定为完成状态的所述任务控制块中的数据发送完成后,按照第二设定规则对所述待发送任务控制块链表中的各个任务控制块中的数据进行组包;调用所述通用串行总线接口发送组包后的所述数据至所述通用串行总线数据卡。为了解决上述问题,本专利技术还公开了一种数据处理装置,包括:接收模块,用于接收用户设备发送的数据包;复制模块,用于将所述数据包中的数据按照第一设定规则复制到任务控制块中,并将所述任务控制块中的数据设定为完成状态;组织模块,用于调用通用串行总线接口向所述通用串行总线数据卡发送所述任务控制块中的数据,同时继续接收所述用户设备发送的其他数据包,并将所述其他数据包中的数据按照所述第一设定规则分别复制到其他任务控制块中,将所述其他任务控制块组织成待发送任务控制块链表;组包模块,用于在设定为完成状态的所述任务控制块中的数据发送完成后,按照第二设定规则对所述待发送任务控制块链表中的各个任务控制块中的数据进行组包;发送模块,用于调用所述通用串行总线接口发送组包后的所述数据至所述通用串行总线数据卡。与现有技术相比,本专利技术具有以下优点:本专利技术中数据处理方案,USB数据卡驱动程序所在的用户设备向USB数据卡发送数据包时,在接收到一个待发送的数据包后,将数据包复制到任务控制块中,并将被复制的数据包设定为完成状态。当被复制的数据包被设定为完成状态后,该设定为完成状态的数据包通过USB接口发送至USB数据卡;与此同时,还继续接收用户设备发送的数据包,避免了现有技术中,需要将接收到的数据包发送至USB数据卡后,才能继续接收下一个数据包,从而导致数据处理速度慢,数据传输速率低的问题。此外,还将接收到的其他数据包中的数据复制到任务控制块中组成待发送任务控制块链表,在设定为完成状态的所述任务控制块中的数据发送完成后,将待发送任务控制块链表中的各个任务控制块中的数据进行组包,一并通过USB接口发送至USB数据卡中,解决了现有的技术中,USB数据卡驱动程序每次只能发送一个数据包至USB数据卡,USB总线的传输效率不能得到充分利用,数据传输速率低的问题。通过本专利技术中的数据处理方案,将数据包进行缓存、组包后发送至USB数据卡,充分利用了USB总线的传输效率,提高了数据的传输速率。附图说明图1是根据本专利技术实施例一的一种数据处理方法的步骤流程图;图2是根据本专利技术实施例二的一种数据处理方法的步骤流程图;图3是根据本专利技术实施例三的一种数据处理方法的步骤流程图;图4是根据本专利技术实施例四的一种数据处理方法的步骤流程图;图5是根据本专利技术实施例五的一种数据处理方法的步骤流程图;图6是采用实施例五中的数据处理方法对数据进行组包的具体步骤流程图;图7是对采用实施例五中的数据处理方法得到的组包后的数据包进行解包的具体流程图;图8是根据本专利技术实施例六的一种数据处理装置的结构框图;图9是根据本专利技术实施例七的一种数据处理装置的结构框图;图10是根据本专利技术实施例八的一种数据处理装置的结构框图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。实施例一参照图1,示出了本专利技术实施例一的一种数据处理方法的步骤流程图。本实施例从USB数据发送侧对本专利技术的数据处理方法进行说明,本实施例的数据处理的步骤如下:步骤S102:接收用户设备发送的数据包。本实施例中的数据处理方法通过集成了USB数据卡驱动程序的数据处理装置实现,该数据处理装置设置于终端设备例如PC上,PC操作系统通过USB数据卡驱动程序发送需要向USB数据卡发送的数据包,USB数据卡驱动程序调用USB接口向USB数据卡发送数据包,PC通过USB数据卡驱动程序调用接口时需要遵循NDIS。步骤S104:将数据包中的数据按照第一设定规则复制到任务控制块中,并将任务控制块中的数据设定为完成状态。当收到数据包时,会由USB数据卡驱动程序将数据包中的数据复制到任务控制块中。第一设定规则可以由本领域技术人员根据实际情况适当设置,如,可以直接从空闲任务控制块链表中提取一个空闲任务控制块将数据包中的数据复制到该空闲任务控制块中;还可以从待发送的任务控制块链表中取出一个待发送任务控制块将数据包中的数据复制到待发送的任务控制块中。在将数据包中的数据复制到任务控制块中后,将任务控制块中的数据设定为完成状态。当任务块中的数据为完成状态时,USB数据卡驱动程序将该状态反馈给PC操作系统,PC操作系统遵循NDIS协议,根据需求调用接口继续通过USB数据卡驱动程序发送需要向USB数据卡发送的数据包。需要说明的是,USB数据卡驱动程序并不是一直不停的将任务控制块中的数据设定为完成状态,当任务块中的数据达到一定量时,将不会继续本文档来自技高网
...
数据处理方法和装置

【技术保护点】
一种数据处理方法,其特征在于,包括:接收用户设备发送的数据包;将所述数据包中的数据按照第一设定规则复制到任务控制块中,并将所述任务控制块中的数据设定为完成状态;调用通用串行总线接口向所述通用串行总线数据卡发送所述任务控制块中的数据,同时继续接收所述用户设备发送的其他数据包,并将所述其他数据包中的数据按照所述第一设定规则分别复制到其他任务控制块中,将所述其他任务控制块组织成待发送任务控制块链表;在设定为完成状态的所述任务控制块中的数据发送完成后,按照第二设定规则对所述待发送任务控制块链表中的各个任务控制块中的数据进行组包;调用所述通用串行总线接口发送组包后的所述数据至所述通用串行总线数据卡。

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:接收用户设备发送的数据包;将所述数据包中的数据按照第一设定规则复制到任务控制块中,并将所述任务控制块中的数据设定为完成状态;调用通用串行总线接口向所述通用串行总线数据卡发送所述任务控制块中的数据,同时继续接收所述用户设备发送的其他数据包,并将所述其他数据包中的数据按照所述第一设定规则分别复制到其他任务控制块中,将所述其他任务控制块组织成待发送任务控制块链表;在设定为完成状态的所述任务控制块中的数据发送完成后,按照第二设定规则对所述待发送任务控制块链表中的各个任务控制块中的数据进行组包;包括:从所述待发送任务控制块链表中提取一个待发送的任务控制块;判断所述待发送任务控制块链表中是否存在其他待发送的任务控制块;若不存在,则直接调用所述通用串行总线接口发送提取的所述任务控制块中的数据至所述通用串行总线数据卡;若存在,则从所述待发送任务控制块链表中再提取其他待发送的任务控制块,对提取的所有待发送任务控制块中的数据进行组包;调用所述通用串行总线接口发送组包后的所述数据至所述通用串行总线数据卡。2.根据权利要求1所述的方法,其特征在于,所述从所述待发送任务控制块链表中再提取其他待发送的任务控制块,对提取的所有待发送任务控制块中的数据进行组包的步骤包括:从所述待发送任务控制块链表中再提取一个其他待发送的任务控制块;判断先后提取的两个所述待发送的任务控制块的数据量大小之和是否小于或等于设定值,其中,所述设定值小于或等于所述任务控制块的大小;若小于或等于所述设定值,则将提取的待发送的任务控制块中的一个任务控制块中的数据复制到另一个任务控制块中进行组包,并将被复制了数据的任务控制块链接入空闲任务控制块链表,返回所述判断所述待发送任务控制块链表中是否存在其他待发送的任务控制块的步骤;若大于所述设定值,则将后提取的所述待发送的任务控制块放回所述待发送任务控制块链表中。3.根据权利要求1至2任一项所述的方法,其特征在于,组包后的数据包中包括:组包的数据包的总包数、各个数据包的包长和实际数据。4.根据权利要求1至2任一项所述的方法,其特征在于,所述将所述数据包中的数据按照第一设定规则复制到任务控制块中步骤包括:判断通用串行总线数据卡驱动程序中是否存在待发送的任务控制块;若存在,则将所述用户设备发送的数据包中的数据复制到一个仍有空闲空间的待发送的任务控制块中,其中,所述空闲空间大于或等于待复制的所述数据包的大小;若不存在,则从空闲任务控制块链表中提取一个空闲的任务控制块,将所述数据包中的数据复制到提取的所述空闲的任务控制块中。5.一种数据处理装置,其特征在于,包括:接收模块,用于接收用户设备发送的数据包;复制模块,用于...

【专利技术属性】
技术研发人员:邸忠辉李凤庆许操
申请(专利权)人:北京创毅视讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1