CN111651185A - 一种软件升级方法及装置 - Google Patents

一种软件升级方法及装置 Download PDF

Info

Publication number
CN111651185A
CN111651185A CN202010482608.8A CN202010482608A CN111651185A CN 111651185 A CN111651185 A CN 111651185A CN 202010482608 A CN202010482608 A CN 202010482608A CN 111651185 A CN111651185 A CN 111651185A
Authority
CN
China
Prior art keywords
spl
memory
downloading
data
terminal device
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
Application number
CN202010482608.8A
Other languages
English (en)
Other versions
CN111651185B (zh
Inventor
张永升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
Spreadtrum Communications Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Spreadtrum Communications Shanghai Co Ltd filed Critical Spreadtrum Communications Shanghai Co Ltd
Priority to CN202010482608.8A priority Critical patent/CN111651185B/zh
Publication of CN111651185A publication Critical patent/CN111651185A/zh
Priority to PCT/CN2021/086903 priority patent/WO2021244143A1/zh
Application granted granted Critical
Publication of CN111651185B publication Critical patent/CN111651185B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例提供了一种软件升级方法及装置,应用于包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,方法包括:若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性;若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。采用本申请实施例可保证终端设备在系统软件升级过程中断电后,再次通电也能完成软件升级。

Description

一种软件升级方法及装置
技术领域
本申请涉及电子技术领域,具体涉及一种软件升级方法及装置。
背景技术
目前市面上的电子产品大多是在处于关机且外部的按键确定U1TXD(NBOOT)接地的情况下,使终端设备进入软件升级模式开始升级,这种软件升级模式快速、可靠并且可以反复升级。然而,随着市场上产品的多元化,这种软件升级模式的弊端也逐步显现出来,尤其是对手表类和车载模块这种整机形态没有多余按键和外露管脚可供操作的终端设备,在升级过程中如果突然断电或者其他缘故中止下载,会导致系统损坏不能工作,终端设备无法再使用。
发明内容
本申请实施例提供了一种软件升级方法及装置。
第一方面,本申请实施例提供一种软件升级方法,应用于包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,方法包括:
若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL;
若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
第二方面,本申请实施例提供一种软件升级装置,应用于包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,所述装置包括:
确定单元,用于若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL;
下载单元,用于若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
第三方面,本申请实施例提供一种终端设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述一个或多个程序包括用于执行本申请实施例第一方面所述的方法中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面所述的方法中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面所述的方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
可以看出,在本申请实施例中,若终端设备当前处于系统软件升级过程中且终端设备处于断电的状态,终端设备首先确定第一存储器中存储的第一SPL的完整性,然后在确定第一SPL不完整的情况下,在终端设备通电后,进入引导加载程序下载模式,其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件,由于终端设备在断电后首先判断第一SPL是否完整,在不完整的情况下终端设备通电后删除不完整的第一SPL,并下载第二SPL,避免了终端设备因为不完整的SPL文件导致升级失败,保证了在终端设备在系统软件升级过程中断电后,再次通电也能完成软件升级。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种终端设备的结构示意图;
图2是本申请实施例提供的一种软件升级方法的流程示意图;
图3本申请实施例提供的另一种终端设备的结构示意图;
图4本申请实施例提供的一种软件升级装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
以下分别进行详细说明。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例中的终端设备是一种具有无线通信功能的设备,可以部署在陆地上,包括室内或室外、手持、可穿戴或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球、卫星上等)。该终端设备可以是虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、智能家庭(smart home)中的无线终端等。终端设备也可以是具有无线通信功能的手持设备、车载设备、可穿戴设备、计算机设备或连接到无线调制解调器的其他处理设备等。
如图1所示,图1是本申请实施例提供的一种终端设备的结构示意图。该终端设备包括处理器、存储器、显示屏、第一存储器、摄像头。其中,存储器、显示屏、第一存储器和摄像头均与处理器连接。
进一步地,终端设备还包括信号通信接口、信号处理器、扬声器、麦克风和传感器,信号处理器、扬声器、麦克风和传感器均与处理器连接,通信接口与信号处理器连接。
其中,显示屏可以是液晶显示器(Liquid Crystal Display,LCD)、有机或无机发光二极管(Organic Light-Emitting Diode,OLED)、有源矩阵有机发光二极体面板(ActiveMatrix/Organic Light Emitting Diode,AMOLED)等。
其中,该摄像头可以是普通摄像头、也可以是红外摄像,在此不作限定。该摄像头可以是前置摄像头或后置摄像头,在此不作限定。
其中,传感器包括以下至少一种:光感传感器、陀螺仪、红外接近传感器、指纹传感器、压力传感器等等。其中,光感传感器,也称为环境光传感器,用于检测环境光亮度。光线传感器可以包括光敏元件和模数转换器。其中,光敏元件用于将采集的光信号转换为电信号,模数转换器用于将上述电信号转换为数字信号。可选的,光线传感器还可以包括信号放大器,信号放大器可以将光敏元件转换的电信号进行放大后输出至模数转换器。上述光敏元件可以包括光电二极管、光电三极管、光敏电阻、硅光电池中的至少一种。
其中,处理器是终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分,通过运行或执行存储在存储器内的软体程序和/或模块,以及调用存储在存储器内的数据,执行终端设备的各种功能和处理数据,从而对终端设备进行整体监控。
其中,处理器可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器中。
其中,存储器用于存储软体程序和/或模块,处理器通过运行存储在存储器的软件程序和/或模块,从而执行终端设备的各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的软体程序等;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
下面对本申请实施例进行详细介绍。
请参见图2,图2为本申请实施例提供的一种软件升级方法的流程示意图,应用于包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,包括以下步骤:
步骤201:若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL。
其中,第一存储器可以是随机存取存储器(Random Access Memory,RAM),也可以是其他存储器。
其中,第一SPL是终端设备从外部存储介质下载到第一存储器中的二进制文件。
其中,终端设备运行SPL可以将启动系统需要的数据下载到第一存储器中。
步骤202:若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
其中,在终端设备通电后,直接进入引导加载程序下载模式。
其中,终端设备还下载第二SPL之外的文件,第二SPL的下载起始时间晚于第二SPL之外的文件的下载终止时间。
其中,第二SPL为在第一阶段中最后下载到第一存储器中的文件,用于避免下载其他文件时出现异常。
其中,引导加载程序下载模式的第二阶段为运行第二SPL文件,以将启动系统需要的数据下载到第一存储器中。
其中,目标外部存储介质可以是非易失性存储器(nand flash),也可以是安全数码卡(Secure Digital Card,SDCard),等其他外部存储介质。
可以看出,在本申请实施例中,若终端设备当前处于系统软件升级过程中且终端设备处于断电的状态,终端设备首先确定第一存储器中存储的第一SPL的完整性,然后在确定第一SPL不完整的情况下,在终端设备通电后,进入引导加载程序下载模式,其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件,由于终端设备在断电后首先判断第一SPL是否完整,在不完整的情况下终端设备通电后删除不完整的第一SPL,并下载第二SPL,避免了终端设备因为不完整的SPL文件导致升级失败,保证了在终端设备在系统软件升级过程中断电后,再次通电也能完成软件升级。
在本申请的一实现方式中,所述删除所述第一SPL之前,还包括步骤:将第一引导下载文件和第二引导下载文件下载到所述第一存储器中,在所述第一存储器中存储有所述第一引导文件和所述第二引导文件的情况下,表示所述第一存储器处于非保护状态。
其中,第一存储器处于非保护状态表示终端设备可以对第一存储进行读写操作,也可以对第一存储器中的数据进行删除和修改。
其中,第一引导文件与第二引导文件不同。
可选地,第一引导文件携带第一标识,第二引导文件携带第二标识;所述在所述第一存储器中存储有所述第一引导文件和所述第二引导文件的情况下,所述方法还包括:
根据所述第一标识和所述第二标识,确定所述终端设备是否继续进行软件升级。
其中,可以是在第一标识与第二标识相等的情况下,确定终端设备继续进行软件升级,也可以是在第一标识与第二标识相等的情况下,确定终端设备不继续进行软件升级,进入正常工作状态。
可以看出,在本申请实施例中,将第一引导下载文件和第二引导下载文件下载到所述第一存储器中,有利于终端设备对第一存储器中的数据进行处理,为进行软件升级提供了基础。
在本申请的一实现方式中,所述SPL包括第一数据和第二数据,所述第一数据用于检验SPL是否完整,所述第二数据用于将启动系统需要的数据下载到所述第一存储器中。
在本申请的一实现方式中,所述第一数据包括主数据区域和差错检测纠正ECC辅数据区域。
其中,主数据区域存放有用于检验SPL完整性的数据,主数据区域的长度为512个字节,主数据区域位于SPL文件的文件头区域。
其中,主数据区域包括特定数据magic data和版本数据。
其中,ECC辅数据区域中存储有主数据区域的ECC校验码,根据差错检测和纠正校验码,可以确定主数据区域中的数据是否存在错误。
可以看出,在本申请实施例中,第一数据包括主数据区域和ECC辅数据区域,有利于终端设备保证SPL中数据的完整性和正确率。
在本申请的一实现方式中,所述第一SPL包括的主数据区域包括第一目标数据,所述确定第一存储器中第一SPL的完整性,包括:
基于所述第一目标数据,确定所述第一SPL的第一哈希值;
基于所述第一SPL和哈希算法,确定所述第一SPL的第二哈希值;
基于所述第一哈希值和所述第二哈希值确定所述第一SPL的完整性。
其中,第一目标数据可以是magic data,第一哈希值为magic data中的固定数据,也可以是magic data中的哈希值。
其中,在第一哈希值和第二哈希值相等的情况下,第一SPL完整,在第一哈希值和第二哈希值不相等的情况下,第一SPL不完整。
可选地,在所述目标存储介质为nand flash的情况下,在基于所述第一SPL和哈希算法,确定所述第一SPL的第二哈希值之前,所述方法还包括:
基于ECC辅数据区域中的ECC校验码,对所述第一SPL进行校验。
可以看出,在本申请实施例中,采用哈希值检测第一SPL的完整性,有利于提升确定第一SPL完整性的正确性。
在本申请的一实现方式中,所述确定第一存储器中第一SPL的完整性,包括:
确定所述第一SPL包括的主数据区域是否存在第二目标数据;
若所述第一SPL包括的主数据区域不存在第二目标数据,则确定所述第一SPL不完整;
若所述第一SPL包括的主数据区域存在第二目标数据,则确定所述第一SPL完整。
其中,第二目标数据可以是magic data。
可以看出,在本申请实施例中,通过主数据区域是否存在第二目标数据确定第一SPL的完整性,有利于提升确定第一SPL完整性的速率。
在本申请的一实现方式中,所述将目标外部存储介质中的所述第二SPL的下载到所述第一存储器中,包括:
分别将所述第二SPL文件中的第一数据和第二数据下载到所述第一存储器中,所述第一数据的下载起始时刻晚于所述第二数据的下载终止时刻。
可以看出,在本申请实时例中,在下载完成第二数据之后下载第一数据,有利于防止下载第二数据的过程中出现异常,提升了下载第二SPL的成功率。
请参见图3,图3是本申请实施例提供的一种应用于包括第一存储器的终端设备,终端设备当前处于系统软件升级过程中,包括:一个或多个处理器、一个或多个存储器、一个或多个通信接口,以及一个或多个程序;
若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL;
若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
在本申请的一实现方式中,所述删除所述第一SPL之前,所述程序包括还用于执行以下步骤的指令:将第一引导下载文件和第二引导下载文件下载到所述第一存储器中,在所述第一存储器中存储有所述第一引导文件和所述第二引导文件的情况下,表示所述第一存储器处于非保护状态。
在本申请的一实现方式中,所述SPL包括第一数据和第二数据,所述第一数据用于检验SPL是否完整,所述第二数据用于将启动系统需要的数据下载到所述第一存储器中。
在本申请的一实现方式中,所述第一数据包括主数据区域和差错检测纠正ECC辅数据区域。
在本申请的一实现方式中,所述第一SPL包括的主数据区域包括第一目标数据,在确定第一存储器中第一SPL的完整性方面,所述程序包括用于执行以下步骤的指令:
基于所述第一目标数据,确定所述第一SPL的第一哈希值;
基于所述第一SPL和哈希算法,确定所述第一SPL的第二哈希值;
基于所述第一哈希值和所述第二哈希值确定所述第一SPL的完整性。
在本申请的一实现方式中,在确定第一存储器中第一SPL的完整性方面,所述程序包括用于执行以下步骤的指令:
确定所述第一SPL包括的主数据区域是否存在第二目标数据;
若所述第一SPL包括的主数据区域不存在第二目标数据,则确定所述第一SPL不完整;
若所述第一SPL包括的主数据区域存在第二目标数据,则确定所述第一SPL完整。
在本申请的一实现方式中,在将目标外部存储介质中的所述第二SPL的下载到所述第一存储器中方面,所述程序包括用于执行以下步骤的指令:
分别将所述第二SPL文件中的第一数据和第二数据下载到所述第一存储器中,所述第一数据的下载起始时刻晚于所述第二数据的下载终止时刻。
需要说明的是,本实施例的具体实现过程可参见上述方法实施例所述的具体实现过程,在此不再叙述。
请参见图4,图4是本申请实施例提供的一种软件升级装置,应用于包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,该装置包括:
确定单元401,用于若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL;
下载单元402,用于若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
在本申请的一实现方式中,所述删除所述第一SPL之前,所述下载单元402还用于执行以下步骤的指令:将第一引导下载文件和第二引导下载文件下载到所述第一存储器中,在所述第一存储器中存储有所述第一引导文件和所述第二引导文件的情况下,表示所述第一存储器处于非保护状态。
在本申请的一实现方式中,所述SPL包括第一数据和第二数据,所述第一数据用于检验SPL是否完整,所述第二数据用于将启动系统需要的数据下载到所述第一存储器中。
在本申请的一实现方式中,所述第一数据包括主数据区域和差错检测纠正ECC辅数据区域。
在本申请的一实现方式中,所述第一SPL包括的主数据区域包括第一目标数据,在确定第一存储器中第一SPL的完整性方面,所述确定单元401包括用于执行以下步骤的指令:
基于所述第一目标数据,确定所述第一SPL的第一哈希值;
基于所述第一SPL和哈希算法,确定所述第一SPL的第二哈希值;
基于所述第一哈希值和所述第二哈希值确定所述第一SPL的完整性。
在本申请的一实现方式中,在确定第一存储器中第一SPL的完整性方面,所述确定单元401包括还用于执行以下步骤的指令:
确定所述第一SPL包括的主数据区域是否存在第二目标数据;
若所述第一SPL包括的主数据区域不存在第二目标数据,则确定所述第一SPL不完整;
若所述第一SPL包括的主数据区域存在第二目标数据,则确定所述第一SPL完整。
在本申请的一实现方式中,在将目标外部存储介质中的所述第二SPL的下载到所述第一存储器中方面,所述下载单元402包括还用于执行以下步骤的指令:
分别将所述第二SPL文件中的第一数据和第二数据下载到所述第一存储器中,所述第一数据的下载起始时刻晚于所述第二数据的下载终止时刻。
需要说明的是,所述装置中确定单元401和下载单元402可通过处理器实现。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括用户设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括用户设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种软件升级方法,其特征在于,应用于包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,所述方法包括:
若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL;
若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
2.根据权利要求1所述的方法,其特征在于,所述删除所述第一SPL之前,还包括步骤:将第一引导下载文件和第二引导下载文件下载到所述第一存储器中,在所述第一存储器中存储有所述第一引导文件和所述第二引导文件的情况下,表示所述第一存储器处于非保护状态。
3.根据权利要求1所述的方法,其特征在于,所述SPL包括第一数据和第二数据,所述第一数据用于检验SPL是否完整,所述第二数据用于将启动系统需要的数据下载到所述第一存储器中。
4.根据权利要求3所述的方法,其特征在于,所述第一数据包括主数据区域和差错检测纠正ECC辅数据区域。
5.根据权利要求4所述的方法,其特征在于,所述第一SPL包括的主数据区域包括第一目标数据,所述确定第一存储器中第一SPL的完整性,包括:
基于所述第一目标数据,确定所述第一SPL的第一哈希值;
基于所述第一SPL和哈希算法,确定所述第一SPL的第二哈希值;
基于所述第一哈希值和所述第二哈希值确定所述第一SPL的完整性。
6.根据权利要求4所述的方法,其特征在于,所述确定第一存储器中第一SPL的完整性,包括:
确定所述第一SPL包括的主数据区域是否存在第二目标数据;
若所述第一SPL包括的主数据区域不存在第二目标数据,则确定所述第一SPL不完整;
若所述第一SPL包括的主数据区域存在第二目标数据,则确定所述第一SPL完整。
7.根据权利要求3-6任一项所述的方法,其特征在于,所述将目标外部存储介质中的所述第二SPL的下载到所述第一存储器中,包括:
分别将所述第二SPL文件中的第一数据和第二数据下载到所述第一存储器中,所述第一数据的下载起始时刻晚于所述第二数据的下载终止时刻。
8.一种软件升级装置,其特征在于,包括第一存储器的终端设备,所述终端设备当前处于系统软件升级过程中,所述装置包括:
确定单元,用于若所述终端设备断电,则确定所述第一存储器中存储的第一辅助下载文件SPL的完整性,所述第一SPL为所述系统软件升级所使用的SPL;
下载单元,用于若所述第一SPL不完整,则在所述终端设备通电后,进入引导加载程序下载模式;
其中,在所述引导加载程序下载模式的第一阶段下,所述终端设备执行以下步骤:删除所述第一SPL;将目标外部存储介质中的第二SPL下载到所述第一存储器中,所述第二SPL用于所述终端设备进行所述系统软件升级,所述第二SPL为在所述第一阶段中最后下载到所述第一存储器中的文件。
9.一种终端设备,其特征在于,所述终端设备包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述一个或多个程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-7任一项所述的方法。
CN202010482608.8A 2020-05-30 2020-05-30 一种软件升级方法及装置 Active CN111651185B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010482608.8A CN111651185B (zh) 2020-05-30 2020-05-30 一种软件升级方法及装置
PCT/CN2021/086903 WO2021244143A1 (zh) 2020-05-30 2021-04-13 一种软件升级方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010482608.8A CN111651185B (zh) 2020-05-30 2020-05-30 一种软件升级方法及装置

