CN114006898A - 版本更换方法、装置及系统 - Google Patents
版本更换方法、装置及系统 Download PDFInfo
- Publication number
- CN114006898A CN114006898A CN202111278276.2A CN202111278276A CN114006898A CN 114006898 A CN114006898 A CN 114006898A CN 202111278276 A CN202111278276 A CN 202111278276A CN 114006898 A CN114006898 A CN 114006898A
- Authority
- CN
- China
- Prior art keywords
- binary
- version
- data
- file
- data messages
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013507 mapping Methods 0.000 claims abstract description 29
- 230000008859 change Effects 0.000 claims abstract description 16
- 230000002452 interceptive effect Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 abstract description 25
- 239000012634 fragment Substances 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 229910002056 binary alloy Inorganic materials 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及一种版本更换方法、装置、系统、电子设备及计算机可读介质。该系统包括:服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本。本公开能够同时给多个板卡更换版本,并且支持同一个版本的分片无序传输;即使在无网络、无蓝牙、无串口的情况下也能保证正常的数据传输和信息交流,提高工作效率。
Description
技术领域
本公开涉及计算机信息处理领域,具体而言,涉及一种版本更换方法、装置、系统、电子设备及计算机可读介质。
背景技术
技术的发展使产品拥有了更多全新的功能特点和更多的服务能力,但是,经常替换硬件设备是不现实的行为,会带来巨大的成本压力和资源损耗。经常采取的做法是将现有的硬件设备的软件版本进行升级,以在原有的硬件基础上实现新的功能。
现在的版本更换技术是通过连接好的串口,使用文件服务器将版本数据传输到目标设备上,然后重启设备,现有技术是通过串口文件服务器逐个更换板卡上运行的版本。而且,现有技术中,版本不能同时给多个业务板传输更换,也不支持同一个版本的分块传输。同时,现有技术这种利用无线数据传输版本的技术,对网络环境与无线传输协议的兼容性依赖度很高。如果版本传输过程中出现网络中断的现象,则需要再次进行数据传输。在整个版本更换过程中,不仅需要耗费大量的人力物力资源,也占用了大量的时间。
因此,需要一种新的版本更换方法、装置、系统、电子设备及计算机可读介质。
在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本公开提供一种版本更换方法、装置、系统、电子设备及计算机可读介质,能够同时给多个板卡更换版本,并且支持同一个版本的分片无序传输;即使在无网络、无蓝牙、无串口的情况下,也能够保证正常的数据传输和信息的交流,提高工作效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一方面,提出一种版本更换方法,可用于服务器端,该方法包括:服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本。
在本公开的一种示例性实施例中,将所述二进制文件划分为多个数据块,包括:通过读取二进制文件流的方式将所述二进制文件划分为多个固定大小的数据块;为所述数据块依次编号。
在本公开的一种示例性实施例中,基于所述多个数据块生成多个二进制数据报文,包括:将所述多个数据块按照交互信息格式进行组合,生成所述多个二进制数据报文。
在本公开的一种示例性实施例中,将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换,包括:将所述多个二进制数据报文通过多个通道并行发送至所述设备端,其中,所述多个通道对应固定的电磁波发送频率;所述设备基于所述多个二进制数据文件进行版本更换。
根据本公开的一方面,提出一种版本更换方法,可用于设备端,该方法包括:获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
在本公开的一种示例性实施例中,获取来自服务器端的多个二进制数据报文之前,包括:在内存中创建多个内存块,并进行编号;基于mmap函数按顺序将所述多个内存块映射到空白文件中。
在本公开的一种示例性实施例中,获取来自服务器端的多个二进制数据报文,包括:通过多个通道并行接受来自服务器端的多个二进制数据报文;其中,所述多个通道对应固定的电磁波接收频率。
在本公开的一种示例性实施例中,还包括:将所述多个二进制数据报文存储在缓冲区。
在本公开的一种示例性实施例中,将所述多个二进制数据报文进行解析生成多个二进制文件,包括:基于交互信息格式对所述多个二进制数据报文进行解析生成多个二进制文件;将所述多个二进制文件按照其对应的序号存储到内存块中。
在本公开的一种示例性实施例中,基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据,包括:在获取全部的二进制文件后,释放内存映射关系和文件描述符以生成所述版本数据。
根据本公开的一方面,提出一种版本更换装置,可用于服务器端,该装置包括:转化模块,用于将版本数据转化为二进制文件;划分模块,用于将所述二进制文件划分为多个数据块;报文模块,用于基于所述多个数据块生成多个二进制数据报文;发送模块,用于将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换。
根据本公开的一方面,提出一种版本更换装置,可用于设备端,该装置包括:接收模块,用于获取来自服务器端的多个二进制数据报文;解析模块,用于将所述多个二进制数据报文进行解析生成多个二进制文件;拼接模块,用于基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;重启模块,用于将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
根据本公开的一方面,提出一种版本更换系统,该系统包括:服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本。
根据本公开的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本公开的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本公开的版本更换方法、装置、系统、电子设备及计算机可读介质,通过服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本的方式,能够同时给多个板卡更换版本,并且支持同一个版本的分片无序传输;即使在无网络、无蓝牙、无串口的情况下,也能够保证正常的数据传输和信息的交流,提高工作效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种版本更换系统的示意图。
图2是根据一示例性实施例示出的一种版本更换方法的流程图。
图3是根据另一示例性实施例示出的一种版本更换方法的流程图。
图4是根据另一示例性实施例示出的一种版本更换方法的流程图。
图5是根据另一示例性实施例示出的一种版本更换方法的流程图。
图6是根据另一示例性实施例示出的一种版本更换方法的示意图。
图7是根据一示例性实施例示出的一种版本更换装置的框图。
图8是根据另一示例性实施例示出的一种版本更换装置的框图。
图9是根据一示例性实施例示出的一种电子设备的框图。
图10是根据一示例性实施例示出的一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、系统、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
本公开涉及的技术缩略语解释如下:
内存映射文件:由一个文件到一块内存的映射。
无线传输:利用无线技术进行数据传输的一种方式。
线程池:创建好的线程集合。
内存池:一种内存分配方式。
并发:两个或多个事件在同一时间间隔内发生。
并行:两个或多个事件在同一时刻发生。
本公开的发明人发现,计算机存储、处理数据都是二进制形式,每一位数据只有两种可能,所以可以应用声波模拟上述两种状态来传递信息。所以,本公开提出一种版本更换方法,在传输数据之前先将文件转化成二进制,再将数据分成多个数据块并编号,然后将分好的数据按编号组成固定消息格式发送出去,接收端将接收的数据按照特定技术将数据有序的组合起来,并完成文件的还原。
本公开的版本更换方法,可以同时给多个板卡更换版本并且同一个版本可以分块无序传输,可以节约更换版本的时间;同时本公开的版本更换方法也可以在无网络,无串口的情况下,提供一种可靠传输版本的方法,保证工作的顺利进行。
本发明在版本传输过程中使用无线传输技术将同一个版本同时传送给不同的板卡,实现方案如下:
图1是根据一示例性实施例示出的一种版本更换系统的示意图。
如图1所示,系统架构10可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103可以是具有数据传输处理功能的各种电子设备,包括但不限于路由器、交换器、防火墙、智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103提供版本更新的后台服务器。后台服务器获取最新的版本数据,并将版本数据发送给终端设备101、102、103,终端设备101、102、103基于接收到的数据进行版本更新。
服务器105可例如将版本数据转化为二进制文件;服务器105可例如将所述二进制文件划分为多个数据块;服务器105可例如基于所述多个数据块生成多个二进制数据报文;服务器105可例如将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换。
终端设备101、102、103可例如获取来自服务器端的多个二进制数据报文;终端设备101、102、103可例如将所述多个二进制数据报文进行解析生成多个二进制文件;终端设备101、102、103可例如基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;终端设备101、102、103可例如将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
服务器105可以是一个实体的服务器,还可例如为多个服务器组成,需要说明的是,本公开实施例所提供的版本更换方法可以由服务器105和终端设备101、102、103执行,相应地,版本更换装置可以设置于服务器105和终端设备101、102、103中。
图2是根据一示例性实施例示出的一种版本更换方法的流程图。版本更换方法20可应用于服务器端,至少包括步骤S202至S208。
如图2所示,在S202中,将版本数据转化为二进制文件。二进制形式,每一位数据只有两种可能,即为将版本数据转换为全部由0和1组成的数据。
在S204中,将所述二进制文件划分为多个数据块。可通过读取二进制文件流的方式将所述二进制文件划分为多个固定大小的数据块;为所述数据块依次编号。可按照某一确定的计数单位,将二进制文件分别多个数据块,如果最后的数据块存在空余位置,则用特殊形式的数值补充完整。
在S206中,基于所述多个数据块生成多个二进制数据报文。可将所述多个数据块按照交互信息格式进行组合,生成所述多个二进制数据报文。
交互信息格式可如下形式,交互信息格式还可根据用户的设置进行更高,本申请不以此为限。
字段 | 大小 | 说明 |
通道id | U8 | 消息传输通道的编号 |
文件大小 | U32 | 传输文件的文件大小 |
分块数 | U32 | 将文件划分了多少数据块 |
分块编号 | U32 | 数据块的编号,用来标识数据区内容在文件的位置 |
开始标志 | U32 | 数据传输的起始标志 |
数据区 | N字节 | 存放文件的内容 |
结束标志 | U32 | 数据传输的结束标志 |
在S208中,将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换。可例如,将所述多个二进制数据报文通过多个通道并行发送至所述设备端,其中,所述多个通道对应固定的电磁波发送频率;所述设备基于所述多个二进制数据文件进行版本更换。
根据本公开的版本更换方法,服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本的方式,能够同时给多个板卡更换版本,并且支持同一个版本的分片无序传输;即使在无网络、无蓝牙、无串口的情况下,也能够保证正常的数据传输和信息的交流,提高工作效率。
应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施例。
图3是根据另一示例性实施例示出的一种版本更换方法的流程图。图3所示的流程30是对图2所示的流程的详细描述。
如图3所示,在S302中,获取待传输的版本数据。
在S304中,文件描述符是否为空。
在S306中,计算文件大小。
在S308中,将文件分成数据块。
在S310中,按照交互信息格式进行组合成二进制数据报文。
在S312中,通过多个通道发送出去。
发送端将版本文件转化成二进制文件,再将转化后的文件分成n字节大小的多个数据块并进行编号,然后将数据按照交互消息格式组成消息块,最后将消息块从任意通道(发送端与每个接收端都存在多个通道可以同时发送)发送出去。
每个通道只能发送和识别固定频段电磁波(高频段与低频段都存在并且不相交)的信号,所以数据可以实现并行传输,每个通道的接收端将接收到的信号转化为二进制数0或1,然后写入到缓冲区中。
图4是根据另一示例性实施例示出的一种版本更换方法的流程图。版本更换方法40可应用于设备端,至少包括步骤S402至S408。
如图4所示,在S402中,获取来自服务器端的多个二进制数据报文。通过多个通道并行接受来自服务器端的多个二进制数据报文;其中,所述多个通道对应固定的电磁波接收频率。将所述多个二进制数据报文存储在缓冲区。
其中,获取来自服务器端的多个二进制数据报文之前,包括:在内存中创建多个内存块,并进行编号;基于mmap函数按顺序将所述多个内存块映射到空白文件中。
在S404中,将所述多个二进制数据报文进行解析生成多个二进制文件。可基于交互信息格式对所述多个二进制数据报文进行解析生成多个二进制文件;将所述多个二进制文件按照其对应的序号存储到内存块中。
在S406中,基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据。在获取全部的二进制文件后,释放内存映射关系和文件描述符以生成所述版本数据。
在S408中,将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
图5是根据另一示例性实施例示出的一种版本更换方法的流程图。图5所示的流程50是对图4所示的流程的详细描述。
如图5所示,在S502中,建立并打开空文件。
在S504中,文件描述符是否为空。
在S506中,将文件映射到指定的内存区。
在S508中,由多个通道接收二进制数据报文。
在S510中,将接收到的二进制数据报文写入缓冲区。
在S512中,解析二进制数据报文并保存。
在S514中,将解析的内容写入对应的内存块中。
在S516中,数据是否全部传完。
在S518中,释放映射与文件描述符。
在S520中,重启。
接收端(每块板卡)都会有一块固定连续内存区m(用来存放接收到的数据),并将内存区m分成n字节大小的多个内存块并进行编号,然后将每个内存块通过mmap函数按顺序映射到创建好的空白文件中。
通道x的接收端将缓冲区中的数据进行解析获取到消息块中的所有信息并保存,然后将消息块中数据区内容直接写入到对应的内存块中;当所有数据写完成之后,释放内存映射关系与文件描述符,将文件移动到指定位置,并重启设备。
图6是根据另一示例性实施例示出的一种版本更换方法的示意图。如图6所示:
服务器端先将版本文件转化成二进制文件,再将转化后的文件分成n字节大小的多个数据块并进行编号,然后将数据按照交互消息格式(见交互信息格式说明)组成消息块。
服务器端与每个设备端都存在多个并行的数据传输通道,因为每个通道只能识别固定频段电磁波(高频段与低频段都存在并且不相交)的信号,所以数据可以实现并行传输,发送模块将组合好的消息块通过不同的通道发送出去。
设备端的板卡上的每个通道接收数据并且按照交互消息格式解析出数据并将文件数据写到指定的地方。最后接收端释放文件的映射关系,关闭文件描述符,将获取到的文件转化为二进制,并修改文件名称与后缀,将转化后的文件放到指定位置,然后重启板卡。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本公开提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图7是根据一示例性实施例示出的一种版本更换装置的框图。如图7所示,版本更换装置70包括:转化模块702,划分模块704,报文模块706,发送模块708。
转化模块702用于将版本数据转化为二进制文件;
划分模块704用于将所述二进制文件划分为多个数据块;
报文模块706用于基于所述多个数据块生成多个二进制数据报文;
发送模块708用于将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换。
图8是根据另一示例性实施例示出的一种版本更换装置的框图。如图8所示,版本更换装置80包括:接收模块802,解析模块804,拼接模块806,重启模块808。
接收模块802用于获取来自服务器端的多个二进制数据报文;
解析模块804用于将所述多个二进制数据报文进行解析生成多个二进制文件;
拼接模块806用于基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;
重启模块808用于将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
根据本公开的版本更换装置,服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本的方式,能够同时给多个板卡更换版本,并且支持同一个版本的分片无序传输;即使在无网络、无蓝牙、无串口的情况下,也能够保证正常的数据传输和信息的交流,提高工作效率。
图9是根据一示例性实施例示出的一种电子设备的框图。
下面参照图9来描述根据本公开的这种实施方式的电子设备900。图9显示的电子设备900仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,电子设备900以通用计算设备的形式表现。电子设备900的组件可以包括但不限于:至少一个处理单元910、至少一个存储单元920、连接不同系统组件(包括存储单元920和处理单元910)的总线930、显示单元940等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元910执行,使得所述处理单元910执行本说明书中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元910可以执行如图2,图3,图4,图5中所示的步骤。
所述存储单元920可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)9201和/或高速缓存存储单元9202,还可以进一步包括只读存储单元(ROM)9203。
所述存储单元920还可以包括具有一组(至少一个)程序模块9205的程序/实用工具9204,这样的程序模块9205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线930可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备900也可以与一个或多个外部设备900’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备900交互的设备通信,和/或该电子设备900能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口950进行。并且,电子设备900还可以通过网络适配器960与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器960可以通过总线930与电子设备900的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备900使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图8所示,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本。得该计算机可读介质还可实现如下功能:获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施例的方法。
以上具体地示出和描述了本公开的示例性实施例。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (13)
1.一种版本更换方法,该方法可用于服务器端,其特征在于,包括:
将版本数据转化为二进制文件;
将所述二进制文件划分为多个数据块;
基于所述多个数据块生成多个二进制数据报文;
将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换。
2.如权利要求1所述的方法,其特征在于,将所述二进制文件划分为多个数据块,包括:
通过读取二进制文件流的方式将所述二进制文件划分为多个固定大小的数据块;
为所述数据块依次编号。
3.如权利要求1所述的方法,其特征在于,基于所述多个数据块生成多个二进制数据报文,包括:
将所述多个数据块按照交互信息格式进行组合,生成所述多个二进制数据报文。
4.如权利要求1所述的方法,其特征在于,将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换,包括:
将所述多个二进制数据报文通过多个通道并行发送至所述设备端,其中,所述多个通道对应固定的电磁波发送频率;
所述设备基于所述多个二进制数据文件进行版本更换。
5.一种版本更换方法,该方法可用于设备端,其特征在于,包括:
获取来自服务器端的多个二进制数据报文;
将所述多个二进制数据报文进行解析生成多个二进制文件;
基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;
将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
6.如权利要求5所述的方法,其特征在于,获取来自服务器端的多个二进制数据报文之前,包括:
在内存中创建多个内存块,并进行编号;
基于mmap函数按顺序将所述多个内存块映射到空白文件中。
7.如权利要求5所述的方法,其特征在于,获取来自服务器端的多个二进制数据报文,包括:
通过多个通道并行接受来自服务器端的多个二进制数据报文;其中,所述多个通道对应固定的电磁波接收频率。
8.如权利要求7所述的方法,其特征在于,还包括:
将所述多个二进制数据报文存储在缓冲区。
9.如权利要求5所述的方法,其特征在于,将所述多个二进制数据报文进行解析生成多个二进制文件,包括:
基于交互信息格式对所述多个二进制数据报文进行解析生成多个二进制文件;
将所述多个二进制文件按照其对应的序号存储到内存块中。
10.如权利要求5所述的方法,其特征在于,基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据,包括:
在获取全部的二进制文件后,释放内存映射关系和文件描述符以生成所述版本数据。
11.一种版本更换装置,该方法可用于服务器端,其特征在于,包括:
转化模块,用于将版本数据转化为二进制文件;
划分模块,用于将所述二进制文件划分为多个数据块;
报文模块,用于基于所述多个数据块生成多个二进制数据报文;
发送模块,用于将所述多个二进制数据报文并行发送至设备端以使得所述设备进行版本更换。
12.一种版本更换装置,该方法可用于设备端,其特征在于,包括:
接收模块,用于获取来自服务器端的多个二进制数据报文;
解析模块,用于将所述多个二进制数据报文进行解析生成多个二进制文件;
拼接模块,用于基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;
重启模块,用于将所述版本数据移动到预定位置并进行所述设备端的重启以更换版本。
13.一种版本更换系统,其特征在于,包括:
服务器端,将版本数据转化为二进制文件;将所述二进制文件划分为多个数据块;基于所述多个数据块生成多个二进制数据报文;将所述多个二进制数据报文并行发送至设备端;
设备端,获取来自服务器端的多个二进制数据报文;将所述多个二进制数据报文进行解析生成多个二进制文件;基于所述多个二进制文件、内存映射关系、文件描述符生成版本数据;将所述版本数据移动到预定位置并进行重启以更换版本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278276.2A CN114006898A (zh) | 2021-10-30 | 2021-10-30 | 版本更换方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278276.2A CN114006898A (zh) | 2021-10-30 | 2021-10-30 | 版本更换方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114006898A true CN114006898A (zh) | 2022-02-01 |
Family
ID=79925960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111278276.2A Pending CN114006898A (zh) | 2021-10-30 | 2021-10-30 | 版本更换方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114006898A (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101795203A (zh) * | 2009-02-03 | 2010-08-04 | 华为软件技术有限公司 | 软件升级数据包的下载方法和装置 |
CN102541469A (zh) * | 2011-12-13 | 2012-07-04 | 华为技术有限公司 | 固件存储系统中数据保护的方法、设备及系统 |
WO2012105056A1 (ja) * | 2011-02-04 | 2012-08-09 | 株式会社日立製作所 | 並列分散処理システムのデータ転送制御方法、並列分散処理システム及び記憶媒体 |
CN104202667A (zh) * | 2014-09-19 | 2014-12-10 | 青岛海信宽带多媒体技术有限公司 | Iptv机顶盒升级方法和系统 |
CN104348583A (zh) * | 2013-08-08 | 2015-02-11 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
WO2015027517A1 (zh) * | 2013-09-02 | 2015-03-05 | 华为技术有限公司 | 数据发送方法、数据接收方法和装置 |
CN106528125A (zh) * | 2016-10-26 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种数据文件的增量更新方法和服务器、客户端以及系统 |
CN110032383A (zh) * | 2019-04-08 | 2019-07-19 | 网易(杭州)网络有限公司 | 软件更新方法、装置及存储介质 |
CN110311936A (zh) * | 2018-03-27 | 2019-10-08 | 香港乐蜜有限公司 | 客户端之间的通讯方法、装置、电子设备及存储介质 |
US20210149902A1 (en) * | 2019-11-20 | 2021-05-20 | Amadeus S.A.S. | Distributed computer system for delivering data |
CN113055128A (zh) * | 2021-03-28 | 2021-06-29 | 杭州迪普信息技术有限公司 | 信令报文解码正确性的测试方法及装置 |
-
2021
- 2021-10-30 CN CN202111278276.2A patent/CN114006898A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101795203A (zh) * | 2009-02-03 | 2010-08-04 | 华为软件技术有限公司 | 软件升级数据包的下载方法和装置 |
WO2012105056A1 (ja) * | 2011-02-04 | 2012-08-09 | 株式会社日立製作所 | 並列分散処理システムのデータ転送制御方法、並列分散処理システム及び記憶媒体 |
CN102541469A (zh) * | 2011-12-13 | 2012-07-04 | 华为技术有限公司 | 固件存储系统中数据保护的方法、设备及系统 |
CN104348583A (zh) * | 2013-08-08 | 2015-02-11 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
WO2015027517A1 (zh) * | 2013-09-02 | 2015-03-05 | 华为技术有限公司 | 数据发送方法、数据接收方法和装置 |
CN104202667A (zh) * | 2014-09-19 | 2014-12-10 | 青岛海信宽带多媒体技术有限公司 | Iptv机顶盒升级方法和系统 |
CN106528125A (zh) * | 2016-10-26 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种数据文件的增量更新方法和服务器、客户端以及系统 |
CN110311936A (zh) * | 2018-03-27 | 2019-10-08 | 香港乐蜜有限公司 | 客户端之间的通讯方法、装置、电子设备及存储介质 |
CN110032383A (zh) * | 2019-04-08 | 2019-07-19 | 网易(杭州)网络有限公司 | 软件更新方法、装置及存储介质 |
US20210149902A1 (en) * | 2019-11-20 | 2021-05-20 | Amadeus S.A.S. | Distributed computer system for delivering data |
CN113055128A (zh) * | 2021-03-28 | 2021-06-29 | 杭州迪普信息技术有限公司 | 信令报文解码正确性的测试方法及装置 |
Non-Patent Citations (2)
Title |
---|
"《物联网系统开发》", 31 August 2020, 机械工业出版社 * |
郑涔;李小勇;: "一种适用于协同设计环境的分布式存储系统", 微型电脑应用, no. 05 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108830720A (zh) | 智能合约运行方法、装置、系统和计算机可读存储介质 | |
CN111736840A (zh) | 小程序应用的编译方法、运行方法、存储介质及电子设备 | |
CN101795270A (zh) | 一种基于串口的服务器控制方法 | |
CN109672722B (zh) | 数据部署方法及装置、计算机存储介质和电子设备 | |
CN110688096B (zh) | 包含插件的应用程序的构建方法、装置、介质及电子设备 | |
CN107404418B (zh) | 互联网产品测试方法、装置、设备及存储介质 | |
CN109947431A (zh) | 一种代码生成方法、装置、设备及存储介质 | |
CN110769002A (zh) | 基于LabVIEW的报文解析方法、系统、电子设备和介质 | |
CN114006956A (zh) | 报文数据解析方法、装置及设备 | |
CN113821352A (zh) | 一种远程服务的调用方法和装置 | |
CN104809063A (zh) | 分布式系统的测试方法及装置 | |
CN112988583A (zh) | 数据库语法兼容性测试的方法和装置 | |
CN111046010A (zh) | 日志储存方法、装置、系统、电子设备和计算机可读介质 | |
CN114006898A (zh) | 版本更换方法、装置及系统 | |
CN109067649B (zh) | 节点处理方法及装置、存储介质和电子设备 | |
CN111258607A (zh) | 一种基于分流的版本升级方法、装置、设备和存储介质 | |
US11366613B2 (en) | Method and apparatus for writing data | |
CN111427692B (zh) | 功能配置方法、装置、电子设备及介质 | |
US11797277B2 (en) | Neural network model conversion method server, and storage medium | |
CN111193785B (zh) | 一种文件切割传输方法、装置和电子设备 | |
CN113315841A (zh) | 文件上传方法、装置、介质及电子设备 | |
CN113778658A (zh) | 任务分配方法及装置、电子设备、存储介质 | |
CN110727391A (zh) | 交易数据存储方法及装置、区块链系统、介质和电子设备 | |
CN112688863B (zh) | 网关数据处理方法、装置及电子设备 | |
CN111178014A (zh) | 一种处理业务流程的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |