WO2017067448A1 - 一种无线固件升级方法、系统及计算机存储介质 - Google Patents
一种无线固件升级方法、系统及计算机存储介质 Download PDFInfo
- Publication number
- WO2017067448A1 WO2017067448A1 PCT/CN2016/102471 CN2016102471W WO2017067448A1 WO 2017067448 A1 WO2017067448 A1 WO 2017067448A1 CN 2016102471 W CN2016102471 W CN 2016102471W WO 2017067448 A1 WO2017067448 A1 WO 2017067448A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- partition
- upgrade
- information
- upgraded
- backup buffer
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Definitions
- the present invention relates to firmware upgrade technology, and in particular, to a wireless firmware (FOTA, Firmware Over-The-Air) upgrade method and system.
- FOTA Wireless firmware
- FOTA upgrade refers to the upgrade of the mobile terminal's over-the-air software. Specifically, it provides firmware upgrade services for devices with networking functions, such as mobile phones, tablets, portable media players, mobile Internet devices, etc. through cloud upgrade technology. Users use the network.
- the intelligent terminal system upgrade package is obtained in an on-demand and easy-to-expand manner, and the cloud is upgraded through FOTA to complete system repair and optimization.
- FOTA features include software updates, firmware updates, and device management.
- mobile terminal manufacturers and mobile network operators were unable to effectively upgrade software in the most important 18 to 24 month lifecycle of mobile terminals such as mobile phones.
- the user Once the user needs to upgrade the mobile phone software, the user must carry the mobile phone to a professional repair center for mobile phone upgrade. Since the promotion of smartphones, software upgrades have been basically completed by users themselves, and FOTA technology has assumed the role of firmware upgrade.
- the firmware upgrade is implemented by upgrading each partition, mainly including a loader partition, a recovery partition, and a file system partition; wherein the loader partition is located in the first sector of the disk and is used for booting into the disk.
- Operating system or recovery partition this partition generally does not need to be upgraded; recovery partition is used to restore / upgrade the boot partition used by the system.
- the loader partition boot system enters the recovery partition.
- the specific upgrade function is completed by the recovery partition. Therefore, this partition plays an important role in the firmware upgrade; and when the upgraded program needs to be changed, the recovery partition also needs to be performed. upgrade.
- firmware upgrades were generally performed in a WiFi environment or a wired network environment.
- firmware upgrades are becoming more common under wireless network conditions. Due to the unknown network environment characteristics of wireless networks, fault tolerance and recovery in the FOTA process are increasingly valued by various vendors. After the abnormality occurs in the FOTA upgrade process, if the upgrade of the recovery system fails, the system will fail to start, and you need to return to the factory to re-write the version. If the upgrade of other partitions fails, the system will start from the beginning when you re-enter the recovery partition. Re-upgrades reduce the efficiency of upgrades and increase the cost of consumers and manufacturers, resulting in poor user experience.
- embodiments of the present invention are expected to provide a wireless firmware upgrade method, system, and computer storage medium.
- a FOTA upgrade method including:
- the system files in the partition that need to be upgraded are stored in the backup buffer;
- partition upgrade fails, obtaining the partition information of the partition that failed the upgrade from the partition upgrade information identifier table, and obtaining the original partition system file stored in the backup buffer according to the obtained partition information of the upgraded partition, and restoring the upgrade. Failed partition.
- the partition is upgraded.
- the information about the upgrade is stored in the partition upgrade information identification table.
- the storing, by the system file in the partition that needs to be upgraded, the system file in the partition that needs to be upgraded is stored in the backup buffer; or
- the system files in the partition are respectively stored in separate backup buffers by partition, and the partition information to which the system files backed up by each backup buffer belongs is recorded.
- the method further includes: downloading the FOTA upgrade package, and verifying the validity of the downloaded FOTA upgrade package;
- the establishing the partition upgrade information identifier table is: establishing a partition upgrade information identifier table according to each partition name that needs to be upgraded in the downloaded FOTA upgrade package.
- the initial state information stored in the partition upgrade information identifier table is status information that the corresponding partition is not upgraded or the upgrade fails.
- the information about the upgrade completion is stored in the partition upgrade information identifier table: after a partition upgrade is successfully completed, the information about the current partition upgrade is updated to the name or partition number of the corresponding partition in the partition upgrade information identifier table.
- the need to upgrade the partition includes at least a recovery partition.
- the partition upgrade information identifier table is stored in the non-volatile random access memory NVRAM;
- the method further includes: after the partition upgrade fails, detecting the partition upgrade information identifier table located in the NVRAM to obtain the name of each partition and the corresponding partition upgrade status.
- the method further includes: after all the partitions that need to be upgraded are successfully upgraded, the partition upgrade information identifier table and the FOTA upgrade package are deleted; and the backup buffer is deleted, and the backup buffer is restored to the storage area.
- the method further includes: establishing a boot load partition, and the boot loader The area is configured to store the partition upgrade information identifier table, and point a pointer program in the boot load partition to the backup buffer;
- the boot load partition detects the partition upgrade information identifier table, and obtains partition information of the upgrade failed partition; the pointer program in the boot load partition points to the backup buffer, and the backup buffer is used as the backup buffer.
- the system partition starts the system; after the system starts, the partition system file in the backup buffer of the system partition is restored to the partition where the upgrade fails.
- a FOTA upgrade system includes: a configuration module, a backup module, an upgrade module, and an upgrade processing module;
- the configuration module is configured to establish a partition upgrade information identifier table, and set a backup buffer.
- the partition upgrade information identifier table is configured to store upgrade status information of each partition.
- the backup module is configured to store system files in the partition to be upgraded into the backup buffer before the partition is upgraded;
- the upgrade module is configured to upgrade each partition that needs to be upgraded according to the partition upgrade file in the FOTA upgrade package.
- the upgrade processing module is configured to: obtain the partition information of the partition that failed to be upgraded from the partition upgrade information identifier table, and obtain the original stored in the backup buffer according to the obtained partition information of the partition that failed to be upgraded. Partition the system file to recover the partition where the upgrade failed.
- the upgrade module is further configured to upgrade the upgrade failed partition according to the indication of the upgrade processing module, and send the upgrade result to the upgrade processing module;
- the upgrade processing module is further configured to, when the partition is successfully upgraded, store the information about the upgrade completion in the partition upgrade information identification table for each partition that needs to be upgraded; and when the upgrade failed partition is restored, the upgrade module is instructed. Re-upgrade the partition that failed the upgrade.
- the backup module is configured to store the system files in the partition that need to be upgraded into the backup buffer; or, the system files in the partitions that need to be upgraded.
- the partitions are stored in separate backup buffers, and the partition information of the system files backed up by each backup buffer is recorded.
- the system further includes: a downloading module configured to download the FOTA upgrade package, and verify the validity of the downloaded FOTA upgrade package, and send the name of the partition to be upgraded in the downloaded FOTA upgrade package to the configuration module;
- the configuration module is configured to establish a partition upgrade information identifier table according to each partition name that needs to be upgraded in the downloaded FOTA upgrade package.
- the configuration module is configured to configure initial state information stored in the partition upgrade information identifier table as status information that the corresponding partition is not upgraded or upgrade failed;
- the upgrade processing module is configured to update the upgrade completed information to the name or partition number of the corresponding partition in the partition upgrade information identifier table after the partition upgrade succeeds.
- the partition upgrade information identifier table is stored in the NVRAM.
- the upgrade processing module is further configured to delete the partition upgrade information identifier table and the FOTA upgrade package after all the upgraded partitions are successfully upgraded; and delete the backup buffer to restore the backup buffer to the storage area.
- the configuration module is further configured to establish a boot load partition;
- the boot load partition is configured to store the partition upgrade information identifier table and point a pointer program in the boot load partition to the backup buffer;
- the upgrade processing module is further configured to: after the partition upgrade fails, detect the partition upgrade information identifier table by using the boot load partition, and obtain partition information of the upgrade failed partition; and the boot load partition passes the upgrade.
- the partition information of the failed partition, the pointer program in the boot load partition points to the corresponding backup buffer, and the backup buffer is used as the system partition to start the system; after the system starts, it will be the partition system file in the backup buffer of the system partition. Revert to the partition where the upgrade failed.
- a computer storage medium comprising a set of instructions when executed At the time of the instruction, at least one processor is caused to execute the FOTA upgrade method described above.
- the FOTA firmware upgrade method, system, and computer storage medium provided by the embodiment of the present invention establish a partition upgrade information identifier table and set a backup buffer, and store the system files in the partition to be upgraded to the backup buffer before the partition upgrade.
- each partition that needs to be upgraded is upgraded in turn; for each partition that needs to be upgraded, when the partition upgrade fails, the partition of the upgrade failure is obtained from the partition upgrade information identification table.
- the partition information is obtained by acquiring the original partition system file stored in the backup buffer according to the obtained partition information of the upgraded partition, and restoring the partition where the upgrade fails. In this way, it can effectively prevent the system function from being restored due to the upgrade failure, and the mobile phone can be “bricked” back to the factory for repair.
- the information of the upgrade success is stored in the partition upgrade information identifier table, and after the upgrade failed partition recovery is completed, the upgrade failed partition is re-upgraded; After the upgrade is successful, the upgraded information is stored in the partition upgrade information identifier table. After the upgrade is successful, the upgraded information is stored in the partition upgrade information identifier table. The failed partition is updated, so that it can effectively avoid the problem that the upgrade time is too long after the partition upgrade fails, and the user experience is not good.
- the upgraded partition is upgraded again.
- the partition upgrade fails, it is not necessary to re-upgrade all the partitions, which reduces the working pressure of the FOTA server and greatly improves the efficiency of the FOTA upgrade. Improve the user experience.
- FIG. 1 is a schematic flowchart of processing of a FOTA upgrade method according to an embodiment of the present invention
- FIG. 2 is a schematic diagram showing the structure of a terminal firmware and an interaction relationship between a FOTA server and a terminal firmware according to an embodiment of the present invention
- FIG. 3 is a schematic structural diagram of a FOTA upgrade system according to an embodiment of the present invention.
- FIG. 4 is a logic diagram of a FOTA upgrade system according to an embodiment of the present invention.
- a partition upgrade information identifier table is created, and a backup buffer is set; wherein the partition upgrade information identifier table is used to store upgrade state information of each partition; before the partition upgrade, the upgrade is required.
- the system files in the partition are stored in the backup buffer; each partition that needs to be upgraded is upgraded according to the partition upgrade file in the FOTA upgrade package; when the partition upgrade fails, the partition upgrade information identifier table is obtained.
- the partition information of the partition that failed to be upgraded is obtained, and the original partition system file stored in the backup buffer is obtained according to the obtained partition information of the partition that failed to be upgraded, and the partition that failed the upgrade is restored.
- the system files in the partition to be upgraded are stored in a preset backup buffer, and each partition is upgraded in turn through the partition upgrade file in the FOTA upgrade package; each partition is upgraded. After the completion, the upgrade completed information is stored in the partition upgrade information identification table;
- the partition upgrade information identifier table is detected, and the partition information of the partition where the upgrade fails is obtained; and the partition system file backed up in the backup buffer is restored to the upgrade according to the obtained partition information of the upgrade failed partition.
- the upgraded partition is re-upgraded; after the upgrade failed partition is re-upgraded, the partition upgrade information is stored in the partition upgrade information identifier table; You can continue to upgrade other non-upgraded partitions in turn.
- An FOTA upgrade method is provided in the embodiment of the present invention. As shown in FIG. 1 , the method process includes the following steps:
- S1 Establish a partition upgrade information identifier table, and set a backup buffer; wherein the partition The upgrade information identifier table is used to store upgrade status information of each partition;
- the terminal device can initiate the FOTA upgrade command to authenticate the interaction between the terminal device and the FOTA server. Download the FOTA upgrade package after obtaining the information that the terminal device can update;
- the partition upgrade information identifier table is set in the step of: establishing a partition upgrade information identifier table according to each partition name that needs to be upgraded in the downloaded FOTA upgrade package.
- the information of the upgrade success is stored in the partition upgrade information identification table.
- the upgrade failed partition is upgraded; after the upgrade is successful, the upgrade success information is stored in the partition upgrade information identifier table.
- partition upgrade information identifier table one partition corresponds to one record entry in the partition upgrade information identifier table; and the partition information obtained from the partition upgrade information identifier table to obtain the upgrade failure partition may be: according to the partition name or the partition number The partition information of the partition is detected, and the partition upgrade information identifier table is detected, and the partition information in the record entry corresponding to the upgrade failure partition is obtained. Then, the original corresponding to the upgrade failure partition stored in the backup buffer is obtained according to the obtained partition information. Partition the system file, use the obtained system file to recover the partition that failed the upgrade;
- the other un-upgraded partitions may be upgraded in turn, and after all the partition upgrades are successfully completed, the results may be returned to the FOTA server.
- the initial state information stored in the partition upgrade information identifier table is status information that the corresponding partition is not upgraded or upgrade failed; after the partition upgrade is successfully completed, the upgrade complete information is updated to the name of the corresponding partition in the partition upgrade information identifier table.
- the storage space occupied by the backup buffer is not less than the storage space occupied by the partition with the largest system file in each partition before the upgrade.
- the system file is a binary number. Therefore, the storage space occupied by the partition to be upgraded is not large in the terminal device, and the largest one is only about several tens of megabytes.
- the partition that needs to be upgraded at least includes a recovery partition, or a partition similar to the recovery partition function, because the recovery partition is generally used as a boot partition for restoring, starting, or upgrading the system, and is a mobile terminal such as a mobile phone.
- the recovery partition is generally the boot partition of the FOTA. If the power failure or other abnormal conditions in the upgrade process cause the upgrade to be interrupted or fail, the system will crash after the system restarts. Therefore, once the recovery partition is damaged or the upgrade fails, the mobile phone is likely to change. Brick"; the loader partition is the only entry into the system area and will not be upgraded under normal circumstances.
- the recovery partition and the boot partition used by the system are different. After the system restarts, the system program can be directly started. Therefore, the general partition upgrade information identifier table is stored in the non-volatile random access memory (NVRAM); After the partition upgrade fails, the partition upgrade information identification table located in the NVRAM is detected to obtain the name of each partition and the corresponding partition upgrade status. According to the obtained partition name of the upgrade failure, the system file in the pre-upgrade partition in the backup buffer can be restored to the partition where the upgrade fails, that is, the restored destination address or area is obtained through the partition upgrade information identification table.
- NVRAM non-volatile random access memory
- the partition upgrade information identification table and the upgrade package may be deleted, and the backup buffer is deleted and the backup buffer is restored to the storage area.
- the recovery partition and the system use the same boot partition (the dual system has a separate recovery partition), it is equivalent to reuse the system partition as the recovery partition.
- the firmware upgrade function is implemented, a small number of necessary system programs need to be started.
- the partition upgrade fails, the system kernel and the system application required for system startup are damaged, and the system does not have a specific program loaded, so the system cannot be started.
- a boot load partition is established, and the boot load partition can be used to store the partition upgrade information identifier table, and the pointer program in the boot load partition is pointed to the Backup buffer.
- the boot load partition that is, the boot partition, detects the partition upgrade information identifier table to obtain partition information of the partition in which the upgrade fails; the pointer program in the boot load partition points to the backup buffer, and the backup buffer is used as the backup buffer.
- the system partition starts the system; the boot load partition is used as the specific program pointer necessary for the system. Since the loader partition must be started first when the system starts, the loader partition of the single system directly points to the system partition, and the system partition is upgraded due to the upgrade. The file is corrupt and the system is not loaded, so it is not possible to start the system.
- the loader partition gives the boot right to the boot partition when the system starts, and the boot partition points to the backup system file. Start up. After the system is started, the original partition system file in the backup buffer of the system partition is restored to the partition where the upgrade fails.
- an embodiment of the present invention further provides a FOTA firmware upgrade system.
- the FOTA firmware upgrade system is applied to the embodiment of the present invention. As shown in FIG. 3, the system includes: a configuration module 31, a backup module 32, an upgrade module 33, and an upgrade processing module 34.
- the configuration module 31 is configured to establish a partition upgrade information identifier table, and set a backup buffer.
- the partition upgrade information identifier table is configured to store upgrade status information of each partition.
- the backup module 32 is configured to store the system files in the partition to be upgraded into the backup buffer before the partition is upgraded;
- the upgrade module 33 is configured to upgrade each partition that needs to be upgraded according to the partition upgrade file in the FOTA upgrade package.
- the upgrade processing module 34 is configured to obtain the partition information of the partition that failed to be upgraded from the partition upgrade information identifier table when the partition upgrade fails, and obtain the storage information in the backup buffer according to the obtained partition information of the partition that failed to be upgraded.
- the original partition system file restores the partition where the upgrade failed.
- the upgrade processing module 34 is further configured to delete the partition upgrade information identifier table and the FOTA upgrade package after all the upgraded partitions are successfully upgraded; and delete the backup buffer to restore the backup buffer. For the storage area.
- the upgrade module 33 is further configured to upgrade the upgraded partition according to the indication of the upgrade processing module, and send the upgrade result to the upgrade processing module;
- the upgrade processing module 34 is further configured to: when the partition upgrade is successful, store the information about the upgrade completion in the partition upgrade information identifier table for each partition that needs to be upgraded; and when the upgrade failed partition is restored, the upgrade is indicated. The module re-upgrades the partition that failed the upgrade.
- the backup module 32 is specifically configured to save the system file in the partition that needs to be upgraded currently. Stored in the backup buffer; or, store the system files in the partitions that need to be upgraded into separate backup buffers, and record the partition information of the system files backed up by each backup buffer.
- the system further includes a downloading module 35, configured to download the FOTA upgrade package, and verify the validity of the downloaded FOTA upgrade package, and send the name of the partition to be upgraded in the downloaded FOTA upgrade package to the configuration module 31;
- the configuration module 31 is specifically configured to establish a partition upgrade information identifier table according to each partition name that needs to be upgraded in the downloaded FOTA upgrade package.
- the initial state information stored in the partition upgrade information identifier table is configured as status information that the corresponding partition is not upgraded or upgraded.
- the upgrade processing module 33 is configured to update the upgraded information to the partition upgrade after the partition upgrade succeeds.
- the partition upgrade information identification table is stored in NVRAM.
- the configuration module 31 is further configured to establish a boot load partition, where the boot load partition is configured to store the partition upgrade information identifier table and point a pointer program in the boot load partition to the backup buffer;
- the upgrade processing module 34 is further configured to: after the partition upgrade fails, detect the partition upgrade information identifier table by using the boot load partition, and obtain partition information of the upgrade failed partition; the boot load partition passes the The partition information of the failed partition is upgraded, and the pointer program in the boot load partition points to the corresponding backup buffer, and the backup buffer is used as the system partition to start the system; after the system is started, it will be used as the partition system in the backup buffer of the system partition. The file is restored to the partition where the upgrade failed.
- the configuration module 31, the backup module 32, the upgrade module 33, and the upgrade processing module 34 and the download module 35 may be a central processing unit (CPU) and a microprocessor located in the FOTA firmware upgrade system ( Micro Processor Unit, MPU), Digital signal processor (DSP), or Field Programmable Gate Array (FPGA) implementation.
- CPU central processing unit
- MPU Micro Processor Unit
- DSP Digital signal processor
- FPGA Field Programmable Gate Array
- the recovery partition is generally the first upgraded partition and the most important partition during the firmware upgrade, the present invention will be described with the recovery partition as an embodiment of the partition upgrade.
- the specific logic is shown in FIG. 4 .
- Embodiment 1 In the firmware upgrade of the dual system, the FOTA upgrade process of this embodiment includes:
- Step a1 The terminal firmware sends a firmware upgrade request to the FOTA server, and sends information such as the current model and version of the terminal firmware to the FOTA server; if the FOTA server confirms that the terminal can be upgraded, the terminal firmware is notified to receive the upgrade package, and the process proceeds to step a2; If the FOTA server believes that the current terminal firmware is not upgradeable, notify the terminal firmware to stop the firmware update;
- Step a2 Download and verify the validity of the FOTA upgrade package; if the upgrade package is valid, the upgrade may proceed to step a3; if the upgrade package is invalid, the firmware update is directly ended;
- Step a3 Enter the upgrade link, check the upgrade package, according to the partition upgrade list in the upgrade package (equivalent to the installation list, inform the system to install each partition in sequence, but no identification function), establish the corresponding partition upgrade information identification table, upgrade the partition
- the information of the information identifier table is set to be unupgraded; the partition information of the current system is detected, and information about the size of the storage space occupied by each partition is obtained, thereby establishing a backup buffer on the flash memory;
- Step a4 The upgrade sequence of the partition upgrade list is learned to first upgrade the recovery partition. At this time, the system file in the recovery partition on the current system is stored in the backup buffer, and the recovery partition is upgraded through the upgrade file after the storage is completed;
- Step a5 Detect whether the current recovery partition is successfully upgraded. If the upgrade succeeds, fill in the partition completion information under the recovery partition name of the partition upgrade information identifier table, and upgrade the next partition, that is, jump back to step a4 and continue to partition the system. , other partitions such as file partitions are upgraded, the process is the same as the recovery process of the recovery partition, until all partitions are upgraded;
- the system will restart once regardless of whether the recovery partition is updated successfully.
- the partition upgrade list will be detected to know whether the recovery partition is upgraded.
- the FOTA upgrade process includes:
- Step b1 and step b2 are the same as step a1 and step a2 in Embodiment 1, and are not described here;
- Step b3 Enter the upgrade link, detect the upgrade package, and establish a corresponding partition upgrade information identification table according to the partition upgrade list in the upgrade package, and set the information of the partition upgrade information identification table to be not upgraded; detect the partition information of the current system, and obtain each The partition occupies information about the size of the storage space to create a backup buffer on the flash memory; at the same time, a boot load partition is established on the flash memory, hereinafter referred to as the boot partition;
- Step b4 The upgrade sequence of the partition upgrade list is learned to first upgrade the system partition. At this time, the system file in the system partition on the current system is stored in the backup buffer, and the system partition is upgraded through the upgrade file after the storage is completed;
- Step b5 Detect whether the current system partition is successfully upgraded. If the upgrade succeeds, fill in the partition completion information under the system partition name of the partition upgrade information identifier table, and upgrade the next partition, that is, jump back to step b4 to continue partitioning the file. Wait for other partitions to be upgraded, the process is the same as the system partition upgrade process, until all partition upgrades are completed;
- the original system file in the backup buffer needs to be restored to the system partition; the pointer program in the boot partition points to the backup buffer. And the backup buffer is used as the system partition, so the system is started; after the system is started, it will be the original partition system in the backup buffer of the system partition. The file is restored to the partition where the upgrade failed. After the recovery is complete, re-upgrade the system partition, and then skip to step b4.
- the recovery partition and the system use the same partition, once the partition fails to upgrade, it means that there is neither a system that can be pointed to nor a way to recover the system.
- the loader partition does not know how to point it to the system file, so the system cannot be started; at this time, the loader partition will point the function to the boot partition, because the pointer of the boot partition points to the backup buffer, that is, Equivalent to the backup buffer as the original system partition, the boot partition is equivalent to a bridge connection loader partition and the original system partition, thus solving the single system or due to system structure problems during the upgrade process can not load the necessary programs after the system restart problem.
- embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention can take the form of a hardware embodiment, a software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
- the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
- the device is implemented in a flow chart A function specified in a block or blocks of a process or multiple processes and/or block diagrams.
- These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
- the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
- an embodiment of the present invention further provides a computer storage medium, where the computer storage medium includes a set of instructions, when executed, causing at least one processor to perform the FOTA upgrade method provided by the embodiment of the present invention.
- the solution provided by the embodiment of the present invention establishes a partition upgrade information identifier table and sets a backup buffer.
- the system files in the partition to be upgraded are stored in the backup buffer; afterwards, according to the FOTA upgrade package
- the partition upgrade file is upgraded for each partition that needs to be upgraded.
- the partition information of the partition that failed the upgrade is obtained from the partition upgrade information identification table, and the upgrade fails according to the obtained upgrade.
- the partition information of the partition acquires the original partition system file stored in the backup buffer, and restores the partition where the upgrade fails. In this way, it can effectively prevent the system function from being restored due to the upgrade failure, and the mobile phone can be “bricked” back to the factory for repair.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
一种无线固件(FOTA)升级方法,建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息(S1);分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级(S2);当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区(S3)。同时还公开了一种FOTA升级系统及计算机存储介质。
Description
本发明涉及固件升级技术,尤其涉及一种无线固件(FOTA,Firmware Over-The-Air)升级方法及系统。
随着移动通讯技术的迅速发展,各种移动终端发展迅速,尤其是手机等通讯终端普及率日益提高,终端设备制造商之间的竞争越发的激烈。谁能在日益激烈的市场中,快速升级维护,是获得市场的重要手段。
FOTA升级是指移动终端的空中下载软件升级,具体是:通过云端升级技术,为具有联网功能的设备,例如手机、平板电脑、便携式媒体播放器、移动互联网设备等提供固件升级服务,用户使用网络以按需、易扩展的方式获取智能终端系统升级包,并通过FOTA进行云端升级,完成系统修复和优化。
FOTA功能包括软件更新,更新固件和设备管理。在FOTA技术出现之前,移动终端制造商和移动网络运营商无法在移动终端如手机,最重要的18至24个月的生命周期中有效地对软件进行升级。一旦用户需要对手机软件进行升级,用户必须要携带手机到专业的维修中心进行手机升级。智能手机推广以来,软件升级基本由用户自身完成,FOTA技术更多承担固件升级的角色。
目前,固件升级通过各分区的升级来实现,主要包括加载(loader)分区、恢复(recovery)分区、以及文件系统分区等;其中,loader分区位于磁盘的第一个扇区,用于磁盘引导进入操作系统或者recovery分区,这个分区一般无需升级;recovery分区是用于恢复/升级系统使用的引导分区,
当固件升级时,loader分区引导系统进入recovery分区,具体的升级功能由recovery分区完成,因此,这个分区在固件升级中起到升级的重要功能;且升级的程序需要变更时,recovery分区也需要进行升级。
以往固件升级一般在WiFi环境或者有线网环境下进行,随着无线3G、4G以及更高速的网络普及,在无线网状况下固件升级越来越普遍。由于无线网络未知多变的网络环境特性,FOTA过程中的容错以及恢复越来越受到各厂商的重视。现有技术在FOTA升级过程中出现异常后,如果是recovery系统升级失败,会造成系统无法启动,需要返厂重新烧写版本;如果是其它分区升级失败,重新进入recovery分区时,系统会从头开始重新升级,降低了升级效率,增加了消费者和厂家的成本造成用户使用体验不佳。
发明内容
为克服现有技术的不足,本发明实施例期望提供一种无线固件升级方法、系统及计算机存储介质。
本发明实施例的技术方案是这样实现的:
一种FOTA升级方法,包括:
建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息;
分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;
根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;
当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区。
上述方案中,对于每个需要升级的分区,当分区升级成功时,将升级
成功的信息存储到分区升级信息标识表中;
当升级失败的分区恢复完成后,重新对所述升级失败的分区进行升级;重新升级成功后,将升级成功的信息存储到分区升级信息标识表中。
上述方案中,所述将需要升级的分区内的系统文件存储到所述备份缓冲区中包括:将当前需要升级的分区内的系统文件存储到所述备份缓冲区中;或者,将各需要升级的分区内的系统文件按分区分别存储到独立的备份缓冲区中,并记录每个备份缓冲区备份的系统文件所属的分区信息。
上述方案中,所述方法还包括:下载FOTA升级包,并校验下载的FOTA升级包的有效性;
所述建立分区升级信息标识表为:根据下载的FOTA升级包内需要升级的各分区名称建立分区升级信息标识表。
上述方案中,所述分区升级信息标识表存储的初始状态信息为相应分区未升级或升级失败的状态信息;
将所述升级完成的信息存储到分区升级信息标识表中为:在一个分区升级成功完成后,将当前分区升级完成的信息更新到分区升级信息标识表中相应分区的名称或分区号下。
上述方案中,所述需要升级分区至少包括recovery分区。
上述方案中,所述分区升级信息标识表存储于非易失性随机访问存储器NVRAM中;
所述方法还包括:分区升级失败后,检测位于NVRAM中的分区升级信息标识表获得各分区的名称和相应的分区升级状态。
上述方案中,所述方法还包括:所有需要升级的分区均升级成功后,删除分区升级信息标识表和FOTA升级包;并删除所述备份缓冲区,将备份缓冲区恢复为存储区。
上述方案中,所述方法还包括:建立引导加载分区,所述引导加载分
区用于存储所述分区升级信息标识表,并将引导加载分区内的指针程序指向所述备份缓冲区;
分区升级失败后,所述引导加载分区检测所述分区升级信息标识表,得到所述升级失败的分区的分区信息;所述引导加载分区内的指针程序指向备份缓冲区,并将备份缓冲区作为系统分区启动系统;系统启动后,将作为系统分区的备份缓冲区内的分区系统文件恢复到升级失败的分区。
一种FOTA升级系统,包括:配置模块、备份模块、升级模块和升级处理模块;其中,
所述配置模块,配置为建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息;
所述备份模块,配置为在分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;
所述升级模块,配置为根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;
所述升级处理模块,配置为当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区。
上述方案中,所述升级模块,还配置为根据所述升级处理模块的指示对升级失败的分区进行升级,并将升级结果送至所述升级处理模块;
所述升级处理模块,还配置为对于每个需要升级的分区,分区升级成功时,将升级完成的信息存储到分区升级信息标识表中;当升级失败的分区恢复完成后,指示所述升级模块重新对所述升级失败的分区进行升级。
上述方案中,所述备份模块,配置为将当前需要升级的分区内的系统文件存储到所述备份缓冲区中;或者,将各需要升级的分区内的系统文件
按分区分别存储到独立的备份缓冲区中,并记录每个备份缓冲区备份的系统文件所属的分区信息。
上述方案中,所述系统还包括:下载模块,配置为下载FOTA升级包,并校验下载的FOTA升级包的有效性,将下载的FOTA升级包内需要升级的分区名称发送给配置模块;
所述配置模块,配置为根据下载的FOTA升级包内需要升级的各分区名称建立分区升级信息标识表。
上述方案中,所述配置模块,配置为将所述分区升级信息标识表存储的初始状态信息配置为相应分区未升级或升级失败的状态信息;
所述升级处理模块,配置为在分区升级成功后,将升级完成的信息更新到分区升级信息标识表中相应分区的名称或分区号下。
上述方案中,所述分区升级信息标识表存储于NVRAM中。
上述方案中,所述升级处理模块,还配置为在所有需要升级分区均升级成功后,删除分区升级信息标识表和FOTA升级包;并删除所述备份缓冲区,将备份缓冲区恢复为存储区。
上述方案中,所述配置模块,还配置为建立引导加载分区;所述引导加载分区用于存储所述分区升级信息标识表并将引导加载分区内的指针程序指向所述备份缓冲区;
所述升级处理模块,还配置为在分区升级失败后,通过所述引导加载分区检测所述分区升级信息标识表,得到所述升级失败的分区的分区信息;所述引导加载分区通过所述升级失败的分区的分区信息,将引导加载分区内的指针程序指向相应的备份缓冲区,并将备份缓冲区作为系统分区启动系统;系统启动后,将作为系统分区的备份缓冲区内的分区系统文件恢复到升级失败的分区。
一种计算机存储介质,所述计算机存储介质包括一组指令,当执行所
述指令时,引起至少一个处理器执行上述的FOTA升级方法。
本发明实施例提供的FOTA固件升级方法、系统及计算机存储介质,建立分区升级信息标识表并设置备份缓冲区,在分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;之后,根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;对于每个需要升级的分区,分区升级失败时,从分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复升级失败的分区。如此,可有效地防止因升级失败造成系统功能不能恢复,使手机“变砖”返厂修理。
另外,对于每个需要升级的分区,分区升级成功时,将升级成功的信息存储到分区升级信息标识表中,当升级失败的分区恢复完成后,重新对所述升级失败的分区进行升级;重新升级成功后,将升级成功的信息存储到分区升级信息标识表中;重新升级成功后,将升级成功的信息存储到分区升级信息标识表中,由于本发明实施例能有针对性地仅对升级失败的分区进行更新,这样,就能有效避免在分区升级失败后重新升级所有的分区造成升级时间过长,使用户使用体验不佳的问题。
除此以外,恢复完成后,再重新对所述升级失败的分区进行升级,由于分区升级失败后不需要重新升级所有的分区,减轻了FOTA服务器的工作压力,使FOTA升级的效率大大提高,进而改善用户的使用体验。
图1为本发明实施例FOTA升级方法的处理流程示意图;
图2为本发明实施例中终端固件的结构以及FOTA服务器与终端固件的交互关系示意图;
图3为本发明实施例FOTA升级系统的结构示意图;
图4为本发明实施例FOTA升级系统的逻辑示意图。
下面结合附图和实施例对本发明作进一步的详细说明。
在本发明的各种实施例中,建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息;分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区。
具体地,先下载并校验FOTA升级包的有效性,根据FOTA升级包内需要升级的各分区名称,建立一个分区升级信息标识表,并设置一个备份缓冲区;
在对各分区依次升级时,将需要升级的分区内的系统文件存储到预先设定的备份缓冲区中,并通过FOTA升级包内的分区升级文件依次对每个分区进行升级;每个分区升级完成后,将升级完成的信息存储到分区升级信息标识表中;
在分区升级失败后,检测所述分区升级信息标识表,获取升级失败的分区的分区信息;根据获得的升级失败的分区的分区信息,将备份缓冲区内备份的分区系统文件恢复到所述升级失败的分区;恢复完成后,重新对所述升级失败的分区进行升级;对所述升级失败的分区重新升级完成后,再将所述分区升级完成的信息存储到分区升级信息标识表中;之后,可以继续对其它未升级的分区依次进行升级。
本发明实施例提供的一种FOTA升级方法,如图1所示,所述方法流程包括以下步骤:
S1:建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区
升级信息标识表用于存储各分区的升级状态信息;
本步骤之前,先下载FOTA升级包,并校验下载的FOTA升级包的有效性;具体如图2所示,可通过终端设备发起FOTA升级命令,通过终端设备与FOTA服务器的交互进行鉴权,得到终端设备可更新的信息后下载FOTA升级包;
相应地,本步骤中所述建立分区升级信息标识表为:根据下载的FOTA升级包内需要升级的各分区名称建立一个分区升级信息标识表。
S2:分区升级前,将需要升级分区内的系统文件存储到所述备份缓冲区中;根据FOTA升级包内的分区升级文件依次对每个需要升级分区进行升级;
这里,在对需要升级的分区进行升级时,可先将当前需要升级的分区内的系统文件存储到一个备份缓冲区中,升级失败时,直接将备份缓冲区内的系统文件恢复到升级失败的分区;或者,在对需要升级的分区进行升级时,将各需要升级的分区内的系统文件按分区分别存储到独立的备份缓冲区中并记录每个备份缓冲区备份的系统文件所属的分区信息,在升级失败时,通过根据升级失败的分区的分区信息查找相应的备份缓冲,并将升级失败的分区的系统文件恢复到升级失败的分区。
对于每个需要升级的分区,当分区升级成功时,将升级成功的信息存储到分区升级信息标识表中。
S3:当分区升级失败时,从分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原系统文件,恢复升级失败的分区;
这里,在一实施例中,升级失败的分区恢复完成后,重新对所述升级失败的分区进行升级;重新升级成功后,将升级成功的信息存储到分区升级信息标识表中。
这里,在分区升级信息标识表中,一个分区对应分区升级信息标识表中的一个记录表项;所述从分区升级信息标识表中获取升级失败分区的分区信息可以是:根据分区名称或分区号等分区的标识信息,检测所述分区升级信息标识表,得到升级失败分区对应的记录表项中的分区信息;然后,根据获得的分区信息获取备份缓冲区内存储的该升级失败分区对应的原分区系统文件,用得到的系统文件恢复该升级失败的分区;
升级失败的分区中的系统文件恢复完成后,即可对该升级失败的分区重新进行升级操作;且分区升级成功后,同样需将该分区升级成功的信息存储到分区升级信息标识表中。
在一实施例中,一个分区升级成功后,可继续对其它未升级的分区依次进行升级,全部分区升级成功完成后,可将结果返回给FOTA服务器。
这里,所述分区升级信息标识表存储的初始状态信息为相应分区未升级或升级失败的状态信息;在分区升级成功完成后,将升级完成的信息更新到分区升级信息标识表中相应分区的名称下;所述备份缓冲区占用的存储空间不小于升级前各分区中系统文件最大的分区占用的存储空间。其中,系统文件为二进制数,因此,要升级的分区所占的存储空间在终端设备中并不大,一般最大的也只有在几十兆左右。
本发明实施例中,需要升级的分区至少包括recovery分区,或者与recovery分区功能类似的分区,这是因为一般情况下recovery分区作为恢复、启动或升级系统使用的引导分区,是移动终端如手机必不可少的一部分。recovery分区一般是FOTA的启动分区,如果升级过程中若遭遇断电或者其它等异常情况导致升级中断或者失败,会导致系统重启后崩溃,因此,一旦recovery分区损坏或升级失败手机很可能会“变砖”;而loader分区是载入系统区的唯一入口,正常情况下不会进行升级。通过本发明实施例的FOTA升级方法对移动终端进行升级,可以避免“变砖”的情况发生。
对于一般的双系统来说,recovery分区和系统使用的启动分区不同,系统重启后可直接启动系统程序,因此,一般分区升级信息标识表存储于非易失性随机访问存储器(NVRAM)中;当分区升级失败后,检测位于NVRAM中的分区升级信息标识表获得各分区的名称和相应的分区升级状态。根据得到的升级失败的分区名称可以将备份缓冲区中的升级前分区内的系统文件恢复到该升级失败的分区中,即通过分区升级信息标识表得到恢复的目的地址或区域。
当所有分区升级成功完成后,可删除分区升级信息标识表和升级包,同时删除所述备份缓冲区并将备份缓冲区恢复为存储区。
对于单系统来说,由于recovery分区和系统使用同一个启动分区(双系统有独立的recovery分区),相当于复用了系统分区作为recovery分区。而实施固件升级功能时,需启动少量必须的系统程序,此时一旦该分区升级失败会损坏系统内核和系统启动需要使用的系统应用,系统没有加载的具体程序,因此会导致系统无法启动。为应对这一情况,在建立升级信息标识表和备份缓冲区时,建立一个引导加载分区,引导加载分区可用于存储所述分区升级信息标识表,同时将引导加载分区内的指针程序指向所述备份缓冲区。
当分区升级失败后,所述引导加载分区即boot分区检测所述分区升级信息标识表得到该升级失败的分区的分区信息;引导加载分区内的指针程序指向备份缓冲区,并将备份缓冲区作为系统分区启动系统;即将引导加载分区作为系统必要的具体的程序指针,由于系统启动时必然首先启动loader分区,正常情况下单系统的loader分区直接指向系统分区,而此时系统分区由于升级的原因文件已经损坏,系统没有加载程序,因此不可能启动系统。通过预先建立的引导加载分区即boot分区,在系统启动时loader分区把引导权交给boot分区,boot分区指向备份的系统文件,如此实现系
统的启动。系统启动后,将作为系统分区的备份缓冲区内的原分区系统文件恢复到该升级失败的分区。
为实现本发明实施例的方法,本发明实施例还提供了一种FOTA固件升级系统。本发明实施例应用的FOTA固件升级系统,如图3所示,所述系统包括:配置模块31、备份模块32、升级模块33和升级处理模块34;其中,
所述配置模块31,配置为建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息;
所述备份模块32,配置为在分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;
所述升级模块33,配置为根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;
所述升级处理模块34,配置为当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区。
在一实施例中,所述升级处理模块34,还配置为在所有需要升级分区均升级成功后,删除分区升级信息标识表和FOTA升级包;并删除所述备份缓冲区,将备份缓冲区恢复为存储区。
其中,所述升级模块33,还配置为根据所述升级处理模块的指示对升级失败的分区进行升级,并将升级结果送至所述升级处理模块;
所述升级处理模块34,还配置为对于每个需要升级的分区,分区升级成功时,将升级完成的信息存储到分区升级信息标识表中;当升级失败的分区恢复完成后,指示所述升级模块重新对所述升级失败的分区进行升级。
所述备份模块32,具体配置为将当前需要升级的分区内的系统文件存
储到所述备份缓冲区中;或者,将各需要升级的分区内的系统文件按分区分别存储到独立的备份缓冲区中,并记录每个备份缓冲区备份的系统文件所属的分区信息。
其中,所述系统还包括下载模块35,配置为下载FOTA升级包,并校验下载的FOTA升级包的有效性,将下载的FOTA升级包内需要升级的分区名称发送给配置模块31;
所述配置模块31,具体配置为根据下载的FOTA升级包内需要升级的各分区名称建立分区升级信息标识表。
所述分区升级信息标识表存储的初始状态信息配置为相应分区未升级或升级失败的状态信息;所述升级处理模块33,具体配置为在分区升级成功后,将升级完成的信息更新到分区升级信息标识表中相应分区的名称或分区号下。
对于双系统,所述分区升级信息标识表存储于NVRAM中。
对于单系统,所述配置模块31,还配置为建立引导加载分区,所述引导加载分区用于存储所述分区升级信息标识表并将引导加载分区内的指针程序指向所述备份缓冲区;
所述升级处理模块34,还配置为在分区升级失败后,通过所述引导加载分区检测所述分区升级信息标识表,得到所述升级失败的分区的分区信息;所述引导加载分区通过所述升级失败的分区的分区信息,将引导加载分区内的指针程序指向相应的备份缓冲区,并将备份缓冲区作为系统分区启动系统;系统启动后,将作为系统分区的备份缓冲区内的分区系统文件恢复到升级失败的分区。
在实际应用中,所述配置模块31、备份模块32、升级模块33和升级处理模块34和下载模块35可由位于FOTA固件升级系统中的中央处理器(Central Processing Unit,CPU)、微处理器(Micro Processor Unit,MPU)、
数字信号处理器(Digital Signal Processor,DSP)、或现场可编程门阵列(Field Programmable Gate Array,FPGA)等实现。
由于recovery分区一般是固件升级时最先升级的分区,同时也是最重要的分区,现以recovery分区作为一个分区升级时的实施例,对本发明进行说明,具体逻辑如图4所示。
实施例1,在双系统的固件升级时,本实施例的FOTA升级过程包括:
步骤a1:终端固件向FOTA服务器发送固件升级请求,将终端固件的当前型号和版本等信息发送给FOTA服务器;若FOTA服务器确认终端可进行升级则告知终端固件接收升级包,进入步骤a2的环节;若FOTA服务器认为当前终端固件不可升级则告知终端固件停止本次固件更新;
步骤a2:下载并校验FOTA升级包的有效性;若升级包有效,可以进行升级,则进入步骤a3的环节;若升级包无效,则直接结束本次固件更新;
步骤a3:进入升级环节,检测升级包,根据升级包内的分区升级列表(相当于安装列表,告知系统按顺序安装各分区,但无标识功能),建立相应分区升级信息标识表,将分区升级信息标识表的信息置为未升级;检测当前系统的分区信息,得到各分区占用存储空间大小的信息从而在Flash存储器上建立备份缓冲区;
步骤a4:通过分区升级列表的升级顺序得知首先升级recovery分区,此时将现在系统上的recovery分区内的系统文件存储到备份缓冲区,存储完成后通过升级文件对recovery分区进行升级;
步骤a5:检测当前recovery分区是否升级成功,若升级成功在分区升级信息标识表的recovery分区名称下填入分区完成的信息,并对下一分区进行升级,即跳回步骤a4,继续对系统分区、文件分区等其他分区进行升级,过程同recovery分区的升级过程,直至全部分区升级结束;
这里,一般情况下无论recovery分区是否更新成功系统都会重启一次,
当系统重启后会检测分区升级列表从而得知recovery分区是否升级完成;
若检测到分区升级信息标识表的recovery分区名称下的信息没有改变,仍然是未完成,则将备份缓冲区内的原系统文件恢复到recovery分区,如此恢复了recovery分区即恢复了系统的功能;此时跳至步骤a4继续对recovery分区进行升级。
实施例2,在单系统固件升级时,由于单系统相当于recovery分区和系统使用同一个分区,因此在本实施例中将其统称为系统分区,同时系统一般会先升级系统分区;本实施例的FOTA升级过程包括:
步骤b1和步骤b2与实施例1中步骤a1和步骤a2相同,此处不再累述;
步骤b3:进入升级环节,检测升级包,根据升级包内的分区升级列表,建立相应分区升级信息标识表,将分区升级信息标识表的信息置为未升级;检测当前系统的分区信息,得到各分区占用存储空间大小的信息从而在Flash存储器上建立备份缓冲区;同时在Flash存储器上建立一个引导加载分区,以下简称boot分区;
步骤b4:通过分区升级列表的升级顺序得知首先升级系统分区,此时将现在系统上的系统分区内的系统文件存储到备份缓冲区,存储完成后通过升级文件对系统分区进行升级;
步骤b5:检测当前系统分区是否升级成功,若升级成功在分区升级信息标识表的系统分区名称下填入分区完成的信息,并对下一分区进行升级,即跳回步骤b4,继续对文件分区等其他分区进行升级,过程同系统分区的升级过程,直至全部分区升级结束;
若检测到分区升级信息标识表的系统分区名称下的信息没有改变,仍然是未完成,则需要将备份缓冲区内的原系统文件恢复到系统分区;boot分区内的指针程序指向备份缓冲区,并将该备份缓冲区作为系统分区,如此启动系统;系统启动后,将作为系统分区的备份缓冲区内的原分区系统
文件恢复到该升级失败的分区,恢复完成后重新升级系统分区,即跳至步骤b4。
由于recovery分区和系统使用同一个分区,一旦该分区升级失败,意味着既没有能够指向的系统,又没有能够恢复系统的方式。此时虽然备份了原系统文件,loader分区却不知如何将其指向该系统文件,因此系统不能启动;此时,loader分区将指向功能交给boot分区,由于boot分区的指针指向备份缓冲区,即相当于将备份缓冲区作为原来的系统分区,boot分区相当于一个桥梁连接loader分区和原系统分区,如此解决了单系统或者由于系统结构的问题在升级过程中系统重启后不能载入必要程序的问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个
流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
基于此,本发明实施例还提供了一种计算机存储介质,所述计算机存储介质包括一组指令,当执行所述指令时,引起至少一个处理器执行本发明实施例所提供的FOTA升级方法。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
本发明实施例提供的方案,建立分区升级信息标识表并设置备份缓冲区,在分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;之后,根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;对于每个需要升级的分区,分区升级失败时,从分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复升级失败的分区。如此,可有效地防止因升级失败造成系统功能不能恢复,使手机“变砖”返厂修理。
Claims (18)
- 一种无线固件FOTA升级方法,所述方法包括:建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息;分区升级前,将需要升级的分区内的系统文件存储到所述备份缓冲区中;根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区。
- 根据权利要求1所述的方法,其中,对于每个需要升级的分区,当分区升级成功时,将升级成功的信息存储到分区升级信息标识表中;当升级失败的分区恢复完成后,重新对所述升级失败的分区进行升级;重新升级成功后,将升级成功的信息存储到分区升级信息标识表中。
- 根据权利要求1所述的方法,其中,所述将需要升级的分区内的系统文件存储到所述备份缓冲区中包括:将当前需要升级的分区内的系统文件存储到所述备份缓冲区中;或者,将各需要升级的分区内的系统文件按分区分别存储到独立的备份缓冲区中,并记录每个备份缓冲区备份的系统文件所属的分区信息。
- 根据权利要求1所述的方法,其中,所述方法还包括:下载FOTA升级包,并校验下载的FOTA升级包的有效性;所述建立分区升级信息标识表为:根据下载的FOTA升级包内需要升级的各分区名称建立分区升级信息标识表。
- 根据权利要求1所述的方法,其中,所述分区升级信息标识表存储 的初始状态信息为相应分区未升级或升级失败的状态信息;将所述升级完成的信息存储到分区升级信息标识表中为:在一个分区升级成功完成后,将当前分区升级完成的信息更新到分区升级信息标识表中相应分区的名称或分区号下。
- 根据权利要求1所述的方法,其中,所述需要升级分区至少包括recovery分区。
- 根据权利要求1至6任一项所述的方法,其中,所述分区升级信息标识表存储于非易失性随机访问存储器NVRAM中;所述方法还包括:分区升级失败后,检测位于NVRAM中的分区升级信息标识表获得各分区的名称和相应的分区升级状态。
- 根据权利要求1至6任一项所述的方法,其中,所述方法还包括:所有需要升级的分区均升级成功后,删除分区升级信息标识表和FOTA升级包;并删除所述备份缓冲区,将备份缓冲区恢复为存储区。
- 根据权利要求1至6任一项所述的方法,其中,所述方法还包括:建立引导加载分区,所述引导加载分区用于存储所述分区升级信息标识表,并将引导加载分区内的指针程序指向所述备份缓冲区;分区升级失败后,所述引导加载分区检测所述分区升级信息标识表,得到所述升级失败的分区的分区信息;所述引导加载分区内的指针程序指向备份缓冲区,并将备份缓冲区作为系统分区启动系统;系统启动后,将作为系统分区的备份缓冲区内的分区系统文件恢复到升级失败的分区。
- 一种FOTA升级系统,所述系统包括:配置模块、备份模块、升级模块和升级处理模块;其中,所述配置模块,配置为建立分区升级信息标识表,并设置备份缓冲区;其中,所述分区升级信息标识表用于存储各分区的升级状态信息;所述备份模块,配置为在分区升级前,将需要升级的分区内的系统文 件存储到所述备份缓冲区中;所述升级模块,配置为根据FOTA升级包内的分区升级文件依次对每个需要升级的分区进行升级;所述升级处理模块,配置为当分区升级失败时,从所述分区升级信息标识表中获取升级失败的分区的分区信息,根据获得的升级失败的分区的分区信息获取备份缓冲区内存储的原分区系统文件,恢复所述升级失败的分区。
- 根据权利要求10所述的系统,其中,所述升级模块,还配置为根据所述升级处理模块的指示对升级失败的分区进行升级,并将升级结果送至所述升级处理模块;所述升级处理模块,还配置为对于每个需要升级的分区,分区升级成功时,将升级完成的信息存储到分区升级信息标识表中;当升级失败的分区恢复完成后,指示所述升级模块重新对所述升级失败的分区进行升级。
- 根据权利要求10所述的系统,其中,所述备份模块,配置为将当前需要升级的分区内的系统文件存储到所述备份缓冲区中;或者,将各需要升级的分区内的系统文件按分区分别存储到独立的备份缓冲区中,并记录每个备份缓冲区备份的系统文件所属的分区信息。
- 根据权利要求10所述的系统,其中,所述系统还包括:下载模块,配置为下载FOTA升级包,并校验下载的FOTA升级包的有效性,将下载的FOTA升级包内需要升级的分区名称发送给配置模块;所述配置模块,配置为根据下载的FOTA升级包内需要升级的各分区名称建立分区升级信息标识表。
- 根据权利要求10所述的系统,其中,所述配置模块,配置为将所述分区升级信息标识表存储的初始状态信息配置为相应分区未升级或升级失败的状态信息;所述升级处理模块,配置为在分区升级成功后,将升级完成的信息更新到分区升级信息标识表中相应分区的名称或分区号下。
- 根据权利要求10至14任一项所述的系统,其中,所述分区升级信息标识表存储于NVRAM中。
- 根据权利要求10至14任一项所述的系统,其中,所述升级处理模块,还配置为在所有需要升级分区均升级成功后,删除分区升级信息标识表和FOTA升级包;并删除所述备份缓冲区,将备份缓冲区恢复为存储区。
- 根据权利要求10至14任一项所述的系统,其中,所述配置模块,还配置为建立引导加载分区;所述引导加载分区用于存储所述分区升级信息标识表并将引导加载分区内的指针程序指向所述备份缓冲区;所述升级处理模块,还配置为在分区升级失败后,通过所述引导加载分区检测所述分区升级信息标识表,得到所述升级失败的分区的分区信息;所述引导加载分区通过所述升级失败的分区的分区信息,将引导加载分区内的指针程序指向相应的备份缓冲区,并将备份缓冲区作为系统分区启动系统;系统启动后,将作为系统分区的备份缓冲区内的分区系统文件恢复到升级失败的分区。
- 一种计算机存储介质,所述计算机存储介质包括一组指令,当执行所述指令时,引起至少一个处理器执行如权利要求1至9任一项所述的FOTA升级方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510690493.0A CN106610840A (zh) | 2015-10-22 | 2015-10-22 | 一种无线固件升级方法及系统 |
| CN201510690493.0 | 2015-10-22 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017067448A1 true WO2017067448A1 (zh) | 2017-04-27 |
Family
ID=58556656
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2016/102471 Ceased WO2017067448A1 (zh) | 2015-10-22 | 2016-10-18 | 一种无线固件升级方法、系统及计算机存储介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN106610840A (zh) |
| WO (1) | WO2017067448A1 (zh) |
Cited By (39)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107911248A (zh) * | 2017-11-27 | 2018-04-13 | 北京百度网讯科技有限公司 | 升级方法和装置 |
| CN109992450A (zh) * | 2018-01-03 | 2019-07-09 | 中兴通讯股份有限公司 | 系统升级回退方法、终端、服务器及存储介质 |
| CN110471680A (zh) * | 2019-07-23 | 2019-11-19 | 武汉格罗夫氢能汽车有限公司 | 用于氢能汽车控制器软件升级及失败回滚的控制方法 |
| CN110569058A (zh) * | 2019-09-09 | 2019-12-13 | Oppo(重庆)智能科技有限公司 | 系统升级方法、装置、终端及计算机可读存储介质 |
| WO2019237222A1 (zh) * | 2018-06-11 | 2019-12-19 | 海能达通信股份有限公司 | 一种系统升级方法、智能设备及服务器 |
| WO2020010695A1 (zh) * | 2018-07-13 | 2020-01-16 | 深圳市道通智能航空技术有限公司 | 无人机系统中的模块升级方法及待升级模块 |
| CN110764801A (zh) * | 2019-09-29 | 2020-02-07 | 国网湖南省电力有限公司 | 一种高速电力线载波远程升级方法及装置 |
| CN111813597A (zh) * | 2020-06-08 | 2020-10-23 | 海信(山东)空调有限公司 | 一种空调器 |
| CN112214345A (zh) * | 2020-11-02 | 2021-01-12 | 西安电子工程研究所 | 一种基于多重加载的多fpga软件烧写故障恢复方法 |
| CN112328287A (zh) * | 2020-11-24 | 2021-02-05 | 杭州海康威视数字技术股份有限公司 | 嵌入式设备系统更新方法、装置、设备及存储介质 |
| CN112363749A (zh) * | 2020-09-04 | 2021-02-12 | 中核武汉核电运行技术股份有限公司 | 一种mips架构系统的安全启动和升级方法 |
| CN112804071A (zh) * | 2019-11-13 | 2021-05-14 | 中兴通讯股份有限公司 | 在线升级方法、升级文件提供方法、设备及存储介质 |
| CN112817625A (zh) * | 2021-01-29 | 2021-05-18 | 青岛海信移动通信技术股份有限公司 | 系统升级方法、装置、电子设备及存储介质 |
| CN113050960A (zh) * | 2019-12-27 | 2021-06-29 | 惠州比亚迪电子有限公司 | Ota升级方法、装置、车载终端及存储介质 |
| CN113110966A (zh) * | 2021-03-12 | 2021-07-13 | 广东纳睿雷达科技股份有限公司 | 系统升级监控管理方法、嵌入式系统和存储介质 |
| CN113297011A (zh) * | 2021-06-09 | 2021-08-24 | 北京经纬恒润科技股份有限公司 | 一种主从mcu升级失败的自恢复方法及系统 |
| CN113296819A (zh) * | 2021-06-10 | 2021-08-24 | 南京创通微新通信有限公司 | 网桥设备集中管理升级系统及方法 |
| CN113626059A (zh) * | 2021-10-13 | 2021-11-09 | 北京创米智汇物联科技有限公司 | 系统升级方法、摄像机及计算机可读存储介质 |
| CN113905039A (zh) * | 2021-09-30 | 2022-01-07 | 苏州挚途科技有限公司 | 系统升级文件传输方法、装置及系统 |
| CN114895939A (zh) * | 2022-05-10 | 2022-08-12 | 瑞芯微电子股份有限公司 | 升级固件的方法、电子设备及计算机可读介质 |
| CN115202679A (zh) * | 2021-06-30 | 2022-10-18 | 惠州华阳通用电子有限公司 | 一种基于车载以太网的ecu升级方法及装置 |
| CN115480798A (zh) * | 2021-06-15 | 2022-12-16 | 荣耀终端有限公司 | 操作系统升级方法、设备、存储介质及计算机程序产品 |
| CN115543393A (zh) * | 2022-12-01 | 2022-12-30 | 摩尔线程智能科技(北京)有限责任公司 | 升级方法、电子设备及存储介质 |
| CN115686567A (zh) * | 2022-10-27 | 2023-02-03 | 歌尔科技有限公司 | 安卓系统中ota升级方法、装置、可穿戴设备及介质 |
| CN115729586A (zh) * | 2021-06-15 | 2023-03-03 | 荣耀终端有限公司 | 操作系统升级方法、设备、存储介质及计算机程序产品 |
| CN115857979A (zh) * | 2021-09-24 | 2023-03-28 | 上海擎感智能科技有限公司 | 系统升级方法、车载主机设备及存储介质 |
| CN115903722A (zh) * | 2022-08-04 | 2023-04-04 | 重庆长安汽车股份有限公司 | 一种汽车自动驾驶控制器系统升级断电后的自恢复方法、系统、设备、介质 |
| CN116069377A (zh) * | 2023-02-24 | 2023-05-05 | 武汉天喻信息产业股份有限公司 | 一种差分升级方法、装置、设备及可读存储介质 |
| CN116069369A (zh) * | 2021-10-29 | 2023-05-05 | 荣耀终端有限公司 | 控制升级温度的方法、设备、存储介质及计算机程序产品 |
| CN116149706A (zh) * | 2023-02-20 | 2023-05-23 | 北斗星通智联科技有限责任公司 | 一种车辆设备升级方法、装置、车辆和可读存储介质 |
| CN116185461A (zh) * | 2023-04-28 | 2023-05-30 | 广东华芯微特集成电路有限公司 | 固件升级方法及架构 |
| CN116501340A (zh) * | 2023-06-30 | 2023-07-28 | 江苏博云科技股份有限公司 | 嵌入式系统的发布系统的构建方法和构建系统 |
| CN116932010A (zh) * | 2023-09-14 | 2023-10-24 | 首都信息科技发展有限公司 | 系统固件升级方法、装置及服务器 |
| CN117539518A (zh) * | 2024-01-02 | 2024-02-09 | 江苏天华汽车电子科技有限公司 | 应用程序升级方法和电子设备 |
| CN118227383A (zh) * | 2024-05-22 | 2024-06-21 | 湖北芯擎科技有限公司 | 槽位一致性控制方法、装置、设备及可读存储介质 |
| CN118567692A (zh) * | 2024-07-31 | 2024-08-30 | 苏州元脑智能科技有限公司 | 一种基本输入输出系统固件升级方法、产品、设备及介质 |
| CN119557145A (zh) * | 2025-01-23 | 2025-03-04 | 北京国科天迅科技股份有限公司 | 固件程序的远程升级方法、装置和计算机设备 |
| CN120469712A (zh) * | 2025-07-11 | 2025-08-12 | 湖北芯擎科技有限公司 | 分区新增和分区映射烧录实现方法、装置、设备及介质 |
| WO2026066856A1 (zh) * | 2024-09-25 | 2026-04-02 | 东风汽车集团股份有限公司 | 油泵电机控制器备份方法、装置、设备及存储介质 |
Families Citing this family (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108874582A (zh) * | 2017-05-15 | 2018-11-23 | 上海宽翼通信科技有限公司 | 一种系统恢复方法、装置及终端 |
| CN107133056A (zh) * | 2017-06-09 | 2017-09-05 | 北京云创远景软件有限责任公司 | 智能设备升级恢复分区的方法和装置 |
| CN107341074B (zh) * | 2017-07-25 | 2019-06-18 | Oppo广东移动通信有限公司 | 一种升级异常修复方法、升级异常修复装置及智能终端 |
| CN107608879B (zh) * | 2017-08-24 | 2020-08-21 | 北京珠穆朗玛移动通信有限公司 | 一种故障检测方法、装置和存储介质 |
| CN108038022A (zh) * | 2017-12-19 | 2018-05-15 | 盛科网络(苏州)有限公司 | 一种提高交换机系统存储稳定性的方法 |
| CN110045971B (zh) * | 2018-01-16 | 2023-03-24 | 浙江宇视科技有限公司 | 系统升级恢复方法及装置 |
| CN108647114B (zh) * | 2018-03-30 | 2022-03-08 | 斑马网络技术有限公司 | 车机操作系统及其启动方法、系统分区更新和恢复方法 |
| CN109032632B (zh) * | 2018-07-13 | 2021-11-09 | 高新兴物联科技有限公司 | 一种fota升级方法、无线通信终端及存储介质 |
| CN109240720B (zh) * | 2018-08-23 | 2021-11-26 | 瑞芯微电子股份有限公司 | 一种安卓系统的固件升级方法及一种存储设备 |
| CN109634631A (zh) * | 2018-11-01 | 2019-04-16 | 北京锦鸿希电信息技术股份有限公司 | 固件恢复方法、装置、电子设备及固件恢复系统 |
| CN111158712A (zh) * | 2018-11-07 | 2020-05-15 | 中兴通讯股份有限公司 | 一种车载Tbox升级的方法、装置、设备以及存储介质 |
| CN109614128B (zh) * | 2018-11-15 | 2022-03-15 | 深圳市广和通无线股份有限公司 | 程序升级方法、装置、计算机设备和存储介质 |
| CN109815053B (zh) * | 2019-01-04 | 2021-04-06 | 厦门亿联网络技术股份有限公司 | 一种实现ip话机多模式系统升级失败恢复方法 |
| CN110780890B (zh) * | 2019-10-24 | 2023-06-06 | 百度在线网络技术(北京)有限公司 | 系统升级方法、装置、电子设备和介质 |
| CN111158729A (zh) * | 2019-12-30 | 2020-05-15 | 深圳Tcl数字技术有限公司 | 系统升级方法、装置、设备及存储介质 |
| CN111338675A (zh) * | 2020-02-25 | 2020-06-26 | 杭州涂鸦信息技术有限公司 | 一种移动设备ota升级方法和系统及其设备 |
| CN112181467B (zh) * | 2020-10-10 | 2023-11-14 | 北京字节跳动网络技术有限公司 | 终端的存储器固件升级方法、装置、终端和存储介质 |
| CN112214360B (zh) * | 2020-11-05 | 2023-12-22 | 中国航空工业集团公司西安航空计算技术研究所 | 一种面向在线数据加载的冗余区域数据实时备份启动方法 |
| CN112860291B (zh) * | 2021-02-08 | 2023-05-12 | 杭州涂鸦信息技术有限公司 | 固件升级方法及装置 |
| CN112783535A (zh) * | 2021-03-10 | 2021-05-11 | 广州优胜汽车科技有限公司 | 固件升级方法、嵌入式装置及存储介质 |
| CN113238771B (zh) * | 2021-04-27 | 2022-06-21 | 瑞芯微电子股份有限公司 | 一种基于安卓系统的fota固件升级方法和装置 |
| CN113805922A (zh) * | 2021-09-27 | 2021-12-17 | 一飞智控(天津)科技有限公司 | 嵌入式linux双备份分区升级切换的方法、系统、终端及应用 |
| EP4357902A4 (en) | 2021-11-30 | 2024-12-18 | Samsung Electronics Co., Ltd. | ELECTRONIC DEVICE FOR MANAGING A MEMORY SPACE AND METHOD FOR OPERATING AN ELECTRONIC DEVICE |
| CN115509825A (zh) * | 2022-11-23 | 2022-12-23 | 北京紫光青藤微系统有限公司 | 数据处理方法、装置、nfc芯片及计算机可读存储介质 |
| CN120276743A (zh) * | 2023-12-29 | 2025-07-08 | 荣耀终端股份有限公司 | 一种补丁安装方法、设备及存储介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1271322A2 (en) * | 2001-06-27 | 2003-01-02 | Nokia Corporation | Crash recovery system |
| CN103473099A (zh) * | 2013-09-13 | 2013-12-25 | 惠州Tcl移动通信有限公司 | 一种移动终端的软件升级方法和系统 |
| CN104375844A (zh) * | 2013-08-12 | 2015-02-25 | 中兴通讯股份有限公司 | 固件升级方法及装置 |
| CN104714811A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置、系统差分升级方法及装置 |
-
2015
- 2015-10-22 CN CN201510690493.0A patent/CN106610840A/zh not_active Withdrawn
-
2016
- 2016-10-18 WO PCT/CN2016/102471 patent/WO2017067448A1/zh not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1271322A2 (en) * | 2001-06-27 | 2003-01-02 | Nokia Corporation | Crash recovery system |
| CN104375844A (zh) * | 2013-08-12 | 2015-02-25 | 中兴通讯股份有限公司 | 固件升级方法及装置 |
| CN103473099A (zh) * | 2013-09-13 | 2013-12-25 | 惠州Tcl移动通信有限公司 | 一种移动终端的软件升级方法和系统 |
| CN104714811A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置、系统差分升级方法及装置 |
Cited By (55)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107911248A (zh) * | 2017-11-27 | 2018-04-13 | 北京百度网讯科技有限公司 | 升级方法和装置 |
| CN109992450A (zh) * | 2018-01-03 | 2019-07-09 | 中兴通讯股份有限公司 | 系统升级回退方法、终端、服务器及存储介质 |
| WO2019237222A1 (zh) * | 2018-06-11 | 2019-12-19 | 海能达通信股份有限公司 | 一种系统升级方法、智能设备及服务器 |
| WO2020010695A1 (zh) * | 2018-07-13 | 2020-01-16 | 深圳市道通智能航空技术有限公司 | 无人机系统中的模块升级方法及待升级模块 |
| US11861344B2 (en) | 2018-07-13 | 2024-01-02 | Autel Robotics Co., Ltd. | Module upgrade method and module to be upgraded in unmanned aerial vehicle system |
| CN110471680A (zh) * | 2019-07-23 | 2019-11-19 | 武汉格罗夫氢能汽车有限公司 | 用于氢能汽车控制器软件升级及失败回滚的控制方法 |
| CN110569058A (zh) * | 2019-09-09 | 2019-12-13 | Oppo(重庆)智能科技有限公司 | 系统升级方法、装置、终端及计算机可读存储介质 |
| CN110764801A (zh) * | 2019-09-29 | 2020-02-07 | 国网湖南省电力有限公司 | 一种高速电力线载波远程升级方法及装置 |
| CN110764801B (zh) * | 2019-09-29 | 2024-02-27 | 国网湖南省电力有限公司 | 一种高速电力线载波远程升级方法及装置 |
| CN112804071A (zh) * | 2019-11-13 | 2021-05-14 | 中兴通讯股份有限公司 | 在线升级方法、升级文件提供方法、设备及存储介质 |
| CN113050960A (zh) * | 2019-12-27 | 2021-06-29 | 惠州比亚迪电子有限公司 | Ota升级方法、装置、车载终端及存储介质 |
| CN111813597A (zh) * | 2020-06-08 | 2020-10-23 | 海信(山东)空调有限公司 | 一种空调器 |
| CN112363749A (zh) * | 2020-09-04 | 2021-02-12 | 中核武汉核电运行技术股份有限公司 | 一种mips架构系统的安全启动和升级方法 |
| CN112363749B (zh) * | 2020-09-04 | 2024-06-07 | 中核武汉核电运行技术股份有限公司 | 一种mips架构系统的安全启动和升级方法 |
| CN112214345A (zh) * | 2020-11-02 | 2021-01-12 | 西安电子工程研究所 | 一种基于多重加载的多fpga软件烧写故障恢复方法 |
| CN112214345B (zh) * | 2020-11-02 | 2022-12-06 | 西安电子工程研究所 | 一种基于多重加载的多fpga软件烧写故障恢复方法 |
| CN112328287B (zh) * | 2020-11-24 | 2024-05-03 | 杭州海康威视数字技术股份有限公司 | 嵌入式设备系统更新方法、装置、设备及存储介质 |
| CN112328287A (zh) * | 2020-11-24 | 2021-02-05 | 杭州海康威视数字技术股份有限公司 | 嵌入式设备系统更新方法、装置、设备及存储介质 |
| CN112817625A (zh) * | 2021-01-29 | 2021-05-18 | 青岛海信移动通信技术股份有限公司 | 系统升级方法、装置、电子设备及存储介质 |
| CN112817625B (zh) * | 2021-01-29 | 2024-03-08 | 青岛海信移动通信技术有限公司 | 系统升级方法、装置、电子设备及存储介质 |
| CN113110966A (zh) * | 2021-03-12 | 2021-07-13 | 广东纳睿雷达科技股份有限公司 | 系统升级监控管理方法、嵌入式系统和存储介质 |
| CN113297011A (zh) * | 2021-06-09 | 2021-08-24 | 北京经纬恒润科技股份有限公司 | 一种主从mcu升级失败的自恢复方法及系统 |
| CN113297011B (zh) * | 2021-06-09 | 2024-04-12 | 北京经纬恒润科技股份有限公司 | 一种主从mcu升级失败的自恢复方法及系统 |
| CN113296819B (zh) * | 2021-06-10 | 2023-12-08 | 南京创通微新通信有限公司 | 网桥设备集中管理升级系统及方法 |
| CN113296819A (zh) * | 2021-06-10 | 2021-08-24 | 南京创通微新通信有限公司 | 网桥设备集中管理升级系统及方法 |
| CN115729586B (zh) * | 2021-06-15 | 2023-10-20 | 荣耀终端有限公司 | 操作系统升级方法、设备、存储介质及计算机程序产品 |
| US12367027B2 (en) | 2021-06-15 | 2025-07-22 | Honor Device Co., Ltd. | Operating system upgrade method, device, storage medium, and computer program product |
| CN115729586A (zh) * | 2021-06-15 | 2023-03-03 | 荣耀终端有限公司 | 操作系统升级方法、设备、存储介质及计算机程序产品 |
| US12182582B2 (en) | 2021-06-15 | 2024-12-31 | Honor Device Co., Ltd. | Operating system upgrade method, device, storage medium, and computer program product |
| CN115480798A (zh) * | 2021-06-15 | 2022-12-16 | 荣耀终端有限公司 | 操作系统升级方法、设备、存储介质及计算机程序产品 |
| CN115480798B (zh) * | 2021-06-15 | 2023-06-16 | 荣耀终端有限公司 | 操作系统升级方法、设备、存储介质及计算机程序产品 |
| CN115202679A (zh) * | 2021-06-30 | 2022-10-18 | 惠州华阳通用电子有限公司 | 一种基于车载以太网的ecu升级方法及装置 |
| CN115857979A (zh) * | 2021-09-24 | 2023-03-28 | 上海擎感智能科技有限公司 | 系统升级方法、车载主机设备及存储介质 |
| CN113905039A (zh) * | 2021-09-30 | 2022-01-07 | 苏州挚途科技有限公司 | 系统升级文件传输方法、装置及系统 |
| CN113626059A (zh) * | 2021-10-13 | 2021-11-09 | 北京创米智汇物联科技有限公司 | 系统升级方法、摄像机及计算机可读存储介质 |
| CN113626059B (zh) * | 2021-10-13 | 2022-02-08 | 北京创米智汇物联科技有限公司 | 系统升级方法、摄像机及计算机可读存储介质 |
| CN116069369A (zh) * | 2021-10-29 | 2023-05-05 | 荣耀终端有限公司 | 控制升级温度的方法、设备、存储介质及计算机程序产品 |
| CN114895939A (zh) * | 2022-05-10 | 2022-08-12 | 瑞芯微电子股份有限公司 | 升级固件的方法、电子设备及计算机可读介质 |
| CN115903722A (zh) * | 2022-08-04 | 2023-04-04 | 重庆长安汽车股份有限公司 | 一种汽车自动驾驶控制器系统升级断电后的自恢复方法、系统、设备、介质 |
| CN115686567A (zh) * | 2022-10-27 | 2023-02-03 | 歌尔科技有限公司 | 安卓系统中ota升级方法、装置、可穿戴设备及介质 |
| CN115543393A (zh) * | 2022-12-01 | 2022-12-30 | 摩尔线程智能科技(北京)有限责任公司 | 升级方法、电子设备及存储介质 |
| CN115543393B (zh) * | 2022-12-01 | 2023-08-22 | 摩尔线程智能科技(北京)有限责任公司 | 升级方法、电子设备及存储介质 |
| CN116149706A (zh) * | 2023-02-20 | 2023-05-23 | 北斗星通智联科技有限责任公司 | 一种车辆设备升级方法、装置、车辆和可读存储介质 |
| CN116069377A (zh) * | 2023-02-24 | 2023-05-05 | 武汉天喻信息产业股份有限公司 | 一种差分升级方法、装置、设备及可读存储介质 |
| CN116185461A (zh) * | 2023-04-28 | 2023-05-30 | 广东华芯微特集成电路有限公司 | 固件升级方法及架构 |
| CN116501340A (zh) * | 2023-06-30 | 2023-07-28 | 江苏博云科技股份有限公司 | 嵌入式系统的发布系统的构建方法和构建系统 |
| CN116932010B (zh) * | 2023-09-14 | 2024-01-19 | 首都信息科技发展有限公司 | 系统固件升级方法、装置及服务器 |
| CN116932010A (zh) * | 2023-09-14 | 2023-10-24 | 首都信息科技发展有限公司 | 系统固件升级方法、装置及服务器 |
| CN117539518A (zh) * | 2024-01-02 | 2024-02-09 | 江苏天华汽车电子科技有限公司 | 应用程序升级方法和电子设备 |
| CN117539518B (zh) * | 2024-01-02 | 2024-06-07 | 江苏天华汽车电子科技有限公司 | 应用程序升级方法和电子设备 |
| CN118227383A (zh) * | 2024-05-22 | 2024-06-21 | 湖北芯擎科技有限公司 | 槽位一致性控制方法、装置、设备及可读存储介质 |
| CN118567692A (zh) * | 2024-07-31 | 2024-08-30 | 苏州元脑智能科技有限公司 | 一种基本输入输出系统固件升级方法、产品、设备及介质 |
| WO2026066856A1 (zh) * | 2024-09-25 | 2026-04-02 | 东风汽车集团股份有限公司 | 油泵电机控制器备份方法、装置、设备及存储介质 |
| CN119557145A (zh) * | 2025-01-23 | 2025-03-04 | 北京国科天迅科技股份有限公司 | 固件程序的远程升级方法、装置和计算机设备 |
| CN120469712A (zh) * | 2025-07-11 | 2025-08-12 | 湖北芯擎科技有限公司 | 分区新增和分区映射烧录实现方法、装置、设备及介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106610840A (zh) | 2017-05-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2017067448A1 (zh) | 一种无线固件升级方法、系统及计算机存储介质 | |
| CN101931944B (zh) | 在线升级终端补丁的方法、装置与系统 | |
| WO2019062635A1 (zh) | 升级方法和装置 | |
| TWI533216B (zh) | 作業系統更新方法 | |
| CN102646043B (zh) | 移动终端软件升级方法、升级装置及移动终端 | |
| WO2011006378A1 (zh) | 无线数据卡的升级方法和系统 | |
| CN107783776B (zh) | 固件升级包的处理方法及装置、电子设备 | |
| CN105260209A (zh) | 一种程序热更新解决方法 | |
| CN110399153B (zh) | 系统升级方法、装置、终端及计算机可读存储介质 | |
| CN111309354A (zh) | 联网设备的ota升级方法及装置 | |
| CN106886436A (zh) | 一种Android系统升级的方法和装置 | |
| WO2016082450A1 (zh) | 一种用户终端的升级方法和用户终端 | |
| WO2018024198A1 (zh) | 机顶盒的应用程序升级方法、系统及机顶盒 | |
| CN105786636B (zh) | 一种系统修复方法及装置 | |
| CN115827046A (zh) | 实现spl分区ota升级的方法及装置、终端设备、芯片 | |
| CN118540220A (zh) | 物联网终端的远程升级方法及系统 | |
| WO2014134989A2 (zh) | 一种Android终端及其实现升级的方法 | |
| CN108322540A (zh) | 客制化数据导入方法、终端及计算机可读存储介质 | |
| CN106028142A (zh) | 一种播放设备的升级控制方法和装置 | |
| CN108874410B (zh) | 补丁管理方法及装置 | |
| CN104346239B (zh) | 嵌入式系统中应用程序的异常恢复方法和装置 | |
| CN106933604B (zh) | 一种系统升级方法及装置 | |
| CN100430894C (zh) | 具有断电保护的电视系统软件更新方法 | |
| CN114780122A (zh) | 嵌入式设备固件更新方法以及嵌入式设备 | |
| CN114625404A (zh) | 一种应用程序升级方法及装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16856879 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16856879 Country of ref document: EP Kind code of ref document: A1 |