Publications (2)

Publication Number Publication Date
CN111651185A true CN111651185A (zh) 2020-09-11
CN111651185B CN111651185B (zh) 2022-11-11

Family

ID=72344551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010482608.8A Active CN111651185B (zh) 2020-05-30 2020-05-30 一种软件升级方法及装置

Country Status (2)

Country Link
CN (1) CN111651185B (zh)
WO (1) WO2021244143A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112463260A (zh) * 2021-01-26 2021-03-09 杭州万高科技股份有限公司 用于终端设备的安全启动方法、终端设备及介质
WO2021244143A1 (zh) * 2020-05-30 2021-12-09 展讯通信(上海)有限公司 一种软件升级方法及装置
WO2022105595A1 (zh) * 2020-11-20 2022-05-27 展讯通信(上海)有限公司 嵌入式设备的系统升级方法、装置及嵌入式设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114691180A (zh) * 2022-03-24 2022-07-01 洛阳热感科技有限公司 处理器芯片的软件升级方法、装置、处理器和处理器系统
CN114895947A (zh) * 2022-06-14 2022-08-12 中国第一汽车股份有限公司 车载控制器的软件升级方法、装置、设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310688A (ja) * 2006-05-19 2007-11-29 Renesas Technology Corp マイクロコンピュータおよびそのソフトウェア改竄防止方法
CN106528106A (zh) * 2016-10-31 2017-03-22 武汉光迅科技股份有限公司 一种自适应各种不同Flash芯片类型的嵌入式系统启动方法
CN106845243A (zh) * 2016-12-13 2017-06-13 北京元心科技有限公司 提高启动安全的方法和系统
CN109711164A (zh) * 2017-10-26 2019-05-03 京瓷办公信息系统株式会社 信息处理装置和篡改检测方法
CN110737481A (zh) * 2019-09-25 2020-01-31 浙江万胜智能科技股份有限公司 基于多重备份引导程序的嵌入式linux操作系统的启动方法
CN110908733A (zh) * 2019-11-15 2020-03-24 展讯通信(上海)有限公司 工作模式确定方法及装置、控制方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100606046B1 (ko) * 2004-01-20 2006-07-28 삼성전자주식회사 휴대용 단말기의 낸드 플래쉬 메모리를 이용한 부팅 장치및 방법
CN111651185B (zh) * 2020-05-30 2022-11-11 展讯通信(上海)有限公司 一种软件升级方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310688A (ja) * 2006-05-19 2007-11-29 Renesas Technology Corp マイクロコンピュータおよびそのソフトウェア改竄防止方法
CN106528106A (zh) * 2016-10-31 2017-03-22 武汉光迅科技股份有限公司 一种自适应各种不同Flash芯片类型的嵌入式系统启动方法
CN106845243A (zh) * 2016-12-13 2017-06-13 北京元心科技有限公司 提高启动安全的方法和系统
CN109711164A (zh) * 2017-10-26 2019-05-03 京瓷办公信息系统株式会社 信息处理装置和篡改检测方法
CN110737481A (zh) * 2019-09-25 2020-01-31 浙江万胜智能科技股份有限公司 基于多重备份引导程序的嵌入式linux操作系统的启动方法
CN110908733A (zh) * 2019-11-15 2020-03-24 展讯通信(上海)有限公司 工作模式确定方法及装置、控制方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周继才: "LK存储介质Nand Flash驱动模块设计与性能优化", 《单片机与嵌入式系统应用》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021244143A1 (zh) * 2020-05-30 2021-12-09 展讯通信(上海)有限公司 一种软件升级方法及装置
WO2022105595A1 (zh) * 2020-11-20 2022-05-27 展讯通信(上海)有限公司 嵌入式设备的系统升级方法、装置及嵌入式设备
CN112463260A (zh) * 2021-01-26 2021-03-09 杭州万高科技股份有限公司 用于终端设备的安全启动方法、终端设备及介质
CN112463260B (zh) * 2021-01-26 2021-04-20 杭州万高科技股份有限公司 用于终端设备的安全启动方法、终端设备及介质

