CN116915602A - 软件升级方法及***、电子设备、存储介质 - Google Patents
软件升级方法及***、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116915602A CN116915602A CN202211460762.0A CN202211460762A CN116915602A CN 116915602 A CN116915602 A CN 116915602A CN 202211460762 A CN202211460762 A CN 202211460762A CN 116915602 A CN116915602 A CN 116915602A
- Authority
- CN
- China
- Prior art keywords
- upgrade
- equipment
- information
- data
- virtual machine
- 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 69
- 230000005540 biological transmission Effects 0.000 claims description 61
- 238000012544 monitoring process Methods 0.000 claims description 44
- 238000004590 computer program Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 32
- 239000003795 chemical substances by application Substances 0.000 description 20
- 238000004891 communication Methods 0.000 description 19
- 238000006243 chemical reaction Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000002360 preparation method Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- 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
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供了一种软件升级方法及***、电子设备、存储介质,所述方法应用于专用升级设备中,包括:接收代理设备发送的升级信息;其中,所述升级信息是由上位机设备中的虚拟机通过局域网发送给所述代理设备的;将所述升级信息发送给待升级设备;其中,所述升级信息用于所述待升级设备进行软件升级。通过上述方法,能兼容多厂家提高了软件升级的普适性,且支持远程升级以及能提高升级效率。
Description
技术领域
本公开涉及但不限于通信领域,尤其涉及一种软件升级方法及***、电子设备、存储介质。
背景技术
常见的电子设备中包括硬件、软件,软件部分包括:固件、操作***等。软件是整个电子设备的控制大脑,由固件或操作***指挥电子设备的传感器采集各种数据,软件对数据进行分析后指挥马达、显示器等硬件设备做出相应反馈。电子设备中的软件由于新增新功能或者解决运行过程中发现的故障,需要对软件进行升级,如何提升升级的效率或操作的便利性一直以来备受关注。
发明内容
有鉴于此,本公开实施例期望提供一种软件升级方法及***、电子设备、存储介质。
第一方面,本公开实施例提供一种软件升级方法,应用于专用升级设备中,所述方法包括:
接收代理设备发送的升级信息;其中,所述升级信息是由上位机设备中的虚拟机通过局域网发送给所述代理设备的;
将所述升级信息发送给待升级设备;其中,所述升级信息用于所述待升级设备进行软件升级。
在一些实施例中,所述方法还包括:
接收所述待升级设备基于所述升级信息反馈的升级结果信息;
将所述升级结果信息发送给所述代理设备;其中,所述升级结果信息用于所述代理设备通过虚拟机发送给所述上位机设备。
第二方面,本公开实施例提供一种软件升级方法,应用于代理设备中,所述方法包括:
接收上位机设备中的虚拟机通过局域网发送的升级信息;
将所述升级信息发送给专用升级设备;其中,所述升级信息用于所述专用升级设备发送给待升级设备进行软件升级。
在一些实施例中,所述升级信息包括:升级数据、升级控制信号;
所述接收上位机设备中的虚拟机通过局域网发送的升级信息,包括:
基于预设第一传输通道,监听是否接收到所述虚拟机发送的所述升级控制信号;
基于预设第二传输通道,监听是否接收到所述虚拟机发送的所述升级数据;
所述将所述升级信息发送给专用升级设备,包括:
基于所述升级控制信号的监听结果以及所述升级数据的监听结果,将所述升级信息发送给所述专用升级设备。
第三方面,本公开实施例提供一种软件升级方法,应用于上位机设备中,所述方法包括:
利用虚拟机通过局域网连接代理设备;利用所述虚拟机通过所述局域网将升级信息发送给所述代理设备;其中,所述升级信息用于所述代理设备通过专用升级设备发送给待升级设备进行软件升级。
在一些实施例中,所述方法还包括:
利用所述虚拟机接收所述代理设备发送的升级结果信息;其中,所述升级结果信息是由所述待升级设备通过所述专用升级设备反馈给所述代理设备的。
在一些实施例中,所述升级结果信息包括:升级结果数据、升级结果控制信号;
所述利用所述虚拟机接收所述代理设备发送的升级结果信息,包括:
基于预设第三传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果控制信号;
基于预设第四传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果数据;
基于所述升级结果控制信号的监听结果以及所述升级结果数据的监听结果,利用所述虚拟机接收所述代理设备发送的所述升级结果信息。
第四方面,本公开实施例提供一种软件升级***,所述***包括:
上位机设备,利用虚拟机通过局域网连接代理设备;并利用所述虚拟机通过所述局域网发送升级信息给所述代理设备;
所述代理设备,用于接收所述虚拟机发送的所述升级信息,并将所述升级信息发送给专用升级设备;
所述专用升级设备,用于接收所述代理设备发送的所述升级信息;将所述升级信息发送给待升级设备;
所述待升级设备,用于基于所述升级信息进行软件升级。
第五方面,本公开实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面或第二方面或第三方面中所述的方法。
第六方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面或第二方面或第三方面中所述的方法。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开的实施例中,上位机设备通过局域网可连接多台待升级设备,使得能远程升级,且能提高升级效率,同时,能减少因反复插拔物理连接线造成待升级设备端口损坏以及因连接错误导致设备烧毁的情况发生;利用虚拟机控制待升级设备的升级,能兼容多厂家的上位机设备,提高了普适性,且减少对上位机设备中软件的修改;通过代理设备与专用升级设备连接,能减少专用升级设备的改动。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构建本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1为相关技术中一种软件在线升级的实现方式示意图;
图2为相关技术中一种软件离线升级的实现方式示意图;
图3为相关技术中一种专用设备软件升级的实现方式示意图;
图4为本公开实施例提供的一种软件升级方法的实现流程示意图一;
图5为本公开实施例提供的一种虚拟机的实现方式示意图;
图6为本公开实施例提供的一种电子设备接入局域网的连接示意图;
图7为本公开实施例提供的一种代理设备和专用升级设备的连接示意图;
图8为本公开实施例提供的一种软件升级方法的实现流程示意图二;
图9为本公开实施例提供的一种数据转换的实现流程示意图一;
图10为本公开实施例提供的一种软件升级方法的实现流程示意图三;
图11为本公开实施例提供的一种数据转换的实现流程示意图二;
图12为本公开实施例提供的一种软件升级***的交互示意图;
图13为本公开实施例提供的一种软件升级设备的连接流程示意图;
图14为本公开实施例提供的一种软件升级信息发送的流程示意图;
图15为本公开实施例提供的一种软件升级结果信息发送的流程示意图;
图16为本公开实施例提供的一种应用于专用升级设备的软件升级装置示意图;
图17为本公开实施例提供的一种应用于代理设备的软件升级装置示意图;
图18为本公开实施例提供的一种应用于上位机设备的软件升级装置示意图;
图19为本公开实施例提供的一种电子设备的硬件实体示意图。
具体实施方式
为了使本公开的目的、技术方案和优点更加清楚,下面结合附图和实施例对本公开的技术方案进一步详细阐述,所描述的实施例不应视为对本公开的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
本公开所涉及的术语“第一/第二/第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一/第二/第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开的目的,不是旨在限制本公开。
相关技术中对电子设备进行软件升级或修复时,待升级设备可以采用在线升级的方式进行软件升级或修复,还可以采用离线升级的方式进行软件升级或修复。
图1为相关技术中一种软件在线升级的实现方式示意图,如图1所示,升级时电子设备的硬件中内置的软件管理应用程序(Application,APP)L101会从软件发布服务器获取升级软件包,并把升级软件包保存在软件存储区L102,保存完毕后执行安装并重启生效。需要说明的是,部分电子设备硬件中没有内置软件管理APP,例如洗衣机、微波炉、电冰箱这样的设备仅仅需要一道简单的控制程序,以管理数量有限的按钮和指示灯,没有内置软件管理APP的必要,且,它往往只具有有限的硬件资源,不足以内置软件管理APP(L101)。
图2为相关技术中一种软件离线升级的实现方式示意图,如图2所示,通过辅助设备连接软件发布服务器获取升级软件包,把升级软件包下载到辅助设备中,升级软件包下载完毕后,再通过辅助设备与电子设备的硬件连接,把升级软件包上传到电子硬件的软件存储区L202,随后启动软件管理应用程序L201进行升级。其中,辅助设备包括个人计算机(Personal Computer,PC)、智能手机等。需要说明的是,升级过程中需要操作人员的干预,对操作人员有一定的要求,需要操作人员确定升级的软件版本是否正确,否则会造成升级失败。
当待升级设备中的软件损坏无法运行时,待升级设备还可以采用硬件级别的方式进行升级或修复,在升级过程中待升级设备只需要具备物理接口,不需要提供软件支持。图3为相关技术中一种专用设备软件升级的实现方式示意图,如图3所示,专用下载设备的一端通过物理连接线与上位机设备的物理接口相连,另一端通过物理连接线与电子设备的物理接口相连。通过专用下载设备从上位机设备的上位机软件获取升级软件包,再把升级软件包上传到电子硬件的软件存储区L302,随后启动软件管理应用程序L301进行升级。其中,上位机设备包括电脑、平板、面板、触摸屏等能发出操控命令的设备;物理接口包括:RS232接口、串行外设接口(Serial Peripheral Interface,SPI)、通用异步收发器(UniversalAsynchronous Receiver-Transmitter,UART)接口、晶体管-晶体管逻辑(Transistor-Transistor Logic,TTL)接口等;物理连接线包括:通用串行总线(Universal Serial Bus,USB)连接线、RS232连接线、SPI连接线等。
需要说明的是,信号在物理连接线中传播的时候会产生衰减,并且信号的衰减值与物理连接线的长度成正比,衰减到一定程度就会导致误码率过高无法解析出有效的数据,因此连接上位机设备和待升级设备之间的物理连接线不能过长,上位机设备只能近距离操作待升级设备的升级,无法进行远程升级。若上位机设备和待升级设备间距离超过物理连接线最大长度限制(例如USB连接线长度限制是5米、RS232连接线长度限制是10米),这时就需要把设备拆卸下来,升级或修复后再装回去,升级效率较低。另外由于物理连接线的限制导致上位机和待升级设备只能一对一连接,无法对多台待升级设备进行批量升级操作,一方面,使得升级效率较低,一方面,若要批量操作,需增加上位机数量,导致资源利用率较低。且当对多个待升级设备进行升级操作时,需要实验室人员或维护人员通过反复插拔物理连接线进行切换,反复插拔物理连接线容易造成连接的设备的端口损坏,甚至,如果物理连接线连接错误甚至会导致连接的设备烧毁。
对此,本公开提供一种软件升级方法,图4为本公开实施例提供的一种软件升级方法的实现流程示意图一,应用于专用升级设备中,如图4所示,该方法包括如下步骤:
S401、接收代理设备发送的升级信息;其中,所述升级信息是由上位机设备中的虚拟机通过局域网发送给所述代理设备的;
S402、将所述升级信息发送给待升级设备;其中,所述升级信息用于所述待升级设备进行软件升级。
在本公开实施例中,在上位机设备和待升级设备之前加入专用升级设备,上位机设备中的虚拟机通过局域网经代理设备中转与专用升级设备连接,考虑到专用升级设备和待升级设备通过物理连接线只能一对一连接,因此,专用升级设备与待升级设备一一对应互连。需要说明的是,专用升级设备与待升级设备之间的数据是私有协议,取决于设备厂商的定义。
在本公开实施例中,上位机设备中的虚拟机通过局域网经代理设备的中转与专用升级设备连接,可以理解的是,因上位机设备可虚拟多个虚拟机,且虚拟机通过局域网和代理设备连接,使得一台上位机可连接一个或多个代理设备,而一个代理设备至少连接一个专用升级设备,一个专用升级设备连接一个待升级设备,因而通过局域网和虚拟机可以实现一个上位机设备连接多台(至少一台)待升级设备。
其中,待升级设备可以是智能设备,包括智能手机、电脑、游戏机、移动通信产品、智能监控设备、智能家电等,还可以是其他任意需进行软件升级的电子设备,本公开实施例不做限制。待升级设备的软件部分包括固件、操作***等,待升级设备中的软件由于新增新功能或者解决运行过程中发现的故障,需要进行软件升级。待升级设备的硬件上电之后软件可能无法直接升级,还需要引导装载程序(Boot Loader)进行引导才能运行,在上电后开始执行引导装载程序,引导装载程序负责初始化软件运行必须的硬件,然后将所要引导的软件内核映像从存储器上读取到***随机存取存储器(Random Access Memory,RAM)中,最后,让待升级设备的中央处理器(Central Processing Unit,CPU)指向软件内核的入口点上开始执行软件的升级操作。局域网(Local Area Network,LAN)包括:有线局域网、无线局域网(Wireless Local Area Network,WLAN),有线局域网通过专用的网络线缆和设备连接,无线局域网通过无线电波和设备连接;有线局域网类型包括:以太网(Ethernet)、光纤分布式数据接口(Fiber Distributed Data Interface,FDDI)网、令牌环网(Token RingNetwork)、令牌总线网(Token Bus Network)等;WLAN的网络标准包括:移动热点(WirelessFidelity,WIFI)、无线局域网鉴别和保密基础结构(Wireless LAN Authentication andPrivacy Infrastructure,WAPI)等。有线局域网所使用的网络通信协议包括:传输控制协议(Transmission Control Protocol,TCP)、网际互连协议(Internet Protocol,IP)、用户数据报协议(User Datagram Protocol,UDP)、超文本传输协议(Hyper Text TransportProtocol,HTTP)等;无线局域网所使用的网络通信协议包括:802.11b、802.11a、802.11g、有线等效协议(Wired Equivalent Protocol,WEP)等。
需要说明的是,待升级设备通常具备的是物理接口,若和上位机设备通过局域网连接,需改动待升级设备,增加网络接口,且,待升级设备的软件无法运行时,不能执行升级操作。因此,在本公开实施例中,上位机设备通过专用升级设备和待升级设备进行连接,无需待升级设备的软件支持,待升级设备仍能进行升级操作,且能减少待升级设备的改动。其中,网络接口包括:RJ45(Registered Jack 45)接口、连接单元接口(Attachment UnitInterface,AUI)、辅助接口(Auxiliary,AUX)等。
需要说明的是,上位机设备具有上位机软件,且由厂商提供,若对上位机软件做定制修改难度较大,即使做了定制修改也会成为私有方式,仍不具有通用性。且,虽然上位机软件使用的物理接口具有通用读取和写入接口标准,但每个厂商的上位机软件向物理接口中写入和从物理接口中读出的数据是私有的。因此,在本公开实施例中,上位机设备中设置有虚拟机,利用虚拟机将升级信息发送给专用升级设备,无需对上位机设备软件做定制修改,同时能适用于不同厂商,具有普适性。上位机设备采用虚拟物理设备的方式,根据上位机软件的物理接口标准使用软件的方式在虚拟出虚假的专用升级设备,该虚拟设备(虚拟机)并不与专用升级设备通过物理连接线的方式连接,而是使用网络通信协议方式与专用升级设备做逻辑连接,上位机设备利用虚拟机接入局域网。需要说明的是,上位机软件与逻辑设备之间协议是私有的,可以是UART协议或者SPI协议。
图5为本公开实施例提供的一种虚拟机的实现方式示意图,如图5所示,虚拟设备分为两部分:接口层,用于按照上位机设备的接口规范提供统一的设备操作接口,例如:打开模块L501、关闭模块L502、读数据模块L503、写数据模块L504、控制指令(Input OutputControl,IOCTL)模块L505;以及网络层,包括:TCP服务器L506、指令交换模块L507、逻辑设备L508。其中,逻辑设备L508和专用升级设备一一对应,用于虚拟专用升级设备对应的待升级设备,升级软件认为该逻辑设备L508就是待升级设备,升级软件将升级相关指令和数据发送给逻辑设备L508,逻辑设备L508接收到指令和数据后,再把该指令和数据通过局域网发送给远端的专用升级设备;TCP服务器L506,用于接受专用升级设备的TCP连接请求,当专用升级设备通过TCP和虚拟机连接成功后,虚拟机会分配一个逻辑设备和它相对应;指令交换模块L507,用于把RS232或SPI等上位机设备原有的物理接口相应的协议的数据格式和TCP等网络通信协议传输的数据格式进行相互转换。本公开实施例中,逻辑设备L508可以理解为一个虚拟机。
通常,专用升级设备使用RS232或SPI等物理接口和上位机设备连接,不具备网络接口,为了在尽量不改动专用升级设备的情况下,能与上位机设备网络连接,在本公开实施例中,在专用升级设备前增加代理设备,由上位机设备中的虚拟机通过局域网发送升级信息给代理设备,再由代理设备发送给专用升级设备,在无需改动专用升级设备的情况下,使得上位机设备能将升级信息发送给专用升级设备。需要说明的是,虚拟机与代理设备之间通过局域网连接,两者间接收和发送的数据的格式是所采用的网络通信协议的数据格式;代理设备与专用升级设备之间传输的数据格式是所连接的物理接口相应协议的数据格式,示例性的,可以是UART接口数据或者SPI接口数据。
本公开实施例中,上位机设备利用虚拟机与代理设备连接时,可通过网络设备实现远程连接。图6为本公开实施例提供的一种电子设备接入局域网的连接示意图,如图6所示,虚拟设备L602使用TCP协议方式通过代理设备与专用升级设备做逻辑连接,上位机设备利用虚拟设备L602可通过网线接入以太网设备,专用升级设备一端可通过RJ45接口接入以太网设备,另一端可通过物理接口(RS232接口或SPI接口)使用相应的物理连接线与待升级设备连接。其中,以太网设备是一种网络设备,包括路由器、交换机等。
本公开实施例中,代理设备包括:网络芯片、中央处理器(Central ProcessingUnit,CPU)等。其中,网络芯片可以具备有线局域网相应的网络接口,也可以支持无线局域网的网络标准;CPU为主控芯片,一方面,用于控制网络芯片接入局域网,同时利用自身芯片集成的网络接口连接专用升级设备,一方面,用于提供数据接收和数据转换,把从局域网接收的数据的格式转换成物理接口相应协议的数据格式后发送给专用升级设备,相应的,把从专用升级设备收到的数据的格式转换后通过局域网发送给虚拟机。图7为本公开实施例提供的一种代理设备和专用升级设备的连接示意图,如图7所示,专用升级设备通过代理设备接入局域网,代理设备中CPU控制网络芯片通过WiFi或者RJ45接口接入局域网,CPU同时利用自身芯片集成的RS232接口或SPI接口连接专用升级设备。
基于以上,本公开实施例中,利用虚拟机控制待升级设备的升级,无需修改上位机设备中的软件,同时能兼容多厂家的上位机软件,提高了普适性;通过代理设备与专用升级设备连接,能减少对专用升级设备的改动。且,上位机设备通过局域网连接多台待升级设备,使得能远程升级,且能提高升级效率,同时,能减少因反复插拔物理连接线造成待升级设备端口损坏以及因连接错误导致设备烧毁的情况发生。
在一些实施例中,所述方法还包括:
接收所述待升级设备基于所述升级信息反馈的升级结果信息;
将所述升级结果信息发送给所述代理设备;其中,所述升级结果信息用于所述代理设备通过虚拟机发送给所述上位机设备。
本公开实施例中,上位机设备利用虚拟机将升级信息发送给待升级设备后,待升级设备基于升级信息进行软件升级。待升级设备升级完成之后,上位机设备利用虚拟机可接收待升级设备基于升级信息反馈的升级结果信息。示例性,待升级设备成功时,反馈的升级结果信息表征升级完成;待升级设备失败时,反馈的升级结果信息表征升级失败。
在本公开实施例中,待升级设备通过专用升级设备将升级结果信息发送给代理设备,代理设备再将升级结果信息发送给虚拟机,上位机设备利用虚拟接收到升级结果信息。
本公开实施例中,上位机设备接收到升级结果信息后,上位机设备可根据接收到的升级结果信息决策是否继续执行升级操作。示例性的,若接收到表征待升级设备升级成功的升级结果信息,上位机设备不做操作;若接收到表征待升级设备升级失败的升级结果信息,上位机设备可继续给该待升级设备发送升级信息。
本公开实施例中,专用升级设备将待升级设备的升级结果信息反馈给上位机设备,有助于上位机设备检验待升级设备的升级结果。
图8为本公开实施例提供的一种软件升级方法的实现流程示意图二,应用于代理设备中,如图8所示,该方法包括如下步骤:
S801、接收上位机设备中的虚拟机通过局域网发送的升级信息;
S802、将所述升级信息发送给专用升级设备;其中,所述升级信息用于所述专用升级设备发送给待升级设备进行软件升级。
在本公开实施例中,在上位机设备和待升级设备之前加入专用升级设备,上位机设备中的虚拟机通过局域网经代理设备中转与专用升级设备连接,考虑到专用升级设备和待升级设备通过物理连接线只能一对一连接,因此,专用升级设备与待升级设备一一对应互连。
在本公开实施例中,上位机设备中的虚拟机通过局域网经代理设备的中转与专用升级设备连接,可以理解的是,因上位机设备可虚拟多个虚拟机,且虚拟机通过局域网和代理设备连接,使得一台上位机可连接一个或多个代理设备,而一个代理设备至少连接一个专用升级设备,一个专用升级设备连接一个待升级设备,因而通过局域网和虚拟机可以实现一个上位机设备连接多台(至少一台)待升级设备。
在本公开实施例中,上位机设备通过专用升级设备和待升级设备进行连接,无需待升级设备的软件支持,待升级设备仍能进行升级操作,且能减少待升级设备的改动。
在本公开实施例中,上位机设备中设置有虚拟机,利用虚拟机将升级信息发送给专用升级设备,无需对上位机设备软件做定制修改,同时能适用于不同厂商,具有普适性。
在本公开实施例中,在专用升级设备前增加代理设备,由上位机设备中的虚拟机通过局域网发送升级信息给代理设备,再由代理设备发送给专用升级设备,在无需改动专用升级设备的情况下,使得上位机设备能将升级信息发送给专用升级设备。
本公开实施例中,利用虚拟机控制待升级设备的升级,无需修改上位机设备中的软件,同时能兼容多厂家的上位机软件,提高了普适性;通过代理设备与专用升级设备连接,能减少对专用升级设备的改动。且,上位机设备通过局域网连接多台待升级设备,使得能远程升级,且能提高升级效率,同时,能减少因反复插拔物理连接线造成待升级设备端口损坏以及因连接错误导致设备烧毁的情况发生。
在一些实施例中,所述升级信息包括:升级数据、升级控制信号;
所述接收上位机设备中的虚拟机通过局域网发送的升级信息,包括:
基于预设第一传输通道,监听是否接收到所述虚拟机发送的所述升级控制信号;
基于预设第二传输通道,监听是否接收到所述虚拟机发送的所述升级数据;
所述将所述升级信息发送给专用升级设备,包括:
基于所述升级控制信号的监听结果以及所述升级数据的监听结果,将所述升级信息发送给所述专用升级设备。
需要说明的是,TCP协议、RS232协议、SPI协议等网络通信协议虽然都是用来传输交换数据,但是RS232接口、SPI接口等物理接口除了有用于传输数据的物理引脚,还有一些引脚能够传输一些实时的控制信号。在本公开实施例中,升级信息包括:升级数据、升级控制信号。上位机设备利用虚拟机将升级控制信号和升级数据分别发送给代理设备。
在一些实施例中,所述升级控制信号包括第一发送数据信息、第一接收数据信息,还包括以下至少之一:第一请求发送信息、第一清除发送信息、第一数据终端准备信息、第一数据准备信息、第一振铃指示信息。
需要说明的是,不同厂商的专用升级设备使用不同的物理接口,不同的物理接口对应的网络通信协议规定了不同的数据协商机制,例如UART接口通信是通过两个设备设置同样的波特率来保证通信;SPI接口通信是有专用的时钟控制引脚控制数据的收发速率;RS232接口除了基本的发送数据(Transmit Data,TXD)、接收数据(Receive Data,RXD)收发数据外,可以通过载波侦测(Data Carrier Detect,DCD)检测出是否接收到远端的载波信号,还可以通过数据终端准备(Data Terminal Ready,DTR)、数据准备(Data Set Ready,DSR)、请求发送(Request To Send,RTS)、清除发送(Clear To Send,CTS)、振铃指示(RingIndicator,RI)等引脚实现数据的收发控制。示例性的,RS232接口控制帧如表(1)所示:
表1RS232接口控制帧
其中,一个帧由四个字节组成,字节1为序号;字节2~3为要发送的数据的比特(binary digit,bit)数,例如:图中数据长度24表示从数据缓存区取出24bit通过CPU的UART引脚发送出去;字节4为控制信号,1表示输出高电平,0表示输出低电平。
且,不同厂商的专用升级设备对额外的控制引脚使用也不相同,以RS232协议的专用升级设备举例,有的专用升级设备只用RXD、TXD收发数据;有的专用升级设备使用RXD、TXD收发数据同时,还使用DTR引脚控制待升级设备自动复位;而有的专用升级设备厂商用RTS引脚来控制待升级设备自动复位。
本公开虚拟机通过代理设备和专用升级设备物理连接,上位机通过局域网将升级数据发送给待升级设备。需要说明的是,虽然,虚拟机在传输数据时可以控制每次传输的数据量,以及数据传输的间隔时间,还可以通过专用升级设备物理接口的引脚直接与待升级设备之间交换状态信息,但是,当网络延时、网络重组等情况发生时,会导致传输数据量、传输间隔时间改变,以及状态信息的改变。
为了做到尽可能的兼容,在传输升级信息时既要考虑升级数据的收发,还要考虑额外控制信号的传输,同时还要考虑升级数据和升级控制信号之间的同步,另外还需要兼容不同厂商的专用升级设备。除此之外,还要考虑不同厂商的专用升级设备对升级控制引脚是否使用、以及使用的数量不同。
对此,在本公开实施例中,基于预设第一传输通道,代理设备监听是否接收到上位机设备利用虚拟机发送的升级控制信号;基于预设第二传输通道,代理设备监听是否接收到上位机设备利用虚拟机发送的升级数据。本公开通过局域网传输升级数据和升级控制信号时,采用数据和控制信号分离的方式传输,在代理设备和上位机设备的虚拟机间建立有预设第一传输通道和预设第二传输通道;其中,预设第一传输通道用于上位机设备利用虚拟机将升级控制信号传输给代理设备,预设第二传输通道用于上位机设备利用虚拟机将升级数据传输给代理设备。
需要说明的是,是否传输控制信号依赖于不同厂商的专用升级设备是否用到升级控制信号相关的引脚,因此代理设备在监听是否接收到专用升级设备对应的虚拟机发送的升级控制信号和升级数据后,在本公开实施例中,代理设备基于升级控制信号的监听结果以及升级数据的监听结果,将升级信息发送给专用升级设备。
基于以上,本公开实施例中,代理设备基于预设第一传输通道和预设第二传输通道,监听是否接收到升级控制信号和升级数据,并根据监听的结果发送升级信息。考虑到不同厂商的专用升级设备接收的控制信息不同,提高了普适性。
在一些实施例中,所述基于所述升级控制信号的监听结果以及所述升级数据的监听结果,将所述升级信息发送给所述专用升级设备,包括:
若监听到所述升级控制信号和所述升级数据,基于所述升级控制信号将所述升级数据发送给所述专用升级设备;
若未监听到所述升级控制信号且监听到所述升级数据,直接将所述升级数据发送给所述专用升级设备。
在本公开实施例中,代理设备若监听到升级控制信号以及升级数据,基于升级控制信号将升级数据发送给专用升级设备;若没有监听到升级控制信号,但监听到升级数据,直接将升级数据发送给专用升级设备。
本公开实施例中,代理设备在接收到升级数据的同时,可生成一个第一数据指令。其中,该第一数据指令表征代理设备接收到升级数据。图9为本公开实施例提供的一种数据转换的实现流程示意图一,如图9所示,基于预设第一传输通道,上位机虚拟设备的发送控制信号模块L901采用TCP协议将升级控制信号发送给代理设备;基于预设第二传输通道,上位机虚拟设备的发送数据模块L902采用TCP协议将升级数据发送给代理设备。
与此同时,代理设备的监听控制帧模块L903监听是否接收到升级控制信号,监听数据帧模块L904监听是否接收到升级数据。若监听到升级控制信号,解析控制帧模块L905对升级控制信号进行解析,根据解析后的升级控制信号决策是否建立第一控制链路。示例性的,专用升级设备和代理设备通过RS232接口连接时,根据上位机发送升级控制信号对应的RS232接口控制帧(如前述表(1)),决策是否建立第一控制链路,其中,不同的控制帧表征控制信号的不同意义。数据指令判断模块L906用于判断是否接收到第一数据指令,若接收到第一数据指令,数据提取模块L907从缓存中提取升级数据,随后,发送数据模块L908通过物理接口的引脚将升级数据发送给专用升级设备的物理接口模块L912;若没有接收到第一数据指令,发送控制信号模块L909直接将升级控制信号通过物理接口的引脚发送给专用升级设备的物理接口模块L912。
若监听到升级数据,生成第一数据指令,同时,代理设备通过控制链路判断模块L910判断第一控制链路是否存在,若第一控制链路存在,缓存数据模块L911把升级数据放入缓存中,由接收到的升级控制信号来控制升级数据的发送速度以及发送时机;若第一控制链路不存在,发送数据模块L908直接将升级数据通过物理接口的引脚发送给专用升级设备的物理接口模块L912。
若没有监听到升级数据,也没有监听到升级控制信号,则不做处理。
其中,监听控制帧模块L903、监听数据帧模块L904、解析控制帧模块L905、数据指令判断模块L906、数据提取模块L907、发送数据模块L908、发送控制信号模块L909、控制链路判断模块L910、缓存数据模块L911均设置于代理设备。
本公开实施例中,基于升级控制信号将升级数据发送给专用升级设备,由接收到的升级控制信号能控制升级数据发送的速度和时机。
图10为本公开实施例提供的一种软件升级方法的实现流程示意图三,应用于上位机设备中,如图10所示,该方法包括如下步骤:
S1001、利用虚拟机通过局域网连接代理设备;
S1002、利用所述虚拟机通过所述局域网将升级信息发送给所述代理设备;其中,所述升级信息用于所述代理设备通过专用升级设备发送给待升级设备进行软件升级。
在本公开实施例中,上位机设备给待升级设备发送升级信息前,需要和代理设备建立连接,上位机设备利用虚拟机通过局域网连接代理设备。需要说明的是,若上位机设备需要对某一待升级设备进行多次软件升级操作,在与代理设备连接已建立的前提下,无需再次建立连接。
本公开实施例中,利用虚拟机控制待升级设备的升级,无需修改上位机设备中的软件,同时能兼容多厂家的上位机软件,提高了普适性;通过代理设备与专用升级设备连接,能减少对专用升级设备的改动。且,上位机设备通过局域网连接多台待升级设备,使得能远程升级,且能提高升级效率,同时,能减少因反复插拔物理连接线造成待升级设备端口损坏以及因连接错误导致设备烧毁的情况发生。
在一些实施例中,所述方法还包括:
利用所述虚拟机接收所述代理设备发送的升级结果信息;其中,所述升级结果信息是由所述待升级设备通过所述专用升级设备反馈给所述代理设备的。
上位机设备利用虚拟机将升级信息发送给待升级设备后,待升级设备基于升级信息进行软件升级,本公开实施例中,上位机设备利用虚拟机可接收待升级设备反馈的升级结果信息。
在本公开实施例中,待升级设备通过专用升级设备将升级结果信息发送给代理设备,代理设备再将升级结果信息发送给虚拟机,上位机设备利用虚拟接收该升级结果信息。
上位机设备接收到的升级结果信息后,在本公开实施例中,上位机设备可根据接收到的升级结果信息决策是否继续执行升级操作。
本公开实施例中,专用升级设备将待升级设备的升级结果信息反馈给上位机设备,有助于上位机设备检验待升级设备的升级结果。
在一些实施例中,所述升级结果信息包括:升级结果数据、升级结果控制信号;
所述利用所述虚拟机接收所述代理设备发送的升级结果信息,包括:
基于预设第三传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果控制信号;
基于预设第四传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果数据;
基于所述升级结果控制信号的监听结果以及所述升级结果数据的监听结果,利用所述虚拟机接收所述代理设备发送的所述升级结果信息。
需要说明的是,TCP协议、RS232协议、SPI协议等网络通信协议虽然都是用来传输交换数据,但是RS232接口、SPI接口等物理接口除了有用于传输数据的物理引脚,还有一些引脚能够传输一些实时的控制信号。在本公开实施例中,升级结果信息包括:升级结果数据、升级结果控制信号。上位机设备利用虚拟机将升级控制信号和升级数据分别发送给代理设备。
在一些实施例中,所述升级结果控制信号包括第二发送数据信息、第二接收数据信息,还包括以下至少之一:第二请求发送信息、第二清除发送信息、第二数据终端准备信息、第二数据准备信息、第二振铃指示信息。
需要说明的是,不同厂商的专用升级设备使用不同的物理接口,不同的物理接口对应的网络通信协议规定了不同的数据协商机制,且,不同厂商的专用升级设备对额外的控制引脚使用也不相同。
为了做到尽可能的兼容,在传输升级结果信息时既要考虑升级数据的收发,还要考虑额外控制信号的传输,同时还要考虑升级结果数据和升级结果控制信号之间的同步,另外还需要兼容不同厂商的专用升级设备。除此之外,还要考虑不同厂商的专用升级设备对升级控制引脚是否使用、以及使用的数量不同。
对此,在本公开实施例中,基于预设第三传输通道,上位机设备利用虚拟机监听是否接收到代理设备发送的升级结果控制信号;基于预设第四传输通道,上位机设备利用虚拟机监听是否接收到代理设备发送的升级结果数据。其中,升级数据和升级控制信号是由待升级设备通过专用升级设备发送给代理设备的。本公开升级结果数据和升级结果控制信号通过局域网传输时采用数据和控制信号分离的方式传输,在代理设备和上位机设备的虚拟机间建立有预设第三传输通道和预设第四传输通道;其中,预设第三传输通道用于代理设备将升级结果控制信号传输给上位机设备的虚拟机,预设第四传输通道用于代理设备将升级结果数据传输给上位机设备的虚拟机。
代理设备发送升级信息给虚拟机后,在本公开实施例中,虚拟机基于升级结果控制信号的监听结果以及升级结果数据的监听结果,将升级结果信息发送给上位机设备。
基于以上,本公开实施例中,上位机设备利用虚拟机基于预设第三传输通道预设第四传输通道,监听是否接收到升级控制信号和升级结果数据。考虑到不同厂商的专用升级设备收发的控制信息不同,提高了普适性。
在一些实施例中,所述基于所述升级结果控制信号的监听结果以及所述升级结果数据的监听结果,利用所述虚拟机接收所述代理设备发送的所述升级结果信息,包括:
若监听到所述升级结果控制信号和所述升级数据,基于所述升级结果控制信号,利用所述虚拟机接收所述升级结果数据;
若未监听到所述升级结果控制信号且监听到所述升级结果数据,直接利用所述虚拟机接收所述升级结果数据。
在本公开实施例中,上位机设备利用虚拟机若监听到升级结果控制信号以及升级结果数据,基于升级结果控制信号接收升级结果数据;若没有监听到升级结果控制信号,但监听到升级结果数据,直接接收升级结果数据。
本公开实施例中,虚拟机在接收到升级结果数据的同时,可生成一个第二数据指令。其中,该第二数据指令表征虚拟机接收到升级结果数据。图11为本公开实施例提供的一种数据转换的实现流程示意图二,如图11所示,专用升级设备的物理接口模块L912通过物理接口的引脚将升级结果控制信号和升级结果数据发送给代理设备,代理设备通过发送控制信号模块L1101接收升级结果控制信号,通过发送数据模块L1102接收升级结果数据。代理设备在接收到升级结果信息后,基于预设第三传输通道,代理设备的发送控制信号模块L1101采用TCP协议将接收到的升级结果控制信号发送给上位机的虚拟设备,基于预设第四传输通道,代理设备的发送数据模块L1102采用TCP协议将接收到的升级结果数据发送给上位机的虚拟设备。
与此同时,虚拟设备的监听控制帧模块L1103监听是否接收到升级结果控制信号,监听数据帧模块L1104监听是否接收到升级结果数据。若监听到升级结果控制信号,解析控制帧模块L1105对升级结果控制信号进行解析,根据解析后的升级结果控制信号决策是否建立第二控制链路。数据指令判断模块L1106用于判断是否接收到第二数据指令,若接收到第二数据指令,数据提取模块L1107从缓存中提取升级结果数据,发送数据模块L1108通过应用程序界面(Application Program Interface,API)通知上位机软件的物理接口的API(L1112)读取升级结果数据;若没有接收到第二数据指令,发送控制信号模块L1109直接将升级结果控制信号发送给上位机软件。
若监听到升级结果数据,生成第二数据指令,同时,虚拟设备的控制链路判断模块L1110判断第二控制链路是否存在,若第二控制链路存在,缓存数据模块L1111把升级结果数据放入缓存中,由接收到的升级结果控制信号来控制升级结果数据的发送速度以及发送时机;若第二控制链路不存在,发送数据模块L1108直接通过API发送给待升级设备通知上位机软件的物理接口的API(L1112)读取升级结果数据。
若没有监听到升级结果数据,也没有监听到升级结果控制信号,则不做处理。
其中,图11中专用升级设备的物理接口模块L912和图9中专用升级设备的物理接口模块L912可以是同一功能的模块;监听控制帧模块L1103、监听数据帧模块L1104、解析控制帧模块L1105、数据指令判断模块L1106、数据提取模块L1107、发送数据模块L1108、发送控制信号模块L1109、控制链路判断模块L1110、缓存数据模块L1111均设置于上位机设备的虚拟设备。
本公开实施例中,上位机设备基于升级结果控制信号接收升级结果数据,由接收到的升级结果控制信号能控制升级结果数据接收的速度和时机。
图12为本公开实施例提供的一种软件升级***的交互示意图,如图12所示,包括如下步骤:
S1201、上位机设备,利用虚拟机通过局域网连接代理设备;并利用所述虚拟机通过所述局域网发送升级信息给所述代理设备;
S1202、所述代理设备,用于接收所述虚拟机发送的所述升级信息,并将所述升级信息发送给专用升级设备;
S1203、所述专用升级设备,用于接收所述代理设备发送的所述升级信息;将所述升级信息发送给待升级设备;
S1204、所述待升级设备,用于基于所述升级信息进行软件升级。
在本公开实施例中,在上位机设备和待升级设备之前加入专用升级设备,上位机设备中的虚拟机通过局域网经代理设备中转与专用升级设备连接,考虑到专用升级设备和待升级设备通过物理连接线只能一对一连接,因此,专用升级设备与待升级设备一一对应互连。
在本公开实施例中,上位机设备中的虚拟机通过局域网经代理设备的中转与专用升级设备连接,可以理解的是,因上位机设备可虚拟多个虚拟机,且虚拟机通过局域网和代理设备连接,使得一台上位机可连接一个或多个代理设备,而一个代理设备至少连接一个专用升级设备,一个专用升级设备连接一个待升级设备,因而通过局域网和虚拟机可以实现一个上位机设备连接多台(至少一台)待升级设备。
在本公开实施例中,上位机设备通过专用升级设备和待升级设备进行连接,无需待升级设备的软件支持,待升级设备仍能进行升级操作,且能减少待升级设备的改动。
在本公开实施例中,上位机设备中设置有虚拟机,利用虚拟机将升级信息发送给专用升级设备,无需对上位机设备软件做定制修改,同时能适用于不同厂商,具有普适性。
在本公开实施例中,在专用升级设备前增加代理设备,由上位机设备中的虚拟机通过局域网发送升级信息给代理设备,再由代理设备发送给专用升级设备,在无需改动专用升级设备的情况下,使得上位机设备能将升级信息发送给专用升级设备。
在本公开实施例中,上位机设备给待升级设备发送升级信息前,需要和代理设备建立连接,上位机设备利用虚拟机通过局域网连接代理设备。需要说明的是,若上位机设备需要对某一待升级设备进行多次软件升级操作,在与代理设备连接已建立的前提下,无需再次建立连接。
本公开实施例中,利用虚拟机控制待升级设备的升级,无需修改上位机设备中的软件,同时能兼容多厂家的上位机软件,提高了普适性;通过代理设备与专用升级设备连接,能减少对专用升级设备的改动。且,上位机设备通过局域网连接多台待升级设备,使得能远程升级,且能提高升级效率,同时,能减少因反复插拔物理连接线造成待升级设备端口损坏以及因连接错误导致设备烧毁的情况发生。
图13为本公开实施例提供的一种软件升级设备的连接流程示意图,如图13所示,代理设备的上电启动模块L1307、专用升级设备的上电启动模块L1312、待升级设备的上电启动模块L1314在上电后,专用升级设备通过连接设备模块L1313连接待升级设备的连接专用升级设备模块L1315,示例性的,连接设备模块L1313和连接专用升级设备模块L1315可通过物理接口UART或SPI接口进行连接。同时,代理设备通过初始化模块L1308进行TCP连接的初始化,初始化完成后,代理设备的请求连接TCP服务器模块L1309会周期性的尝试连接虚拟设备,若虚拟设备中的TCP服务器还没有启动,代理设备无法连接成功。
当上位机设备通过上位机软件接收到用户请求连接待升级设备的指令时,上位机软件的连接设备模块L1301调用虚拟设备的打开接口模块L1303,随后,虚拟设备的启动服务器模块L1304会启动TCP服务器,同时通过等待客户端连接模块L1305等待接收代理设备发送的TCP连接请求,若接收到代理设备发送的TCP连接请求,虚拟设备和代理设备会建立并维护TCP连接通路用于彼此之间的传输数据和控制信号。
在等待接收代理设备发送的TCP连接请求的过程中,虚拟设备的连接请求判断模块L1306不断判断和代理设备是否连接成功,与此同时,在发送请求连接后,代理设备的连接请求判断模块L1310不断判断和虚拟设备是否连接成功。若虚拟设备的连接请求判断模块L1306判断和代理设备连接成功,虚拟设备将通知上位机软件的进入升级模块L1302进入升级模式,若虚拟设备的连接请求判断模块L1306判断未和代理设备连接,则继续等待代理设备发送的连接请求;若代理设备的连接请求判断模块L1310判断和虚拟设备连接成功,代理设备将发送升级指令(升级信息)给专用升级设备,以通知待升级设备进入升级模式,若代理设备的连接请求判断模块L1310判断未连接虚拟设备,等待连接模块L1311继续等待代理设备的TCP连接请求。需要说明的是,若代理设备和虚拟设备未建立连接,不做等待马上又发起重试,容易造成代理设备的CPU资源突然上升到100%而无法使用,而且尝试过于频繁也会被服务器端的防火墙认为是攻击行为拒绝服务。因此本公开实施例中,代理设备会通过等待连接模块L1311等待预设时长后,再发送连接请求。示例性的,预设时长可设置为3秒,本公开实施例不做限定。
在代理设备通过待升级设备的等待指令模块L1316接收到专用升级设备发送的升级指令后,通过进入升级模块L1317进入升级模式。
图14为本公开实施例提供的一种软件升级信息发送的流程示意图,如图14所示,上位机软件的写数据模块L1401调用虚拟设备的写数据接口模块L1402的写数据接口,将升级信息发送给虚拟设备,虚拟设备通过数据格式转换模块L1403将接收到的升级信息进行格式转换。示例性的,上位机软件发送的升级信息数据格式是UART协议或者SPI协议相应的格式,虚拟设备需要把该升级信息作为TCP数据的消息体,封装TCP包通过IP网络发送出去,然后,虚拟设备通过数据格式转换模块L1403将UART协议或者SPI协议相应的数据格式转成成TCP协议相应的数据格式。
在上位机软件与虚拟设备之间的数据的格式转换完成后,虚拟设备通过发送数据模块L1404将升级信息中的升级数据发送给代理设备,并通过发送指令模块L1405将升级信息中的升级控制信号发送给代理设备。代理设备通过等待数据模块L1406监听是否接收到升级数据,同时,通过等待控制信号模块L1408监听是否接收到升级控制信号,若监听到升级数据,解析数据模块L1407对升级数据进行解析;若监听到升级控制信号,解析控制帧模块L1409对升级控制信号进行解析;若未监听到升级控制信号和升级数据,则继续监听。
在监听到升级信息后,代理设备通过数据格式转换模块L1410将解析后的升级信息的格式转换成和专用设备通信的协议相应的数据格式,随后,代理设备的发送数据模块L1411通过物理接口的引脚将升级信息发送给专用升级设备。专用升级设备在接收到升级信息后,通过传输升级信息模块L1412将接收到的升级信息发送给待升级设备。待升级设备通过等待升级信息模块L1413监听是否接收到升级信息,若接收到升级信息,通过执行指令模块L1414执行升级操作;若没有接收到升级信息,则继续等待升级信息。
图15为本公开实施例提供的一种软件升级结果信息发送的流程示意图,如图15所示,待升级设备通过升级命令执行模块L1515调用执行命令模块L1516执行升级操作,待执行升级操作后,把升级结果信息传输给专用升级设备,随后,专用升级设备通过传输升级结果信息模块L1514把接收到的升级结果信息发送给代理设备。代理设备通过等待执行结果模块L1510监听是否接收到升级结果信息,若监听到升级结果信息,通过数据转换模块L1511将接收到的升级结果信息的格式转换成和虚拟设备通信的网络通信协议相应的数据格式,随后,通过发送数据模块L1512将升级结果信息中的升级结果数据发送给代理设备,并通过发送指令模块L1513将升级结果信息中的升级结果控制信号发送给代理设备。
在上位机软件通过请求设备数据模块L1501调用虚拟设备的读数据接口模块L1503的读数据接口后,虚拟设备通过等待数据模块L1504监听是否接收到升级结果数据,同时,通过等待控制信号模块L1506监听是否接收到升级结果控制信号,若监听到升级结果数据,虚拟设备通过解析数据帧模块L1505对升级结果数据进行解析;若监听到升级结果控制信号,虚拟设备通过解析控制帧模块L1507对升级结果控制信号进行解析;若未监听到升级结果控制信号和升级结果数据,则继续监听。
在监听到升级结果信息后,虚拟设备通过数据格式转换模块L1508将解析后的升级结果控制信息的格式转换成上位机软件对应的数据格式,并利用发送数据模块L1509通过虚拟物理接口将升级结果信息发送给上位机软件,同时,上位机软件通过读取数据模块L1502接收虚拟设备发送的升级结果信息。
图16为本公开实施例提供的一种应用于专用升级设备的软件升级装置示意图,如图16所示,软件升级装置1600包括:
第一接收模块1601,用于接收代理设备发送的升级信息;其中,所述升级信息是由上位机设备中的虚拟机通过局域网发送给所述代理设备的;
第一发送模块1602,用于将所述升级信息发送给待升级设备;其中,所述升级信息用于所述待升级设备进行软件升级。
在一些实施例中,所述装置还包括:
第二接收模块1603,用于接收所述待升级设备基于所述升级信息反馈的升级结果信息;
第二发送模块1604,用于将所述升级结果信息发送给所述代理设备;其中,所述升级结果信息用于所述代理设备通过虚拟机发送给所述上位机设备。
图17为本公开实施例提供的一种应用于代理设备的软件升级装置示意图,如图17所示,软件升级装置1700包括:
第三接收模块1701,用于接收上位机设备中的虚拟机通过局域网发送的升级信息;
第三发送模块1702,用于将所述升级信息发送给专用升级设备;其中,所述升级信息用于所述专用升级设备发送给待升级设备进行软件升级。
在一些实施例中,所述升级信息包括:升级数据、升级控制信号;
所述第三接收模块1701,还用于基于预设第一传输通道,监听是否接收到所述虚拟机发送的所述升级控制信号;基于预设第二传输通道,监听是否接收到所述虚拟机发送的所述升级数据;
所述第三发送模块1702,还用于基于所述升级控制信号的监听结果以及所述升级数据的监听结果,将所述升级信息发送给所述专用升级设备。
图18为本公开实施例提供的一种应用于上位机设备的软件升级装置示意图,如图18所示,软件升级装置1800包括:
第一连接模块1801,用于利用虚拟机通过局域网连接代理设备;
第四发送模块1802,用于利用所述虚拟机通过所述局域网将升级信息发送给所述代理设备;其中,所述升级信息用于所述代理设备通过专用升级设备发送给待升级设备进行软件升级。
在一些实施例中,所述装置还包括:
第四接收模块1803,用于利用所述虚拟机接收所述代理设备发送的升级结果信息;其中,所述升级结果信息是由所述待升级设备通过所述专用升级设备反馈给所述代理设备的。
在一些实施例中,所述升级结果信息包括:升级结果数据、升级结果控制信号;
所述第四接收模块1803,还用于基于预设第三传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果控制信号;基于预设第四传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果数据;基于所述升级结果控制信号的监听结果以及所述升级结果数据的监听结果,利用所述虚拟机接收所述代理设备发送的所述升级结果信息。
图19为本公开实施例中电子设备的一种硬件实体示意图,如图19所示,该电子设备1900的硬件实体包括:处理器1901、通信接口1902和存储器1903,其中:处理器1901通常控制电子设备1900的总体操作。通信接口1902可以使电子设备通过网络与其他终端或服务器通信。
存储器1903配置为存储由处理器1901可执行的指令和应用,还可以缓存待处理器1901以及电子设备1900中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random AccessMemory,RAM)实现。处理器1901、通信接口1902和存储器1903之间可以通过总线1904进行数据传输。其中,处理器1901用于执行上述方法中的部分或全部步骤。
对应地,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述方法中的部分或全部步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开存储介质和设备实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本公开的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本公开的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本公开所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分别的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本公开各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本公开上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本公开的实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种软件升级方法,其特征在于,应用于专用升级设备中,所述方法包括:
接收代理设备发送的升级信息;其中,所述升级信息是由上位机设备中的虚拟机通过局域网发送给所述代理设备的;
将所述升级信息发送给待升级设备;其中,所述升级信息用于所述待升级设备进行软件升级。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述待升级设备基于所述升级信息反馈的升级结果信息;
将所述升级结果信息发送给所述代理设备;其中,所述升级结果信息用于所述代理设备通过虚拟机发送给所述上位机设备。
3.一种软件升级方法,其特征在于,应用于代理设备中,所述方法包括:
接收上位机设备中的虚拟机通过局域网发送的升级信息;
将所述升级信息发送给专用升级设备;其中,所述升级信息用于所述专用升级设备发送给待升级设备进行软件升级。
4.根据权利要求3所述的方法,其特征在于,所述升级信息包括:升级数据、升级控制信号;
所述接收上位机设备中的虚拟机通过局域网发送的升级信息,包括:
基于预设第一传输通道,监听是否接收到所述虚拟机发送的所述升级控制信号;
基于预设第二传输通道,监听是否接收到所述虚拟机发送的所述升级数据;
所述将所述升级信息发送给专用升级设备,包括:
基于所述升级控制信号的监听结果以及所述升级数据的监听结果,将所述升级信息发送给所述专用升级设备。
5.一种软件升级方法,其特征在于,应用于上位机设备中,所述方法包括:
利用虚拟机通过局域网连接代理设备;
利用所述虚拟机通过所述局域网将升级信息发送给所述代理设备;其中,所述升级信息用于所述代理设备通过专用升级设备发送给待升级设备进行软件升级。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
利用所述虚拟机接收所述代理设备发送的升级结果信息;其中,所述升级结果信息是由所述待升级设备通过所述专用升级设备反馈给所述代理设备的。
7.根据权利要求6所述的方法,其特征在于,所述升级结果信息包括:升级结果数据、升级结果控制信号;
所述利用所述虚拟机接收所述代理设备发送的升级结果信息,包括:
基于预设第三传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果控制信号;
基于预设第四传输通道,利用所述虚拟机监听是否接收到所述代理设备发送的所述升级结果数据;
基于所述升级结果控制信号的监听结果以及所述升级结果数据的监听结果,利用所述虚拟机接收所述代理设备发送的所述升级结果信息。
8.一种软件升级***,其特征在于,所述***包括:
上位机设备,利用虚拟机通过局域网连接代理设备;并利用所述虚拟机通过所述局域网发送升级信息给所述代理设备;
所述代理设备,用于接收所述虚拟机发送的所述升级信息,并将所述升级信息发送给专用升级设备;
所述专用升级设备,用于接收所述代理设备发送的所述升级信息;将所述升级信息发送给待升级设备;
所述待升级设备,用于基于所述升级信息进行软件升级。
9.一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至2或权利要求3至4或权利要求5至7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至2或权利要求3至4或权利要求5至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211460762.0A CN116915602A (zh) | 2022-11-17 | 2022-11-17 | 软件升级方法及***、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211460762.0A CN116915602A (zh) | 2022-11-17 | 2022-11-17 | 软件升级方法及***、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116915602A true CN116915602A (zh) | 2023-10-20 |
Family
ID=88365435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211460762.0A Pending CN116915602A (zh) | 2022-11-17 | 2022-11-17 | 软件升级方法及***、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116915602A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117411787A (zh) * | 2023-12-13 | 2024-01-16 | 江苏省电子信息产品质量监督检验研究院(江苏省信息安全测评中心) | 一种面向局域网内多种软件的集中式升级方法及*** |
-
2022
- 2022-11-17 CN CN202211460762.0A patent/CN116915602A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117411787A (zh) * | 2023-12-13 | 2024-01-16 | 江苏省电子信息产品质量监督检验研究院(江苏省信息安全测评中心) | 一种面向局域网内多种软件的集中式升级方法及*** |
CN117411787B (zh) * | 2023-12-13 | 2024-03-08 | 江苏省电子信息产品质量监督检验研究院(江苏省信息安全测评中心) | 一种面向局域网内多种软件的集中式升级方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9116821B2 (en) | Method and system for USB device virtualization | |
US8856290B2 (en) | Method and apparatus for exchanging configuration information in a wireless local area network | |
CN103517110B (zh) | 一种多屏互动通信***和方法 | |
US20150077231A1 (en) | Method, apparatus, and system for intelligently controlling device, and plug-and-play device | |
US7945710B2 (en) | Apparatus enabling the human interface device to provide a smart card interface and operating method therein | |
US9667487B2 (en) | Method and apparatus for changing input type in input system using universal plug and play | |
JP5307276B2 (ja) | Usb装置の遠隔制御方法及びこれを実行するシステム | |
US10108379B2 (en) | Information processing apparatus, method of controlling the same and storage medium | |
US9326115B2 (en) | Information processing system, information processing method, mobile phone, server, and control method and control program thereof | |
CN110069288B (zh) | Usb设备共享方法、装置及*** | |
CN116915602A (zh) | 软件升级方法及***、电子设备、存储介质 | |
US9244699B2 (en) | Method and system for audio device virtualization | |
JP6665190B2 (ja) | ネットワーク共有実施方法及び装置 | |
WO2012094853A1 (zh) | 终端软件的安装方法、装置和*** | |
US20060168153A1 (en) | Method of configuring wireless device | |
CN112486595A (zh) | 一种存储设备初始化的方法、存储设备和服务器 | |
CN104797004A (zh) | 主从设备间实现自动组网的方法 | |
WO2011094976A1 (zh) | 一种无线数据卡、无线数据卡与电脑侧的通信方法及*** | |
US9525757B2 (en) | Information processing apparatus that controls connection of devices, method of controlling the apparatus, and device control system | |
EP2829985A1 (en) | Information processing system, information processing method, server, control method therefor, and control program | |
CN105378692A (zh) | 通用串行总线数据路由 | |
JP2014127121A (ja) | 携帯端末、携帯端末の制御方法、およびデバイス制御システム | |
TWI723637B (zh) | 遊戲系統及其操作方法 | |
US11865441B2 (en) | Intelligent Wi-Fi high performance support for gaming mode | |
JP6281369B2 (ja) | 通信システム及び通信プログラム |
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 |