一种数据传输方法及系统与流程

文档序号:17536791发布日期:2019-04-29 14:04阅读:150来源:国知局
一种数据传输方法及系统与流程

本发明涉及通信技术领域,更具体地涉及一种数据传输方法及系统。



背景技术:

目前,在现有的生产中,工厂需要把生产数据由计算机通过usb(universalserialbus,通用串行总线)传输到大量的生产终端中去,为了提高生产效率,计算机往往需要同时连接多个生产终端,同时通过该多路传输数据的方式可节省生产时间,即通过计算机从存储器中读取数据,并分多路同步传输给多个生产终端,但因计算机存储器一般使用机械硬盘,7200转的sata硬盘最大读取150m/s左右,而每个usb2.0端口的传输速度只能达到30m/s,实际使用中,4路usb同时传输基本上就达到了硬盘的读取瓶颈,再继续增加路数,也无法实现数据传输的效率提升,且硬盘高负荷的运转读取,也会加速硬盘的老化和损坏。

鉴于此,有必要提供一种可增加计算机多路传输的路数,同时提高数据传输效率的数据传输方法及系统以解决上述缺陷。



技术实现要素:

本发明所要解决的技术问题提供一种可增加计算机多路传输的路数,同时提高数据传输效率的数据传输方法。

本发明所要解决的另一技术问题是提供一种可增加计算机多路传输的路数,同时提高数据传输效率的数据传输系统。

为解决上述技术问题,根据本发明的一个方面,提供一种数据传输方法,应用于计算机,该方法包括:

接收终端发送的数据传输请求,并向操作系统申请虚拟内存;

根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中;

通过所述虚拟内存实现终端与计算机之间的数据传输。

其进一步技术方案为:所述根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中,包括:

从内存映射表获取所述虚拟内存的虚拟地址对应的物理地址;

根据所述数据传输请求获取硬盘中的相应数据;

根据所述物理地址将所述获取的相应数据映射至虚拟内存中。

其进一步技术方案为:所述通过所述虚拟内存实现终端与计算机之间的数据传输,具体为:所述终端通过对所述虚拟内存进行读操作,获取来自计算机的数据。

其进一步技术方案为:在所述通过所述虚拟内存实现终端与计算机之间的数据传输之后,还包括:释放所述虚拟内存。

为解决上述技术问题,根据本发明的另一方面,提供一种数据传输系统,该系统包括:

内存申请模块,用于接收终端发送的数据传输请求,并向操作系统申请虚拟内存;

控制处理模块,用于根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中;

传输模块,用于通过所述内存申请模块申请的虚拟内存实现终端与计算机之间的数据传输。

其进一步技术方案为:所述控制处理模块包括:

地址获取单元,用于从内存映射表获取所述虚拟内存的虚拟地址对应的物理地址;

数据获取单元,用于根据所述数据传输请求获取硬盘中的相应数据;

映射单元,用于根据所述物理地址将所述获取的相应数据映射至虚拟内存中。

其进一步技术方案为:所述传输模块具体用于通过对所述虚拟内存进行读操作,实现终端与计算机之间的数据传输。

其进一步技术方案为:所述数据传输系统还包括释放模块,其用于释放所述内存申请模块申请的虚拟内存。

为解决上述技术问题,还提供一种数据传输系统,该系统包括:处理器及存储器,其中,所述处理器用于执行存储在存储器中的以下程序模块:

内存申请模块,用于接收终端发送的数据传输请求,并向操作系统申请虚拟内存;

控制处理模块,用于根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中;

传输模块,用于通过所述内存申请模块申请的虚拟内存实现终端与计算机之间的数据传输。

与现有技术相比,本发明接收到外部终端的数据传输请求后通过向计算机操作系统申请虚拟内存,且根据所接收的数据传输请求将硬盘中与该数据传输请求相应的数据即终端所需的数据读取映射至所述虚拟内存中,并通过所述虚拟内存可实现终端与计算机之间的数据传输,可知,本发明中终端可直接读取虚拟内存的数据,且可将读取的数据通过多路usb端口传输到多个生产终端中去,因内存的读取速度可高达10g/s,则可增加计算机多路传输的路数,同时提高数据传输效率,以大幅提高生产效率。

附图说明

图1是本发明数据传输方法一具体实施例的流程示意图。

图2为本发明实施例提供的数据传输方法的子流程示意图。

图3是本发明数据传输系统一具体实施例的结构框图。

具体实施方式

为使本领域的普通技术人员更加清楚地理解本发明的目的、技术方案和优点,以下结合附图和实施例对本发明做进一步的阐述。

参照图1,图1为本发明数据传输方法一具体实施例的流程示意图。所述数据传输方法应用于计算机,在附图所示的实施例中,包括:

s101、接收终端发送的数据传输请求,并向操作系统申请虚拟内存。

该步骤中,接收到终端发送的数据传输请求后向操作系统申请用于存放终端所需的数据的虚拟内存,其中,所述终端为生产车间内生产线上的生产终端。

s102、根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中。

该步骤中,根据所接收的数据传输请求将需要传输到终端的数据从计算机硬盘通过一次性读取到虚拟内存中,虚拟成一个以虚拟内存为存储介质的虚拟数据文件。

具体地,在一些实施例中,如图2所示,所述步骤s102可包括步骤s1021-s1023。

s1021、从内存映射表获取所述虚拟内存的虚拟地址对应的物理地址。

该步骤中,所述内存映射表记录有虚拟内存与物理内存的映射关系,即其记录有虚拟内存的虚拟地址与物理地址间的映射关系。

s1022、根据所述数据传输请求获取硬盘中的相应数据。

该步骤中,根据所接收的数据传输请求读取硬盘中与该数据传输请求相应的数据,即读取终端所需的数据。

s1023、根据所述物理地址将所述获取的相应数据映射至虚拟内存中。

可知,将从计算机硬盘中读取的与该数据传输请求相应的数据即终端所需的数据映射至所述虚拟内存中,以虚拟成一个以虚拟内存为存储介质的虚拟数据文件。

s103、通过所述虚拟内存实现终端与计算机之间的数据传输。

该步骤中,一终端通过一路usb连接至计算机,即终端与计算机间通过usb进行数据传输。具体地,所述终端通过对所述虚拟内存进行读操作,获取来自计算机的数据,以实现终端与计算机之间的数据传输。

s104、释放所述虚拟内存。

该步骤中,终端与计算机之间的数据传输完成后,则释放所述虚拟内存。

综上可知,上述方法中计算机与终端通过usb进行数据传输,当接收到外部终端的数据传输请求后通过向计算机操作系统申请虚拟内存,且根据所接收的数据传输请求将硬盘中与该数据传输请求相应的数据即终端所需的数据读取映射至所述虚拟内存中,外部终端通过对所述虚拟内存进行读操作,获取来自计算机的数据,以实现终端与计算机之间的数据传输,可知,本发明中终端可直接读取虚拟内存的数据,且可将读取的数据通过多路usb端口传输到多个生产终端中去,因内存的读取速度可高达10g/s,理论上可同时支持几百路的usb传输,则可增加计算机多路传输的路数,同时提高数据传输效率,以大幅提高生产效率。

参照图3,图3为本发明数据传输系统一具体实施例的结构框图。在附图所示的实施例中,所述数据传输系统200包括一内存申请模块201、控制处理模块202、传输模块203以及释放模块204。

其中,所述内存申请模块201用于接收终端发送的数据传输请求,并向操作系统申请虚拟内存;其中,一终端通过一路usb连接至计算机,则终端与计算机间通过usb进行数据传输,所述终端为生产车间内生产线上的生产终端。所述控制处理模块202用于根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中,即该控制处理模块202根据所接收的数据传输请求将需要传输到终端的数据从计算机硬盘通过一次性读取到虚拟内存中,虚拟成一个以虚拟内存为存储介质的虚拟数据文件;具体地,所述控制处理模块202包括地址获取单元2021、数据获取单元2022以及映射单元2023;其中,所述地址获取单元2021用于从内存映射表获取所述虚拟内存的虚拟地址对应的物理地址;所述内存映射表记录有虚拟内存与物理内存的映射关系,即其记录有虚拟内存的虚拟地址与物理地址间的映射关系。所述数据获取单元2022用于根据所述数据传输请求获取硬盘中的相应数据。所述映射单元2023用于根据所述物理地址将所述获取的相应数据映射至虚拟内存中,即将从计算机硬盘中读取的与该数据传输请求相应的数据即终端所需的数据映射至所述虚拟内存中,以虚拟成一个以虚拟内存为存储介质的虚拟数据文件。所述传输模块203用于通过所述内存申请模块201申请的虚拟内存实现终端与计算机之间的数据传输;具体地,所述终端通过对所述虚拟内存进行读操作,获取来自计算机的数据,以实现终端与计算机之间的数据传输。所述释放模块204用于释放所述内存申请模块201申请的虚拟内存。

本发明实施例还提供了一种数据传输系统,其包括:处理器及存储器,其中,所述处理器用于执行存储在存储器中的以下程序模块:

内存申请模块,用于接收终端发送的数据传输请求,并向操作系统申请虚拟内存;控制处理模块,用于根据所述数据传输请求将硬盘中的相应数据读取映射至所述虚拟内存中;传输模块,用于通过所述内存申请模块申请的虚拟内存实现终端与计算机之间的数据传输。

综上所述,本发明接收到外部终端的数据传输请求后通过向计算机操作系统申请虚拟内存,且根据所接收的数据传输请求将硬盘中与该数据传输请求相应的数据即终端所需的数据读取映射至所述虚拟内存中,并通过所述虚拟内存可实现终端与计算机之间的数据传输,可知,本发明中终端可直接读取虚拟内存的数据,且可将读取的数据通过多路usb端口传输到多个生产终端中去,因内存的读取速度可高达10g/s,则可增加计算机多路传输的路数,同时提高数据传输效率,以大幅提高生产效率。

需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

另外,在本发明的各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器中,即计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施例,而非对本发明做任何形式上的限制。本领域的技术人员可在上述实施例的基础上施以各种等同的更改和改进,凡在权利要求范围内所做的等同变化或修饰,均应落入本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1