Also Published As

Publication number Publication date
CN111651185B (zh) 2022-11-11
WO2021244143A1 (zh) 2021-12-09

Similar Documents

Publication Publication Date Title
CN111651185B (zh) 一种软件升级方法及装置
CN101477471B (zh) 一种嵌入式系统固件在线升级方法
US7650556B2 (en) System and method for checking and correcting BIOS errors
US8332840B2 (en) Method of computer based data card software downloading and updating
CN103150231A (zh) 计算机开机的方法与计算机系统
US20180322013A1 (en) Method for recovering basic input/output system image file of a computer system and the computer system
KR101640207B1 (ko) 부트로더 및 임베디드 시스템 업그레이드 방법
CN104461594A (zh) 嵌入式操作系统的升级方法及装置
US10503489B1 (en) Updating firmware via a remote utility
US10579801B2 (en) Selecting and loading firmware volumes based on license
US7418589B2 (en) System and method for updating a basic input/output system
US11157264B2 (en) Electronic device and method for controlling update of electronic device
CN111488589A (zh) 基于硬件写保护的安全可信启动及固件升级系统和方法
CN110515671B (zh) 初始化方法、初始化装置、终端设备及可读存储介质
CN116679967A (zh) 一种基本输入输出系统固件升级方法和装置
CN111131861B (zh) 恢复分区的升级方法、终端和存储介质
KR102657534B1 (ko) 어플리케이션의 무결성을 검증하는 전자 장치 및 어플리케이션의 무결성을 검증하기 위한 방법
CN109189457B (zh) 智能惯导传感系统的固件升级系统及方法
WO2020113469A1 (zh) 开机检测方法、开机检测装置及移动终端
WO2016172883A1 (zh) 数据恢复方法、装置以及终端
CN106611124A (zh) 计算机装置及其开机方法
CN110825396B (zh) 异常处理方法及相关设备
CN107015827B (zh) 嵌入式系统及其自动运行第三方扩展程序的方法
CN112527371A (zh) 一种引导加载程序升级方法、装置、电子设备及存储介质
CN113360433B (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
GR01 Patent grant
GR01 Patent grant