CN112954036A - 一种软件升级方法、终端设备及系统 - Google Patents
一种软件升级方法、终端设备及系统 Download PDFInfo
- Publication number
- CN112954036A CN112954036A CN202110147992.0A CN202110147992A CN112954036A CN 112954036 A CN112954036 A CN 112954036A CN 202110147992 A CN202110147992 A CN 202110147992A CN 112954036 A CN112954036 A CN 112954036A
- Authority
- CN
- China
- Prior art keywords
- feature
- data
- upgrading
- feature packet
- terminal equipment
- 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.)
- Granted
Links
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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- 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
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)
- Stored Programmes (AREA)
Abstract
本发明涉及通信技术领域,尤其涉及一种软件升级方法、终端设备及系统,该方法包括:在上电时,进入引导加载程序BootLoader阶段;在第一预设时间内,侦听所述服务器广播发送的携带有标识数据的特征包,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;若侦听到所述特征包,则接收所述特征包,并进入软件升级流程;在所述软件升级流程中,根据所述特征包,判断是否获得完整升级数据;若是,则根据所述完整升级数据进行软件升级。因此,本发明使多个终端设备在BootLoader阶段进入软件升级流程,避免了终端设备的内核及文件系统启动加载的情况,降低升级的不确定性,提升了安全性和效率。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种软件升级方法、终端设备及系统。
背景技术
由于技术的不断进步和新业务的出现,通过更新终端设备软件的方法可以在不增加成本的基础上为用户提供更好的服务。但终端设备软件的升级存在一定的风险,例如,升级过程中,终端设备意外掉电或者操作失误就会造成整个系统软件的损害,以致升级时数据丢失。如果终端设备是单系统镜像的终端设备,受到损害时,只能将终端设备送到厂家进行维修。因此,终端设备采用系统双备份机制,以解决终端设备升级时所遇到的问题。
系统双备份机制,支持升级过程异常断电,异常操作,启动异常切换等操作。此机制还要求完整改制终端设备软件时,则会同时刷新终端设备的主、备分区,即刷新终端设备的Flash闪存中的主分区和备分区。通过系统双备份机制进行终端设备升级时,为了避免活动分区的应用程序擦写了自己,需使终端设备是重启两次,浪费了时间;同时,基于Linux系统完全启动后的应用程序对配置分区的擦写,都会影响终端设备升级的不确定性。
因此,避免终端设备在升级中存在的不稳定性是当前亟需解决的问题。
发明内容
本申请实施例通过提供一种软件升级方法、终端设备及系统,解决了现有技术中避免终端设备在升级中存在的不稳定性的技术问题,避免了闪存升级时,活动分区的应用程序擦写了自己,降低了终端设备升级的不确定性,提升了终端设备升级的安全性和效率。
第一方面,本发明实施例提供一种软件升级方法,应用于终端设备中,所述终端设备通过交换机与服务器通信连接,所述方法包括:
在上电时,进入引导加载程序BootLoader阶段;
在第一预设时间内,侦听所述服务器广播发送的携带有标识数据的特征包,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;
若侦听到所述特征包,则接收所述特征包,并进入软件升级流程;
在所述软件升级流程中,根据所述特征包,判断是否获得完整升级数据;
若是,则根据所述完整升级数据进行软件升级。
优选的,所述特征包还携带有所述特征包的第一数据大小值、以及所述完整升级数据的第二数据大小值;所述根据所述特征包,判断是否获得完整升级数据,包括:
接收多个特征包,所述多个特征包互不相同;
从每个所述特征包中提取对应的所述第一数据大小值;
根据提取到的所述第一数据大小值,获得所述多个特征包的第三数据大小值;
将所述第三数据大小值与所述第二数据大小值进行比较,获得比较结果;
根据所述比较结果,判断是否获得所述完整升级数据。
优选的,所述特征包还携带有编号;所述接收多个特征包,所述多个特征包互不相同,包括:
针对接收到的每个所述特征包,提取所述特征包携带的所述编号;
判断所述编号是否已被记录;
若是,则丢弃所述特征包;
若否,则记录所述编号,并保存所述特征包。
优选的,所述根据所述比较结果,判断是否获得所述完整升级数据,包括:
若所述比较结果为第一比较结果,确定获得所述完整升级数据,其中,所述第三数据大小值与所述第二数据大小值相等;
若所述比较结果为第二比较结果,确定未获得所述完整升级数据,其中,所述第二比较结果为所述第三数据大小值与所述第二数据大小值不相等。
优选的,所述若所述比较结果为第二比较结果,所述方法还包括:
在第二预设时间内,若未侦听到任何所述特征包,则退出所述BootLoader阶段,并进行启动流程,所述启动流程用于控制所述终端设备启动,并运行原软件;
若侦听到所述特征包,则执行所述根据所述特征包,判断是否获得完整升级数据的步骤。
优选的,所述在第一预设时间内,侦听所述服务器广播发送的特征包之后,还包括:
若未侦听到所述特征包,则退出所述BootLoader阶段,并进行启动流程,所述启动流程用于控制所述终端设备启动。
优选的,所述标识数据包括:IP地址或端口号。
优选的,所述根据所述完整升级数据进行软件升级,包括;
当对所述终端设备的第一分区升级完成后,根据所述完整升级数据对所述终端设备的第二分区进行升级,其中,所述终端设备中设置有所述第一分区和所述第二分区;
在所述第二分区升级完成后,输出提示信息,其中,所述提示信息用于表示所述第一分区和所述第二分区均升级完成。
基于同一发明构思,第三方面,本发明提供一种终端设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现软件升级方法的步骤。
基于同一发明构思,第四方面,本发明提供一种计软件升级系统,包括:服务器、交换机和多个终端设备,所述服务器通过所述交换机与多个所述终端设备连接;
所述服务器,用于:将完整升级数据分割成多个数据包;将多个所述数据包分别进行封装,获得多个特征包,所述特征包携带有标识数据,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;通过所述交换机,将多个所述特征包广播发送至每个所述终端设备;
所述终端设备,用于:在上电时,进入引导加载程序BootLoader阶段;在第一预设时间内,侦听所述服务器广播发送的携带有所述标识数据的所述特征包,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;若侦听到所述特征包,则接收所述特征包,并进入软件升级流程;在所述软件升级流程中,根据所述特征包,判断是否获得完整升级数据;若是,则根据所述完整升级数据进行软件升级。
本发明实施例中的一个或多个技术方案,至少具有如下技术效果或优点:
1、在本申请实施例中,终端设备与服务器通过交换机进行通信连接,处于同一局域网。终端设备在上电时,进入BootLoader阶段;再在在第一预设时间内,侦听服务器广播发送的携带有标识数据的特征包,标识数据表示特征包用于对终端设备进行软件升级;若侦听到特征包,则接收特征包,并进入软件升级流程;然后,在软件升级流程中,根据特征包,判断是否获得完整升级数据;若是,则根据完整升级数据进行软件升级。本实施例的方法能使多个终端设备进行批量升级,提高了终端设备的升级效率。而且终端设备是在BootLoader阶段进入软件升级流程,避免了终端设备的内核及文件系统启动加载的情况,降低升级的不确定性,提升了安全性和效率。故而解决了终端设备在升级中存在的不稳定性的技术问题。
2、在本申请实施例中,终端设备会自动识别是否进入软件升级流程或进入启动流程,实现了自动化升级功能。
3、在本申请实施例中,在软件升级流程中,终端设备接收特征包,会对特征包进行判断,判断接收的特征包是否为唯一的特征包,以避免接收重复的特征包,防止数据重复混乱,以保证保存的特征包互不相同,不影响终端设备终端的升级。
4、在本申请实施例中,终端设备根据特征包,判断是否获得完整升级数据;若是,则根据完整升级数据进行软件升级,实现了自动、完整的升级过程,提高了升级安全性和稳定性。
5、在本申请实施例中,终端设备的Flash设有多个分区升级时,在成功升级第一个分区后,其他分区直接复制第一个分区的完整升级数据进行升级,实现了终端设备的一次性升级,避免全Flash升级中活动分区的应用程序自己擦写了自己,降低升级的不确定性,提升了终端设备升级的安全性和效率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考图形表示相同的部件。在附图中:
图1示出了本发明实施例中的一种软件升级方法的步骤流程示意图;
图2示出了本发明实施例中的一种终端设备的模块示意图;
图3示出了本发明实施例中的一种软件升级系统的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
本发明第一实施例提供了一种软件升级方法,如图1所示,软件升级方法包括:
S101,在上电时,进入引导加载程序BootLoader阶段;
S102,在第一预设时间内,侦听服务器广播发送的携带有标识数据的特征包,标识数据表示特征包用于对终端设备进行软件升级;
S103,若侦听到特征包,则接收特征包,并进入软件升级流程;
S104,在软件升级流程中,根据特征包,判断是否获得完整升级数据;
S105,若是,则根据完整升级数据进行软件升级。,
需要说明的是,本实施例的方法应用于终端设备,终端设备通过交换机和服务器通信连接,以使终端设备和服务器处于同一局域网中,为后续终端设备的软件升级提供环境基础。其中,处于同一局域网中的终端设备存在多个,终端设备是嵌入式设备,例如,光猫、手机等。
在执行步骤S101中,终端设备一上电,会进行启动。在终端设备的启动流程中,设有引导加载程序BootLoader阶段,即BootLoader阶段是启动流程中的一个阶段。本实施例的方法在终端设备启动的标准流程中设置了BootLoader阶段,为后续终端设备升级提供了环境基础。
结束步骤S101后,即可执行步骤S102和步骤S103,在第一预设时间内,侦听服务器广播发送的携带有标识数据的特征包,标识数据表示特征包用于对终端设备进行软件升级;若侦听到所述特征包,则接收所述特征包,并进入软件升级流程。
需要说明的是,处于同一局域网中的服务器预存有完整升级数据,它先将完整升级数据分割成多个数据包;再将多个数据包分别进行封装,生成多个特征包,特征包携带有标识数据,标识数据表示特征包用于对终端设备进行软件升级;然后,通过交换机,将多个特征包广播发送至每个终端设备。其中,标识数据包括:IP地址或端口号或其他特殊字段。标识数据是终端设备和服务器预先约定的标记,服务器会循环广播发送携带有标识数据的特征包至终端设备。
具体地,终端设备上电时,进入BootLoader阶段后,即此时终端设备处于BootLoader阶段。接着,在第一预设时间内,终端设备会侦听是否有服务器广播发送的携带有标识数据的特征包。其中,第一预设时间根据实际需求而设置,通常设置为1.5秒至3秒。若在第一预设时间内,终端设备侦听到特征包,接收特征包,并识别到特征包中携带的标识数据,则进入软件升级流程当中。若在第一预设时间内,终端设备始终未侦听到特征包,则退出BootLoader阶段,进行启动流程。其中,启动流程是用于控制终端设备正常启动的流程。
为了更清楚说明终端设备如何进入软件升级流程,下面举例说明:
假设终端设备的启动流程分为第一阶段,第二阶段和第三阶段,BootLoader阶段为第二阶段。终端设备上电时,会立即进入启动流程,则会依次进入第一阶段,第二阶段和第三阶段。当终端设备进入到BootLoader阶段(第二阶段)时,会在此阶段中等待1.5秒,侦听是否有服务器广播发送的特征包。若在1.5秒内,侦听到特征包,则进入BootLoader阶段中的软件升级流程。若在1.5秒内,未侦听到特征包,则退出BootLoader阶段,进入第三阶段,即进行启动流程。
在具体实施过程中,特征包还携带有编号、特征包的第一数据大小值、以及完整升级数据的第二数据大小值。其中,编号为每个特征包的编号,例如,编号为1的特征包、编号为2的特征包等等。特征包的第一数据大小值表示该特征包的承载的数据大小值,例如,编号为1的特征包承载50M的数据,编号为2的特征包承载30M的数据。完整升级数据的第二数据大小值表示终端设备升级所需要的完整升级数据的大小值,例如,终端设备某次升级需要1000M的数据,1000M为完整升级数据的大小值。
在步骤S104的具体实施过程中,终端设备会在软件升级流程中,会接收多个特征包,且多个特征包互不相同,具体包括:
针对接收到的每个特征包,提取特征包携带的编号;判断编号是否已被记录;若是,则丢弃特征包;若否,则记录编号,并保存特征包。
在软件升级流程中,终端设备会持续接收特征包,接收一个特征包,就会提取特征包的编号,再将编号与已记录的编号进行比对。若提取的编号为已记录的编号,则丢弃该特征包;若提取的编号为未记录的编号,则记录此提取的编号,并保存此特征包。例如,终端设备接收一个特征包A,提取A的编号为12,将编号12与已记录的编号进行比对,若12为已记录的编号,则丢弃特征包A;若12为未记录的编号,则记录编号12,并保存特征包A。因此,终端设备会避免接收重复的特征包,避免数据混乱,以保证保存的特征包互不相同。
执行步骤S104时,具体包括:
接收多个特征包,多个特征包互不相同;从每个特征包中提取对应的第一数据大小值;根据提取到的第一数据大小值,获得多个特征包的第三数据大小值;将第三数据大小值与第二数据大小值进行比较,获得比较结果;根据比较结果,判断是否获得完整升级数据。
根据比较结果,判断是否获得完整升级数据的步骤,具体包括:
若比较结果为第一比较结果,确定获得完整升级数据,其中,第三数据大小值与第二数据大小值相等;
若比较结果为第二比较结果,确定未获得完整升级数据,其中,第二比较结果为第三数据大小值与第二数据大小值不相等。
具体地,终端设备接收到多个互不相同的特征包后,从每个特征包中提取对应的第一数据大小值;再将每个第一数据大小值进行相加,生成第三数据大小值;然后,将第三数据大小值与第二数据大小值进行比较,获得比较结果;最后,根据比较结果,判断是否获得完整升级数据。
若第三数据大小值与第二数据大小值相等,生成第一比较结果,则终端设备确定获得完整升级数据,然后,终端设备立即执行步骤S105。若第三数据大小值与第二数据大小值不相等,生成第二比较结果,则终端设备确定未获得完整升级数据。
当比较结果为第二比较结果时,终端设备会在第二预设时间内,侦听是否有服务器广播发送的特征包。若未侦听到任何特征包,则退出BootLoader阶段,并进行启动流程,启动流程用于控制终端设备启动,并运行原软件;若侦听到特征包,则执行根据特征包,判断是否获得完整升级数据的步骤。
需要说明的是,第二预设时间根据实际需求而设置,通常设置为5秒至10秒。具体地,在比较结果为第二比较结果时,终端设备会接收下一个特征包。当在10秒内,终端设备接收到任何的特征包,则终端设备执行步骤S104。当在10秒内,终端设备未接收任何特征包,则终端设备退出BootLoader阶段,进行启动流程。此时,终端设备已接收的特征包并不是完整升级数据,表明终端设备此次升级不成功;则终端设备在启动流程完毕后,会输出升级失败的提示信息,或通过指示灯表示,终端设备还会将已接收的特征包全部丢弃。
若终端设备的Flash(闪存)未存在分区进行升级时,终端设备执行步骤S105,即升级成功,终端设备会输出升级成功的提示信息,或通过指示灯表示。
若终端设备的Flash设有第一分区和第二分区,终端设备执行步骤S105,具体包括;
当对终端设备的第一分区升级完成后,根据完整升级数据对终端设备的第二分区进行升级,其中,终端设备中设置有第一分区和第二分区;在第二分区升级完成后,输出提示信息,其中,提示信息用于表示第一分区和第二分区均升级完成。
具体地,若终端设备有第一分区和第二分区进行升级时,第一分区根据前述步骤S101至步骤S105进行升级后,第二分区直接复制第一分区的完整升级数据进行升级。第一分区和第二分区升级成功后,终端设备输出升级成功的提示信息,或通过指示灯表示。若终端设备的Flash有多个分区时,其他分区直接复制第一分区的完整升级数据进行升级,实现对终端设备的多个分区进行升级。
还需要说明的是,终端设备在升级成功后,终端设备根据实际需求而设置为停留在BootLoader阶段或继续进行启动流程或其他的流程。
本发明实施例中的一个或多个技术方案,至少具有如下技术效果或优点:
1、在本实施例中,终端设备与服务器通过交换机进行通信连接,处于同一局域网。终端设备在上电时,进入BootLoader阶段;再在在第一预设时间内,侦听服务器广播发送的携带有标识数据的特征包,标识数据表示特征包用于对终端设备进行软件升级;若侦听到特征包,则接收特征包,并进入软件升级流程;然后,在软件升级流程中,根据特征包,判断是否获得完整升级数据;若是,则根据完整升级数据进行软件升级。本实施例的方法能使多个终端设备进行批量升级,提高了终端设备的升级效率。而且终端设备是在BootLoader阶段进入软件升级流程,避免了终端设备的内核及文件系统启动加载的情况,降低升级的不确定性,提升了安全性和效率。故而解决了终端设备在升级中存在的不稳定性的技术问题。
2、在本实施例中,终端设备会自动识别是否进入软件升级流程或进入启动流程,实现了自动化升级功能。
3、在本实施例中,在软件升级流程中,终端设备接收特征包,会对特征包进行判断,判断接收的特征包是否为唯一的特征包,以避免接收重复的特征包,防止数据重复混乱,以保证保存的特征包互不相同,不影响终端设备终端的升级。
4、在本实施例中,终端设备根据特征包,判断是否获得完整升级数据;若是,则根据完整升级数据进行软件升级,实现了自动、完整的升级过程,提高了升级安全性和稳定性。
5、在本实施例中,终端设备的Flash设有多个分区升级时,在成功升级第一个分区后,其他分区直接复制第一个分区的完整升级数据进行升级,实现了终端设备的一次性升级,避免全Flash升级中活动分区的应用程序自己擦写了自己,降低升级的不确定性,提升了终端设备升级的安全性和效率。
实施例二
基于相同的发明构思,本发明第二实施例还提供了一种终端设备,如图2所示,包括:存储器204、处理器202及存储在存储器204上并可在处理器202上运行的计算机程序,所述处理器202执行所述计算机程序时可以实现上述的软件升级方法中的任一方法步骤。
其中,在图2中,总线架构(用总线200来代表),总线200可以包括任意数量的互联的总线和桥,总线200将包括由处理器202代表的一个或多个处理器和存储器204代表的存储器的各种电路链接在一起。总线200还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口206在总线200和接收器201和发送器203之间提供接口。接收器201和发送器203可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器202负责管理总线200和通常的处理,而存储器204可以被用于存储处理器202在执行操作时所使用的数据。
实施例三
基于相同的发明构思,本发明第四实施例还提供了一种软件升级系统,如图3所示,包括:服务器301、交换机302和多个终端设备303,所述服务器301通过所述交换机302与多个所述终端设备303连接;
所述服务器301,用于:将完整升级数据分割成多个数据包;将多个所述数据包分别进行封装,获得多个特征包,所述特征包携带有标识数据,所述标识数据表示所述特征包用于对所述终端设备303进行软件升级;通过所述交换机302,将多个所述特征包广播发送至每个所述终端设备303;
所述终端设备303,用于:在上电时,进入引导加载程序BootLoader阶段;在第一预设时间内,侦听所述服务器301广播发送的携带有所述标识数据的所述特征包,所述标识数据表示所述特征包用于对所述终端设备303进行软件升级;若侦听到所述特征包,则接收所述特征包,并进入软件升级流程;在所述软件升级流程中,根据所述特征包,判断是否获得完整升级数据;若是,则根据所述完整升级数据进行软件升级。
在具体实施过程中,终端设备303具体执行实施例一所述的软件升级方法,此处不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种软件升级方法,其特征在于,应用于终端设备中,所述终端设备通过交换机与服务器通信连接,所述方法包括:
在上电时,进入引导加载程序BootLoader阶段;
在第一预设时间内,侦听所述服务器广播发送的携带有标识数据的特征包,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;
若侦听到所述特征包,则接收所述特征包,并进入软件升级流程;
在所述软件升级流程中,根据所述特征包,判断是否获得完整升级数据;
若是,则根据所述完整升级数据进行软件升级。
2.如权利要求1所述的方法,其特征在于,所述特征包还携带有所述特征包的第一数据大小值、以及所述完整升级数据的第二数据大小值;所述根据所述特征包,判断是否获得完整升级数据,包括:
接收多个特征包,所述多个特征包互不相同;
从每个所述特征包中提取对应的所述第一数据大小值;
根据提取到的所述第一数据大小值,获得所述多个特征包的第三数据大小值;
将所述第三数据大小值与所述第二数据大小值进行比较,获得比较结果;
根据所述比较结果,判断是否获得所述完整升级数据。
3.如权利要求2所述的方法,其特征在于,所述特征包还携带有编号;所述接收多个特征包,所述多个特征包互不相同,包括:
针对接收到的每个所述特征包,提取所述特征包携带的所述编号;
判断所述编号是否已被记录;
若是,则丢弃所述特征包;
若否,则记录所述编号,并保存所述特征包。
4.如权利要求2所述的方法,其特征在于,所述根据所述比较结果,判断是否获得所述完整升级数据,包括:
若所述比较结果为第一比较结果,确定获得所述完整升级数据,其中,所述第三数据大小值与所述第二数据大小值相等;
若所述比较结果为第二比较结果,确定未获得所述完整升级数据,其中,所述第二比较结果为所述第三数据大小值与所述第二数据大小值不相等。
5.如权利要求4所述的方法,其特征在于,所述若所述比较结果为第二比较结果,所述方法还包括:
在第二预设时间内,若未侦听到任何所述特征包,则退出所述BootLoader阶段,并进行启动流程,所述启动流程用于控制所述终端设备启动,并运行原软件;
若侦听到所述特征包,则执行所述根据所述特征包,判断是否获得完整升级数据的步骤。
6.如权利要求1所述的方法,其特征在于,所述在第一预设时间内,侦听所述服务器广播发送的特征包之后,还包括:
若未侦听到所述特征包,则退出所述BootLoader阶段,并进行启动流程,所述启动流程用于控制所述终端设备启动。
7.如权利要求1所述的方法,其特征在于,所述标识数据包括:IP地址或端口号。
8.如权利要求1~7任一所述的方法,其特征在于,所述根据所述完整升级数据进行软件升级,包括;
当对所述终端设备的第一分区升级完成后,根据所述完整升级数据对所述终端设备的第二分区进行升级,其中,所述终端设备中设置有所述第一分区和所述第二分区;
在所述第二分区升级完成后,输出提示信息,其中,所述提示信息用于表示所述第一分区和所述第二分区均升级完成。
9.一种终端设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时可以实现如权利要求1~8任一权项所述的方法步骤。
10.一种软件升级系统,其特征在于,包括:服务器、交换机和多个终端设备,所述服务器通过所述交换机与多个所述终端设备连接;
所述服务器,用于:将完整升级数据分割成多个数据包;将多个所述数据包分别进行封装,获得多个特征包,所述特征包携带有标识数据,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;通过所述交换机,将多个所述特征包广播发送至每个所述终端设备;
所述终端设备,用于:在上电时,进入引导加载程序BootLoader阶段;在第一预设时间内,侦听所述服务器广播发送的携带有所述标识数据的所述特征包,所述标识数据表示所述特征包用于对所述终端设备进行软件升级;若侦听到所述特征包,则接收所述特征包,并进入软件升级流程;在所述软件升级流程中,根据所述特征包,判断是否获得完整升级数据;若是,则根据所述完整升级数据进行软件升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110147992.0A CN112954036B (zh) | 2021-02-03 | 2021-02-03 | 一种软件升级方法、终端设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110147992.0A CN112954036B (zh) | 2021-02-03 | 2021-02-03 | 一种软件升级方法、终端设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112954036A true CN112954036A (zh) | 2021-06-11 |
CN112954036B CN112954036B (zh) | 2023-06-30 |
Family
ID=76242049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110147992.0A Active CN112954036B (zh) | 2021-02-03 | 2021-02-03 | 一种软件升级方法、终端设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112954036B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050257215A1 (en) * | 1999-09-22 | 2005-11-17 | Intermec Ip Corp. | Automated software upgrade utility |
JP2006293882A (ja) * | 2005-04-14 | 2006-10-26 | Canon Inc | 画像処理装置、制御プログラムの更新方法、コンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム |
CN101594613A (zh) * | 2009-06-22 | 2009-12-02 | 中兴通讯股份有限公司 | 终端设备及其升级的方法、系统 |
US20130275956A1 (en) * | 2012-04-17 | 2013-10-17 | Hon Hai Precision Industry Co., Ltd. | Firmware upgrade method and system and terminal device using the method |
CN103916440A (zh) * | 2013-01-05 | 2014-07-09 | 尼尔森网联媒介数据服务有限公司 | 一种远程升级的方法及其装置 |
CN107562483A (zh) * | 2017-07-26 | 2018-01-09 | 博为科技有限公司 | 一种挂载引导文件系统的方法及装置 |
WO2018006677A1 (zh) * | 2016-07-06 | 2018-01-11 | 中兴通讯股份有限公司 | 智能升级方法、服务器、终端和系统 |
CN107770279A (zh) * | 2017-10-31 | 2018-03-06 | 深圳市银河风云网络系统股份有限公司 | 远程升级方法及系统 |
CN108376077A (zh) * | 2018-02-11 | 2018-08-07 | 广东美的厨房电器制造有限公司 | 控制单元的升级方法和装置 |
CN109992287A (zh) * | 2019-04-11 | 2019-07-09 | 苏州浪潮智能科技有限公司 | 一种固件升级方法、系统、设备及介质 |
CN110401794A (zh) * | 2018-04-25 | 2019-11-01 | 杭州海康威视数字技术股份有限公司 | 摄像机远程升级方法、装置、电子设备及可读存储介质 |
CN110780890A (zh) * | 2019-10-24 | 2020-02-11 | 百度在线网络技术(北京)有限公司 | 系统升级方法、装置、电子设备和介质 |
-
2021
- 2021-02-03 CN CN202110147992.0A patent/CN112954036B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050257215A1 (en) * | 1999-09-22 | 2005-11-17 | Intermec Ip Corp. | Automated software upgrade utility |
JP2006293882A (ja) * | 2005-04-14 | 2006-10-26 | Canon Inc | 画像処理装置、制御プログラムの更新方法、コンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム |
CN101594613A (zh) * | 2009-06-22 | 2009-12-02 | 中兴通讯股份有限公司 | 终端设备及其升级的方法、系统 |
US20130275956A1 (en) * | 2012-04-17 | 2013-10-17 | Hon Hai Precision Industry Co., Ltd. | Firmware upgrade method and system and terminal device using the method |
CN103916440A (zh) * | 2013-01-05 | 2014-07-09 | 尼尔森网联媒介数据服务有限公司 | 一种远程升级的方法及其装置 |
WO2018006677A1 (zh) * | 2016-07-06 | 2018-01-11 | 中兴通讯股份有限公司 | 智能升级方法、服务器、终端和系统 |
CN107562483A (zh) * | 2017-07-26 | 2018-01-09 | 博为科技有限公司 | 一种挂载引导文件系统的方法及装置 |
CN107770279A (zh) * | 2017-10-31 | 2018-03-06 | 深圳市银河风云网络系统股份有限公司 | 远程升级方法及系统 |
CN108376077A (zh) * | 2018-02-11 | 2018-08-07 | 广东美的厨房电器制造有限公司 | 控制单元的升级方法和装置 |
CN110401794A (zh) * | 2018-04-25 | 2019-11-01 | 杭州海康威视数字技术股份有限公司 | 摄像机远程升级方法、装置、电子设备及可读存储介质 |
CN109992287A (zh) * | 2019-04-11 | 2019-07-09 | 苏州浪潮智能科技有限公司 | 一种固件升级方法、系统、设备及介质 |
CN110780890A (zh) * | 2019-10-24 | 2020-02-11 | 百度在线网络技术(北京)有限公司 | 系统升级方法、装置、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112954036B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110659046B (zh) | 固件升级方法、终端、充电盒、耳机及存储介质 | |
US11080404B2 (en) | Firmware upgrade method, slave station of robot, and machine readable storage medium | |
EP4092524B1 (en) | Ota differential upgrade method and system of master-slave architecture | |
CN111273924B (zh) | 软件更新方法及装置 | |
CN103488501A (zh) | 光网络终端设备及其系统软件升级方法 | |
CN112394966A (zh) | 设备升级方法、装置、计算机可读介质及设备 | |
CN104503861A (zh) | 一种异常处理方法及系统、代理设备与控制装置 | |
CN111615030A (zh) | 一种新型tws耳机的升级方法、装置及介质 | |
CN111522571B (zh) | 设备升级方法、装置、终端设备及存储介质 | |
CN108804129B (zh) | 一种软件升级方法及装置 | |
CN111078255B (zh) | 一种软件升级方法和软件升级系统 | |
CN110545494A (zh) | 无源光网络类型的快速切换方法、装置及其相关设备 | |
CN112954036B (zh) | 一种软件升级方法、终端设备及系统 | |
CN111984287A (zh) | 设备升级方法及系统 | |
CN106933637A (zh) | 一种系统分区的修复方法及装置 | |
CN111224983A (zh) | 跨网段发现设备的方法及装置 | |
CN112181466B (zh) | 一种语音空调固件云端升级方法及系统 | |
CN114237722B (zh) | 一种系统的启动方法、装置、设备及工程车辆 | |
CN114895933A (zh) | 系统升级方法、网络设备、介质和电子设备 | |
CN112559349A (zh) | 一种程序的运行方法及运行装置 | |
CN112328267A (zh) | 一种多台服务器安装方法、装置、终端及存储介质 | |
CN111625363A (zh) | 用于资源推荐操作的执行方法、装置、设备及存储介质 | |
CN114064097B (zh) | 软件升级方法、终端设备及存储介质 | |
CN116340957B (zh) | 程序启动方法、装置、服务器及非易失性存储介质 | |
CN109683924B (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 | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: OuYang Ning Inventor after: Hu Bo Inventor after: Fang Zhaoliang Inventor after: Liu Xiaoyan Inventor before: Hu Bo Inventor before: Fang Zhaoliang Inventor before: Liu Xiaoyan |
|
GR01 | Patent grant | ||
GR01 | Patent grant |