CN113767365A - Communication module software upgrading method and system and communication module - Google Patents

Communication module software upgrading method and system and communication module Download PDF

Info

Publication number
CN113767365A
CN113767365A CN201980094458.9A CN201980094458A CN113767365A CN 113767365 A CN113767365 A CN 113767365A CN 201980094458 A CN201980094458 A CN 201980094458A CN 113767365 A CN113767365 A CN 113767365A
Authority
CN
China
Prior art keywords
firmware
file
target
source
communication module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980094458.9A
Other languages
Chinese (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.)
Shanghai Simcom Wireless Solutions Co Ltd
Original Assignee
Shanghai Simcom Wireless Solutions 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 Shanghai Simcom Wireless Solutions Co Ltd filed Critical Shanghai Simcom Wireless Solutions Co Ltd
Publication of CN113767365A publication Critical patent/CN113767365A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

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

Abstract

The application discloses a communication module software upgrading method, a system and a communication module, wherein a differential packet of the whole firmware is generated according to a source firmware before upgrading and a target firmware after upgrading, namely the differential packet is generated aiming at a bottom layer code of the whole firmware instead of generating the differential packet for each file in a file system; when the module is upgraded, generating complete target firmware according to the differential packet and the firmware of the current file system of the module, and programming the target firmware into the partition where the firmware of the current file system of the module is located to realize the overall upgrade of the whole file system. Because the firmware of the whole file system is rewritten, rather than updating each file in the file system one by one, even if the power failure occurs in the process of rewriting, the system cannot be restarted, only the target firmware needs to be rewritten to the partition where the firmware of the current file system is located, and the file system does not need to be mount, so that the phenomenon of module system crash does not occur.

Description

Communication module software upgrading method and system and communication module
Cross-referencing
Chinese patent application No. 2019102071451 entitled "communications module software upgrade method, system and communications module", filed on 3/19/2019, which is incorporated by reference in its entirety.
Technical Field
The present application relates to the field of software upgrading technologies, and in particular, to a method and a system for upgrading communication module software, and a communication module.
Background
An Unordered Block Image File System (UBIFS) File System, referred to as a UBI File System for short, is adopted in an existing communication module File System. The differential upgrading scheme of the UBI file system is that differential packets are generated for the differences of each file in the file system, and the differential packets of each file are integrally packaged to form a total differential packet. And after downloading the total differential packet to the local, the communication module generates differential packets of all files in the file system, and realizes upgrading by updating each file in the file system.
The applicant of The present application finds that a power failure and easy running (crash) condition exists in an Over-The-Air (FOTA) upgrading mode of an existing communication module. In the process of upgrading the file systems one by one, if an abnormal power failure occurs, the system needs to be restarted, because when part of files in the front file system are changed due to upgrading, the situation that the file system cannot be associated (mount) with a corresponding partition is easy to occur when the system is restarted, namely the file system is invisible, the situation of system crash is caused, and the system cannot be recovered and started normally. A large amount of work is added that requires maintenance personnel to go to the site for support.
Content of application
An object of some embodiments of the present application is to provide a method, a system, and a communication module for upgrading communication module software, so that a communication module does not fail even if power failure occurs during an upgrading process, and stability of upgrading module software is improved.
In order to solve the above technical problem, an embodiment of the present application provides a method for upgrading communication module software, including: the service side generates a source firmware from the file of the source file system, generates a target firmware from the file of the target file system, and generates a firmware file differential packet according to the source firmware and the target firmware; and after receiving the firmware file differential packet, the communication module generates the target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet, stores the generated target firmware to an appointed partition, and burns the target firmware of the appointed partition into the partition where the firmware of the current file system is located to complete upgrading.
An embodiment of the present application further provides a system for upgrading communication module software, including: the system is used for generating a source firmware from a file of a source file system, generating a target firmware from a file of a target file system, and generating a firmware file differential packet according to the source firmware and the target firmware.
An embodiment of the present application further provides a communication module, including: the receiving module is used for receiving the firmware file differential packet from the service side; the new firmware generation module is used for generating target firmware according to the difference packet of the firmware of the current file system of the communication module and the firmware file and storing the generated target firmware to a specified partition; and the upgrading module is used for burning the target firmware of the specified partition into the partition where the firmware of the current file system is located to finish upgrading.
For the prior art, the embodiment of the application generates a source firmware from a file of a source file system of a version before upgrading, generates a target firmware from a file of a target file system of a version after upgrading, and generates a differential packet of the whole firmware according to the source firmware before upgrading and the target firmware after upgrading, that is, a differential packet is generated for a bottom layer code (binary code) of the whole firmware, rather than generating a differential packet for each file in the file system; when the module needs to be upgraded, generating complete target firmware, namely the firmware of the whole upgraded version file system, according to the firmware file differential packet and the firmware of the current file system of the module, and storing the firmware into the specified partition, and when the module needs to be upgraded, programming the target firmware in the specified partition into the partition where the firmware of the current file system of the module is located, so as to realize the whole upgrade of the whole file system. Because the firmware of the whole file system is rewritten, rather than updating each file in the file system one by one, even if the power failure occurs in the process of programming (upgrading), the system cannot be restarted, only the target firmware in the specified partition needs to be rewritten to the partition where the firmware of the current file system is located, the whole file system does not need to be started, the situation that the file system cannot be mounted cannot occur, and further the phenomenon of cocking of the module system cannot occur.
For example, before the step of burning the target firmware of the specified partition into the partition where the firmware of the current file system is located to complete the upgrade, the method further includes: marking an upgrade mark; after the step of burning the target firmware of the specified partition into the partition where the firmware of the current file system is located to complete the upgrade, the method further comprises the following steps: erasing the upgrade flag; when the communication module is started, if the upgrading mark is found, the step of burning the target firmware of the appointed partition into the partition where the firmware of the current file system is located to finish upgrading is executed. Therefore, in the module upgrading process, even if abnormity occurs and the system is restarted, upgrading can be continued, and the module file system can be ensured to be normally started.
For example, in the step of generating the firmware file differential package according to the source firmware and the target firmware, the generated firmware file differential package at least includes: source firmware version information and target firmware version information; the source firmware version information includes at least: the method comprises the steps of obtaining a source firmware file size, a source firmware file version number and a source firmware file check value; the target firmware version information at least includes: the target firmware file size, the target firmware file version number and the target firmware file check value.
For example, before generating the target firmware according to the firmware of the current file system of the communication module and the firmware file differential package, the method further includes: and checking whether the version information of the firmware of the current file system is consistent with the source firmware version information stored in the firmware file differential packet, and if so, executing the step of generating the target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet.
For example, before saving the generated target firmware to the designated partition, the method further includes: and checking whether the generated check value of the target firmware is consistent with the check value of the target firmware file in the firmware file differential packet, and if so, executing the step of saving the generated target firmware to the specified partition. And the accuracy of software upgrading is ensured through double verification.
For example, the generating a firmware file differential packet according to the source firmware and the target firmware includes:
generating a first mirror image file of the source firmware by the source firmware;
generating a second image file of the source firmware from the first image file of the source firmware and the version information of the source firmware;
generating a first mirror image file of the target firmware for the target firmware;
generating a second image file of the target firmware from the first image file of the target firmware and the version information of the target firmware;
and generating the firmware file differential packet according to the source firmware second image file and the target firmware second image file.
Therefore, the size of the source firmware file, the version number of the source firmware file, the size of the target firmware file and the version number of the target firmware file can be respectively contained in the source firmware image file and the target firmware image file, so that when a firmware file differential packet is generated, the source firmware version information and the target firmware version information can be contained.
Drawings
One or more embodiments are illustrated by the corresponding figures in the drawings, which are not meant to be limiting.
FIG. 1 is a flow chart of a communication module software upgrade method according to a first embodiment of the present application;
FIG. 2 is a schematic diagram of a UBI file system structure in a first embodiment of the present application;
FIG. 3 is a diagram illustrating a differential packet file structure according to a first embodiment of the present application;
fig. 4 is a block diagram of a communication module software upgrade system according to a second embodiment of the present application.
DETAILED DESCRIPTION OF EMBODIMENT (S) OF INVENTION
In order to make the objects, technical solutions and advantages of the present application more apparent, embodiments of the present application will be described in detail below with reference to the accompanying drawings. However, it will be appreciated by those of ordinary skill in the art that in the examples of the present application, numerous technical details are set forth in order to provide a better understanding of the present application. However, the technical solutions claimed in the claims of the present application can be implemented without these technical details and with various changes and modifications based on the following embodiments.
In this embodiment, a service side generates a source firmware from a file of a source file system, generates a target firmware from a file of a target file system, and generates a firmware file differential packet according to the source firmware and the target firmware; and after receiving the firmware file differential packet, the communication module generates target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet, stores the generated target firmware to an appointed partition, and burns the target firmware of the appointed partition into the partition where the firmware of the current file system is located to complete upgrading.
Generating source firmware from files of a source file system of a version before upgrading, generating target firmware from files of a target file system of a version after upgrading, and generating a differential packet of the whole firmware according to the source firmware before upgrading and the target firmware after upgrading, namely generating the differential packet aiming at bottom layer codes (binary codes) of the whole firmware instead of generating the differential packet for each file in the file system; when the module needs to be upgraded, generating complete target firmware, namely the firmware of the whole upgraded version file system, according to the firmware file differential packet and the firmware of the current file system of the module, and storing the firmware into the specified partition, and when the module needs to be upgraded, programming the target firmware in the specified partition into the partition where the firmware of the current file system of the module is located, so as to realize the whole upgrade of the whole file system. Because the firmware of the whole file system is rewritten, rather than updating each file in the file system one by one, even if the power failure occurs in the process of programming (upgrading), the system cannot be restarted, only the target firmware in the specified partition needs to be rewritten to the partition where the firmware of the current file system is located, the whole file system does not need to be started, the situation that the file system cannot be mounted cannot occur, and further the phenomenon of cocking of the module system cannot occur.
The specific communication module software upgrading process is shown in fig. 1.
In step 101, the service side puts various source files of the file system of the version before upgrading into the same partition (partition a) and generates source firmware, and puts various target files of the file system of the version after upgrading into the same partition (partition B) and generates target firmware.
In this embodiment, the source firmware may specifically include a kernel image file, a linux application file, a modem (modem) file, and the like, and the target firmware also includes a kernel image file, a linux application file, a modem file, and the like.
In step 102, image files are generated for the source firmware (binary file) and the target firmware (binary file), respectively.
Specifically, in step 102-1, a source firmware first image file is generated for the source firmware. The first image file may be a Root file system (Root file system) image file generated by a squarhfs file system. Specifically, a read-only squashfs file system can be adopted, a mksquashfs command is used for generating a rootfs image file, and an LZO (Lempel-Ziv-Oberhumer) compression algorithm is adopted during packaging. After the first image file of the source firmware is generated, the size of the source firmware file can be obtained.
In step 102-2, generating a second image file of the source firmware from the first image file of the source firmware, the version number of the file of the source firmware and the size information of the file of the source firmware; the second image file may be a UBI (unopposed Block Images) image file. The generated UBI image file includes two volumes (volume 1 and volume 2), as shown in fig. 2. The volume 1 comprises a first image file of the source firmware and a version number of the file of the source firmware; the version number of the source firmware file may be added at the end of the source firmware first image file (rootfs image file) to form volume 1 (volume 1). volume 2 (volume 2) has size information of the first image file of the source firmware placed therein.
In step 102-3, generating a first image file of the target firmware for the target firmware file; the method is the same as step 102-1. After the first image file of the target firmware is generated, the size of the target firmware file can be obtained.
In step 102-4, generating a second image file of the target firmware by using the first image file of the target firmware, the version number of the target firmware file and the size information of the target firmware file; in the same manner as step 102-2.
By generating the image files twice, the size of the source firmware file, the version number of the source firmware file, the size of the target firmware file and the version number of the target firmware file can be respectively contained in the source firmware image file and the target firmware image file, so that when the firmware file differential packet is generated, the source firmware version information and the target firmware version information can be contained for the communication module to check.
In step 103, a whole firmware file differential packet is generated according to the source firmware second image file and the target firmware second image file. The generated firmware file differential packet at least comprises: source firmware version information and target firmware version information; the source firmware version information includes at least: a source firmware file size, a source firmware file version number, a source firmware file check value, such as an MD5(Message-Digest Algorithm) value; the target firmware version information includes at least: the file size of the target firmware file, the version number of the target firmware file and the check value of the target firmware file.
Specifically, a difference file may be obtained by using an HdiffPatch difference algorithm, where a source file for creating the difference file is a volume 1 (volume 1) portion in the second image file of the source firmware, and a destination file is a volume 1 portion in the second image file of the destination firmware. The following information is attached to the head of the generated differential packet file: the magic number, the source firmware version information, the target firmware version information, and the differential packet file structure are shown in fig. 3.
In step 104, the wireless communication module downloads the firmware file differential package. The downloading method may include:
(1) the downloading via the network is mainly https and OTA (Over-the-Air Technology).
(2) Locally via USB to the communication module.
In step 105, checking whether the version information of the firmware of the current file system is consistent with the source firmware version information stored in the firmware file differential packet, if so, entering step 106, and if not, failing to generate new firmware and returning error information.
Specifically, in step 105-1, the source firmware version information (source firmware file size, source firmware file version number, source firmware file verification value) and the target firmware version information (target firmware file size, target firmware file version number, target firmware file verification value) in the firmware file differential packet are read; in step 105-2, acquiring version information (firmware file size, firmware file version number) of the firmware of the current file system of the communication module and an MD5 value (firmware file check value) of the firmware volume 0 (volume 0) image; in step 105-3, compare whether the source firmware version information (source firmware file size, source firmware file version number, source firmware file verification value) in the firmware file differential packet is consistent with the firmware file size, firmware file version number, and firmware file verification value of the current file system of the communication module? If so, step 106 is entered, and if not, the generation of the new firmware file fails.
In step 106, the target firmware is generated according to the firmware of the current file system of the communication module and the firmware file differential packet. Specifically, the target firmware image file may be generated using the HdiffPatch algorithm. The algorithm and the method for generating the firmware image file are the prior art and are not described in detail.
In step 107, it is checked whether the generated verification value of the target firmware is consistent with the verification value of the target firmware file in the firmware file differential packet. Specifically, it may be checked whether the MD5 value of the target image is consistent with the MD5 value information of the target version in the differential packet. Meanwhile, whether the size of the firmware file of the generated target firmware, the version number of the firmware file and the size of the target firmware file in the firmware file differential packet and the version number of the target firmware file are consistent or not can be verified, and if so, the step 108 is executed; if any one of the disagreements exists, the generation of the target firmware fails, and error information is returned.
In step 108, the generated target firmware is programmed into the module-specific partition. The designated partition is pre-designated and is fixedly used for storing the upgraded target firmware file. Through the double check of the step 105 and the step 107, the accuracy of the software upgrade can be effectively ensured.
In step 109, the current firmware file is upgraded as a whole according to the firmware file (target firmware) of the designated partition. Namely, the target firmware file in the designated partition is programmed into the partition where the firmware of the current file system is located, the current firmware is replaced, and the upgrading is completed.
Specifically, before burning the target firmware of the specified partition into the partition where the firmware of the current file system is located, an upgrade flag is marked, that is, the upgrade flag is written into a certain preset partition (partition X) of the communication module. And then, programming the target firmware file in the specified partition (partition A) to the partition where the firmware of the current file system is located, and clearing the upgrade mark from the preset partition (partition X) after the programming is finished (namely, the upgrade is finished).
In the upgrading process, if power failure occurs, the communication module is restarted, the preset partition (partition X) is read firstly during starting, and if the upgrading mark exists in the preset partition (partition X), the target firmware file in the appointed partition (partition A) is rewritten to the partition where the firmware of the current file system is located, so that the whole upgrading is completed. The complex file system does not need to be read, identified and rewritten, the situation that the file system cannot be identified after power failure does not occur, and then the phenomenon of crash of the module system does not occur.
Or, in this embodiment, the system may be triggered to re-designate the target firmware file in the partition to burn to the partition where the firmware of the current file system is located by setting other conditions without setting the upgrade flag.
The second embodiment of the present application relates to a communication module software upgrading system, as shown in fig. 4, including a service-side software upgrading system 401 and a communication module-side upgrading system 402.
The software upgrading system 401 at the service side includes:
the device comprises a difference packet generation module and a difference packet generation module, wherein the difference packet generation module is used for generating a firmware file difference packet according to source firmware and target firmware, the source firmware is generated by a file of a source file system, and the target firmware is generated by a file of a target file system. The generation of the source firmware and the target firmware can be completed by the service side or a superior provider of the service side.
The firmware file differential packet generated by the differential packet generating module at least comprises: source firmware version information and target firmware version information; the source firmware version information includes at least: the method comprises the steps of obtaining a source firmware file size, a source firmware file version number and a source firmware file check value; the target firmware version information includes at least: the file size of the target firmware file, the version number of the target firmware file and the check value of the target firmware file. So that the communication module side can check according to the source firmware version information and the target firmware version information.
The differential packet generation module further includes: the first image file generation submodule is used for generating the source firmware into a first image file of the source firmware; and generating a first image file of the target firmware by the target firmware. The second image file generation submodule is used for generating a second image file of the source firmware from the first image file of the source firmware, the size of the source firmware file and the version number of the source firmware file; and generating a second image file of the target firmware by using the first image file of the target firmware, the size of the target firmware file and the version number of the target firmware file. And the differential packet generation sub-module is used for generating the firmware file differential packet according to the source firmware second image file and the target firmware second image file.
The communication module-side upgrade system 402 includes:
the receiving module is used for receiving the firmware file differential packet from the service side; the firmware file differential packet received by the receiving module comprises: source firmware version information and target firmware version information; the source firmware version information includes at least: the method comprises the steps of obtaining a source firmware file size, a source firmware file version number and a source firmware file check value; the target firmware version information at least includes: the target firmware file size, the target firmware file version number and the target firmware file check value.
The new firmware generation module is used for generating target firmware according to the difference packet of the firmware of the current file system of the communication module and the firmware file and storing the generated target firmware to a specified partition;
and the upgrading module is used for burning the target firmware of the specified partition into the partition where the firmware of the current file system is located to finish upgrading.
And the first checking module is used for checking whether the version information of the firmware of the current file system is consistent with the version information of the source firmware stored in the firmware file differential packet, and if so, indicating the new firmware generation module to generate target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet.
And the second check module is used for checking whether the check value of the target firmware generated by the new firmware generation module is consistent with the check value of the target firmware file in the firmware file differential packet or not, and if so, indicating the new firmware generation module to store the generated target firmware to the specified partition.
And the marking module is used for marking an upgrading mark before the upgrading module burns the target firmware of the specified partition into the partition where the firmware of the current file system is located, and erasing the upgrading mark after the upgrading module burns the target firmware of the specified partition into the partition where the firmware of the current file system is located and finishes upgrading.
And the starting module is used for indicating the upgrading module to burn the target firmware of the specified partition into the partition where the firmware of the current file system is located when the upgrading mark is found when the communication module is started.
Generating source firmware from files of a source file system of a version before upgrading, generating target firmware from files of a target file system of a version after upgrading, and generating a differential packet of the whole firmware according to the source firmware before upgrading and the target firmware after upgrading, namely generating the differential packet aiming at bottom layer codes (binary codes) of the whole firmware instead of generating the differential packet for each file in the file system; when the module needs to be upgraded, generating complete target firmware, namely the firmware of the whole upgraded version file system, according to the firmware file differential packet and the firmware of the current file system of the module, and storing the firmware into the specified partition, and when the module needs to be upgraded, programming the target firmware in the specified partition into the partition where the firmware of the current file system of the module is located, so as to realize the whole upgrade of the whole file system. Because the firmware of the whole file system is rewritten, rather than updating each file in the file system one by one, even if the power failure occurs in the process of programming (upgrading), the system cannot be restarted, only the target firmware in the specified partition needs to be rewritten to the partition where the firmware of the current file system is located, the whole file system does not need to be started, the situation that the file system cannot be mounted cannot occur, and further the phenomenon of cocking of the module system cannot occur.
In a specific implementation, the software upgrading system on the service side of the embodiment includes at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the software upgrade method as set forth in the first embodiment.
The communication module side comprises at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the software upgrade method as set forth in the first embodiment.
A third embodiment of the present application relates to a computer-readable storage medium storing a computer program. The computer program realizes the above-described method embodiments when executed by a processor.
That is, as can be understood by those skilled in the art, all or part of the steps in the method according to the above embodiments may be implemented by a program instructing related hardware, where the program is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps in the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
It will be understood by those of ordinary skill in the art that the foregoing embodiments are specific examples for carrying out the present application, and that various changes in form and details may be made therein without departing from the spirit and scope of the present application in practice.

Claims (14)

  1. A communication module software upgrading method comprises the following steps:
    the service side generates a source firmware from the file of the source file system, generates a target firmware from the file of the target file system, and generates a firmware file differential packet according to the source firmware and the target firmware;
    and after receiving the firmware file differential packet, the communication module generates the target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet, stores the generated target firmware to an appointed partition, and burns the target firmware of the appointed partition into the partition where the firmware of the current file system is located to complete upgrading.
  2. The method for upgrading communication module software according to claim 1, wherein before the step of burning the target firmware of the designated partition into the partition where the firmware of the current file system is located to complete upgrading, the method further comprises: marking an upgrade mark;
    after the step of burning the target firmware of the specified partition into the partition where the firmware of the current file system is located to complete the upgrade, the method further comprises the following steps: erasing the upgrade flag;
    when the communication module is started, if the upgrading mark is found, the step of burning the target firmware of the appointed partition into the partition where the firmware of the current file system is located to finish upgrading is executed.
  3. The method for upgrading communication module software according to claim 1, wherein in the step of generating the firmware file differential package according to the source firmware and the target firmware, the generated firmware file differential package at least comprises: source firmware version information and target firmware version information;
    the source firmware version information includes at least: the method comprises the steps of obtaining a source firmware file size, a source firmware file version number and a source firmware file check value;
    the target firmware version information at least includes: the target firmware file size, the target firmware file version number and the target firmware file check value.
  4. The communication module software upgrading method according to claim 3, wherein before generating the target firmware according to the firmware of the communication module current file system and the firmware file differential package, the method further comprises: and checking whether the version information of the firmware of the current file system is consistent with the source firmware version information stored in the firmware file differential packet, and if so, executing the step of generating the target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet.
  5. The communication module software upgrade method according to claim 3, wherein prior to saving the generated target firmware to a designated partition, further comprising: and checking whether the generated check value of the target firmware is consistent with the check value of the target firmware file in the firmware file differential packet, and if so, executing the step of saving the generated target firmware to the specified partition.
  6. The communication module software upgrade method according to claim 3, wherein said generating a firmware file differential package from source firmware and target firmware comprises:
    generating a first mirror image file of the source firmware by the source firmware;
    generating a second image file of the source firmware by using the first image file of the source firmware, the size of the file of the source firmware and the version number of the file of the source firmware;
    generating a first mirror image file of the target firmware for the target firmware;
    generating a second image file of the target firmware by using the first image file of the target firmware, the size of the target firmware file and the version number of the target firmware file;
    and generating the firmware file differential packet according to the source firmware second image file and the target firmware second image file.
  7. A communication module software upgrade system, comprising:
    and the differential packet generation module is used for generating a firmware file differential packet according to source firmware and target firmware, wherein the source firmware is generated by a file of a source file system, and the target firmware is generated by a file of a target file system.
  8. The communication module software upgrade system according to claim 7, wherein the differential package of firmware files generated by the differential package generation module includes at least: source firmware version information and target firmware version information;
    the source firmware version information includes at least: the method comprises the steps of obtaining a source firmware file size, a source firmware file version number and a source firmware file check value;
    the target firmware version information includes at least: the target firmware file size, the target firmware file version number and the target firmware file check value.
  9. The communication module software upgrade system according to claim 8, wherein the differential packet generation module comprises:
    the first image file generation submodule is used for generating the source firmware into a first image file of the source firmware; generating a first mirror image file of the target firmware from the target firmware;
    the second image file generation submodule is used for generating a second image file of the source firmware from the first image file of the source firmware, the size of the source firmware file and the version number of the source firmware file; generating a second image file of the target firmware by using the first image file of the target firmware, the size of the target firmware file and the version number of the target firmware file;
    and the differential packet generation sub-module is used for generating the firmware file differential packet according to the source firmware second image file and the target firmware second image file.
  10. A communication module, comprising:
    the receiving module is used for receiving the firmware file differential packet from the service side;
    the new firmware generation module is used for generating target firmware according to the difference packet of the firmware of the current file system of the communication module and the firmware file and storing the generated target firmware to a specified partition;
    and the upgrading module is used for burning the target firmware of the specified partition into the partition where the firmware of the current file system is located to finish upgrading.
  11. The communication module of claim 10, wherein the receiving module receives the firmware file differential packet comprising:
    source firmware version information and target firmware version information;
    the source firmware version information includes at least: the method comprises the steps of obtaining a source firmware file size, a source firmware file version number and a source firmware file check value;
    the target firmware version information at least includes: the target firmware file size, the target firmware file version number and the target firmware file check value.
  12. The communication module of claim 11, further comprising:
    and the first checking module is used for checking whether the version information of the firmware of the current file system is consistent with the version information of the source firmware stored in the firmware file differential packet, and if so, indicating the new firmware generation module to generate target firmware according to the firmware of the current file system of the communication module and the firmware file differential packet.
  13. The communication module of claim 11, further comprising:
    and the second check module is used for checking whether the check value of the target firmware generated by the new firmware generation module is consistent with the check value of the target firmware file in the firmware file differential packet or not, and if so, indicating the new firmware generation module to store the generated target firmware to the specified partition.
  14. The communication module of claim 10, further comprising:
    the marking module is used for marking an upgrading mark before the upgrading module burns the target firmware of the specified partition into the partition where the firmware of the current file system is located, and erasing the upgrading mark after the upgrading module burns the target firmware of the specified partition into the partition where the firmware of the current file system is located and finishes upgrading;
    and the starting module is used for indicating the upgrading module to burn the target firmware of the specified partition into the partition where the firmware of the current file system is located when the upgrading mark is found when the communication module is started.
CN201980094458.9A 2019-03-19 2019-03-29 Communication module software upgrading method and system and communication module Pending CN113767365A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2019102071451 2019-03-19
CN201910207145.1A CN110032377B (en) 2019-03-19 2019-03-19 Communication module software upgrading method and system and communication module
PCT/CN2019/080526 WO2020186551A1 (en) 2019-03-19 2019-03-29 Communication module software upgrading method and system, and communication module

Publications (1)

Publication Number Publication Date
CN113767365A true CN113767365A (en) 2021-12-07

Family

ID=67236224

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910207145.1A Active CN110032377B (en) 2019-03-19 2019-03-19 Communication module software upgrading method and system and communication module
CN201980094458.9A Pending CN113767365A (en) 2019-03-19 2019-03-29 Communication module software upgrading method and system and communication module

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910207145.1A Active CN110032377B (en) 2019-03-19 2019-03-19 Communication module software upgrading method and system and communication module

Country Status (2)

Country Link
CN (2) CN110032377B (en)
WO (1) WO2020186551A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111638898A (en) * 2020-06-05 2020-09-08 泸州禾苗通信科技有限公司 Cloud verification method for absolute consistency of firmware version upgrading of FOTA
CN112181471A (en) * 2020-10-16 2021-01-05 北京紫光展锐通信技术有限公司 Differential upgrading method and device, storage medium and computer equipment
CN112328269B (en) * 2020-11-26 2024-03-15 广东小天才科技有限公司 Method for mounting ubifs mirror image software, intelligent device, electronic device and storage medium
CN112433750A (en) * 2020-12-17 2021-03-02 潍柴动力股份有限公司 Vehicle-mounted terminal application program upgrading method, device, equipment, medium and product
CN112631633A (en) * 2021-01-07 2021-04-09 南方电网数字电网研究院有限公司 Function module upgrading method and device based on double-core intelligent electric meter
CN115469910B (en) * 2022-11-15 2023-02-03 浙江日风电气股份有限公司 Photovoltaic inverter firmware updating method, device, system and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150268944A1 (en) * 2014-03-20 2015-09-24 Motorola Mobility Llc Methods and Devices for Wireless Device-To-Device Software Upgrades
CN105138347A (en) * 2015-07-17 2015-12-09 广东欧珀移动通信有限公司 Difference upgrade patch generating method, software upgrading method and corresponding apparatus
CN105373410A (en) * 2015-12-22 2016-03-02 京信通信技术(广州)有限公司 Differential upgrading method and device for base station software
CN105511911A (en) * 2015-11-27 2016-04-20 青岛海信移动通信技术股份有限公司 System firmware upgrade package generation method and device
CN107391145A (en) * 2017-07-27 2017-11-24 中兴通讯股份有限公司 AKU preparation method and device, the method and device of upgrade file
CN109240720A (en) * 2018-08-23 2019-01-18 福州瑞芯微电子股份有限公司 A kind of firmware upgrade method of Android system and a kind of storage equipment
CN109375939A (en) * 2018-12-17 2019-02-22 蜂巢(武汉)微系统技术有限公司 A kind of onboard system firmware on line upgrading method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2465193A (en) * 2008-11-10 2010-05-12 Symbian Software Ltd Detecting updated files in a firmware over the air update using CRC values
CN102724308A (en) * 2012-06-13 2012-10-10 腾讯科技(深圳)有限公司 Software update method and software update system
CN104184814A (en) * 2014-08-25 2014-12-03 中山市永衡日用制品有限公司 Method and system for generating and compounding embedded firmware differential upgrading file
CN104391728B (en) * 2014-12-12 2018-01-16 北京奇虎科技有限公司 Software upgrading difference packet acquisition methods and corresponding upgrade method and device
CN105487907A (en) * 2015-12-07 2016-04-13 青岛海信电器股份有限公司 Difference package manufacturing method and device
CN109002312A (en) * 2018-09-10 2018-12-14 京信通信系统(中国)有限公司 Method for upgrading software, device and upgrade server and equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150268944A1 (en) * 2014-03-20 2015-09-24 Motorola Mobility Llc Methods and Devices for Wireless Device-To-Device Software Upgrades
CN105138347A (en) * 2015-07-17 2015-12-09 广东欧珀移动通信有限公司 Difference upgrade patch generating method, software upgrading method and corresponding apparatus
CN105511911A (en) * 2015-11-27 2016-04-20 青岛海信移动通信技术股份有限公司 System firmware upgrade package generation method and device
CN105373410A (en) * 2015-12-22 2016-03-02 京信通信技术(广州)有限公司 Differential upgrading method and device for base station software
CN107391145A (en) * 2017-07-27 2017-11-24 中兴通讯股份有限公司 AKU preparation method and device, the method and device of upgrade file
CN109240720A (en) * 2018-08-23 2019-01-18 福州瑞芯微电子股份有限公司 A kind of firmware upgrade method of Android system and a kind of storage equipment
CN109375939A (en) * 2018-12-17 2019-02-22 蜂巢(武汉)微系统技术有限公司 A kind of onboard system firmware on line upgrading method

Also Published As

Publication number Publication date
CN110032377A (en) 2019-07-19
CN110032377B (en) 2024-06-07
WO2020186551A1 (en) 2020-09-24

Similar Documents

Publication Publication Date Title
CN113767365A (en) Communication module software upgrading method and system and communication module
CN110058873B (en) Application page updating method, device, equipment and storage medium
EP2966566B1 (en) Driver program loading method and embedded device
CN103455354B (en) Method and equipment for preventing hardware update from failing
KR102192880B1 (en) Method and device to prevent software repackaging
CN108027741A (en) Document handling method, device, terminal and storage medium based on patch upgrading
CN106020865A (en) System upgrading method and device
US9710340B2 (en) Replacement of a corrupt driver variable record
CN106648724B (en) Application program hot repair method and terminal
US20230229424A1 (en) Operating System Upgrade Method and Device, Storage Medium, and Computer Program Product
US20160170735A1 (en) Operating system updating method by using a checklist
CN110474977B (en) Firmware upgrading method and system for intelligent door lock and intelligent door lock
CN110535954B (en) Door lock firmware upgrading method, upgrading system, intelligent gateway and storage medium
CN105280240A (en) Nand Flash parameter reading method
CN107643898A (en) Terminal staging method and device
WO2019080840A1 (en) Method and device for repairing firmware
CN107566169A (en) A kind of firmware upgrade method and router based on openwrt
CN104427119A (en) Communication terminal and nonvolatile data processing method of communication terminal
WO2020107436A1 (en) Program upgrade method and embedded device
CN104133699A (en) Equipment system software updating method and equipment system software updating system
WO2022156512A1 (en) Method and apparatus for firmware upgrade, device, and storage medium
CN109375953B (en) Operating system starting method and device
AU2013380500B2 (en) Database device, program, and data processing method
US8838545B2 (en) Incremental and prioritized restoration of blocks
CN111142922A (en) Application program updating method and device, terminal and server

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