Embedded application software upgrading method and device based on ARM architecture

By using configuration files in mobile storage devices in embedded systems for identification and execution, the problem of low efficiency in the upgrade process of embedded system application software is solved, and a method of efficiently upgrading embedded system application software without the need for network or professional tools is realized.

CN119917141APending Publication Date: 2025-05-02QIAOHONG TECH (CHENGDU) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510048226.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-13
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

There are problems such as complex operation, long-term operation and difficulty in achieving without network connection or professional tools during the upgrade process of application software in embedded systems, resulting in low efficiency of upgrades.

Method used

An embedded application software upgrade method based on ARM architecture is provided. By obtaining a configuration file in a mobile storage device, the configuration file contains encrypted software upgrade files and step files, identifying and executing the corresponding software upgrade files to be upgraded to upgrade the application software to be upgraded.

Benefits of technology

No additional upgrade tools or network connections are required, and the application software in the embedded system is directly upgraded using mobile storage devices, improving the efficiency and convenience of upgrades.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119917141A_ABST
    Figure CN119917141A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses an embedded application software upgrading method and device based on an ARM framework, and belongs to the field of embedded technologies. Comprising the steps that a configuration file containing to-be-upgraded application software in the mobile storage device is obtained, the to-be-upgraded application software comprises application software in an embedded system based on the ARM architecture, and the configuration file comprises an encrypted software upgrading file and a step file for updating the to-be-upgraded application software; identifying a configuration file in the mobile storage device based on the software naming information of the to-be-upgraded application software and the file naming information of the configuration file in the mobile storage device; when the software naming information of the to-be-upgraded application software is consistent with the file naming information of the configuration file, the corresponding software upgrading file is executed according to the step file in the configuration file so as to upgrade the to-be-upgraded application software, and the application software upgrading efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of embedded technology, and in particular to an embedded application software upgrading method and device based on ARM architecture. Background Art

[0002] In the current embedded system field, the upgrade and update of application software is a frequent and critical process. The diversity of its update methods leads to operational complexity and efficiency inconsistency.

[0003] In the related art, the upgrade of embedded application software in an embedded system usually needs to be updated through a wired network connection or professional update tools, for example, a local upgrade method such as upgrading by using an upgrade tool, or a remote upgrade method such as upgrading the program through the network. These methods are often complicated to operate, time-consuming, and difficult to implement without a network connection or professional tools, resulting in low efficiency in application software upgrades. Summary of the invention

[0004] The purpose of the embodiments of the present application is to provide an embedded application software upgrade method and device based on the ARM architecture, so as to solve the problem of low efficiency of application software upgrade.

[0005] To solve the above technical problems, the embodiments of the present application are implemented as follows: In a first aspect, an embodiment of the present application provides an embedded application software upgrading method based on an ARM architecture, comprising: obtaining a configuration file in a mobile storage device that contains application software to be upgraded, the application software to be upgraded comprising: application software in an embedded system based on the ARM architecture, the configuration file comprising: an encrypted software upgrade file and a step file for updating the application software to be upgraded; based on software naming information of the application software to be upgraded and file naming information of the configuration file in the mobile storage device, identifying the configuration file in the mobile storage device; when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, executing the corresponding software upgrade file according to the step file in the configuration file to upgrade the application software to be upgraded.

[0006] In a second aspect, an embodiment of the present application provides an embedded application software upgrading device based on an ARM architecture, comprising: an acquisition module, used to acquire a configuration file in a mobile storage device containing application software to be upgraded, the application software to be upgraded comprising: application software in an embedded system based on the ARM architecture, the configuration file comprising: an encrypted software upgrade file and a step file for updating the application software to be upgraded; an identification module, used to identify the configuration file in the mobile storage device based on software naming information of the application software to be upgraded and file naming information of the configuration file in the mobile storage device; an upgrading module, used to execute the corresponding software upgrade file according to the step file in the configuration file to upgrade the application software to be upgraded when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file.

[0007] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory electrically connected to the processor, the memory storing a computer program, and the processor being used to call and execute the computer program from the memory to implement the above-mentioned embedded application software upgrade method based on the ARM architecture.

[0008] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium for storing a computer program, wherein the computer program can be executed by a processor to implement the above-mentioned embedded application software upgrade method based on the ARM architecture.

[0009] In a fifth aspect, an embodiment of the present application provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the above-mentioned embedded application software upgrade method based on the ARM architecture.

[0010] By adopting the technical solution of the embodiment of the present application, a configuration file containing the application software to be upgraded in a mobile storage device is obtained, the application software to be upgraded includes: the application software in the embedded system based on the ARM architecture, the configuration file includes: the encrypted software upgrade file and the step file for updating the application software to be upgraded; based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file in the mobile storage device is identified; when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded. It can be seen that in the process of upgrading the application software, the configuration file in the mobile storage device is obtained, and when it is identified that the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the software upgrade file is executed using the step file in the configuration file to upgrade the application software to be upgraded, without the need for additional upgrade tools or remote upgrade through the network, the application software in the embedded system can be directly upgraded using a portable and mobile mobile storage device, thereby improving the efficiency of application software upgrade. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] In order to more clearly illustrate one or more embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in one or more embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0012] Figure 1 It is a flowchart of an embedded application software upgrade method based on ARM architecture provided in an embodiment of the present application; Figure 2 It is a schematic diagram of a software upgrade process of an embedded application software upgrade method based on ARM architecture provided in an embodiment of the present application; Figure 3 This is a scenario flow diagram of an embedded application software upgrade method based on ARM architecture provided by another embodiment of the present application; Figure 4 It is a structural diagram of an embedded application software upgrading device based on ARM architecture provided in an embodiment of the present application; Figure 5 It is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0013] The embodiments of the present application provide an embedded application software upgrade method and device based on ARM architecture, so as to solve the problem of low efficiency of application software upgrade.

[0014] In order to enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of this application.

[0015] The embedded application software upgrade method based on ARM architecture provided in the embodiment of the present application can be executed by an electronic device, or by software installed in the electronic device. Specifically, the electronic device can be a terminal device or a server device. Among them, the terminal device can include a smart phone, a laptop computer, a smart wearable device, a vehicle terminal, etc., and the server device can include an independent physical server, a server cluster composed of multiple servers, or a cloud server capable of cloud computing.

[0016] In conjunction with the accompanying drawings, an embedded application software upgrade method based on ARM architecture provided by an embodiment of the present application is described in detail through specific embodiments and application scenarios.

[0017] Figure 1 A flow chart of an ARM architecture-based embedded application software upgrade method provided by an embodiment of the present invention is shown, and the method comprises the following steps: S102, obtaining a configuration file containing the application software to be upgraded from a mobile storage device.

[0018] The application software to be upgraded includes: application software in an embedded system based on the ARM architecture, and the configuration file includes: an encrypted software upgrade file and a step file for updating the application software to be upgraded.

[0019] A mobile storage device is a device that can read data without the assistance of other hardware or network after being inserted into an electronic device, such as a USB flash drive. The following description takes the mobile storage device as a USB flash drive as an example.

[0020] An embedded system is a system based on an Advanced RISC Machine (ARM) architecture processor, and the application software in the system has high security and flexibility, such as Linux embedded systems.

[0021] The configuration file is stored in a U disk, including an encrypted software upgrade file and a step file. Specifically, the software upgrade file is a compressed package used to upgrade the application software to be upgraded. By encrypting it, the security of upgrading the application software to be upgraded can be improved; the step file is used to update the application software to be upgraded, including executing the installation package of the program to update the application software to be upgraded.

[0022] It should be noted that a U disk may include one or more configuration files for upgrading corresponding multiple application software to be upgraded in the embedded system.

[0023] S104, identifying the configuration file in the mobile storage device based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device.

[0024] The software naming information includes the manually input application program information corresponding to the application software to be upgraded.

[0025] The file naming information includes the folder name of the configuration file, such as the manufacturer code, version number, and the date when the configuration file was last updated.

[0026] According to the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file corresponding to the application software to be upgraded in the mobile storage device is identified. Specifically, the consistency of the software naming information of the application software to be upgraded and the file naming information of the configuration file is determined.

[0027] S106, when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded.

[0028] When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, it means that the file content in the configuration file can be upgraded and updated for the application software to be upgraded. According to the step file included in the configuration file of the mobile storage device, the corresponding encrypted software upgrade file is executed according to the steps of updating the application software to be upgraded. After the corresponding software upgrade file is executed according to the steps in the step file, the application software to be upgraded can be replaced with the software upgrade file, that is, the application software to be upgraded is upgraded and updated according to the latest configuration in the software upgrade file.

[0029] By adopting the technical solution of the embodiment of the present application, a configuration file containing the application software to be upgraded in a mobile storage device is obtained, the application software to be upgraded includes: the application software in the embedded system based on the ARM architecture, the configuration file includes: the encrypted software upgrade file and the step file for updating the application software to be upgraded; based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file in the mobile storage device is identified; when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded. It can be seen that in the process of upgrading the application software, the configuration file in the mobile storage device is obtained, and when it is identified that the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the software upgrade file is executed using the step file in the configuration file to upgrade the application software to be upgraded, without the need for additional upgrade tools or remote upgrade through the network, the application software in the embedded system can be directly upgraded using a portable and mobile mobile storage device, thereby improving the efficiency of application software upgrade.

[0030] In one embodiment, based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file in the mobile storage device is identified (ie, S104), and the following steps A1-A3 may be performed: Step A1: When the configuration file contains an update flag, the mobile storage device is mounted to a designated directory.

[0031] The specified directory is used to temporarily store and display the file contents in the removable storage device in the embedded system.

[0032] After the electronic device is powered on by connecting to the power supply voltage, that is, after the system is powered on, before starting the application corresponding to the application software to be upgraded, a boot program is first started. The boot program is used to identify whether a USB flash drive is inserted into the electronic device. When the USB flash drive is inserted, the USB flash drive is read to see whether there is an update mark, wherein the update mark can be a file with an update mark, such as a file with an update mark included in the configuration file of the USB flash drive, or the update mark can be displayed in the file naming information of the configuration file. The update mark is used to prompt the user that there is a software upgrade file corresponding to the updated application software to be upgraded in the configuration file. If there is a file with an update mark in the configuration file, it means that there is a software upgrade file corresponding to the updated application software in the USB flash drive. According to the update mark, it can also be determined whether the content to be updated in the configuration file is manually updated or automatically updated.

[0033] When the configuration file contains an update flag, the boot program will execute the boot menu program for subsequent updates and upgrades of the application.

[0034] The U disk is rechecked through the startup menu program in the embedded system, including checking the name of the configuration file in the U disk, judging whether there is an update mark in the configuration file, and mounting the mobile storage device to the specified directory.

[0035] If the boot program does not recognize the U disk or there is no file corresponding to the update mark in the U disk, the update operation will not be performed, and the application corresponding to the original application software to be upgraded will continue to be executed.

[0036] Step A2: obtaining file naming information of the configuration file in the mobile storage device and corresponding software naming information of the application software to be upgraded.

[0037] The file naming information includes: one or more of the first manufacturer code, the first version number and the first date corresponding to the configuration file; the software naming information includes: one or more of the second manufacturer code, the second version number and the second date corresponding to the application software to be upgraded.

[0038] By starting the menu program in step A1, the file naming information of the configuration file in the mobile storage device is obtained, and the software naming information of the corresponding application software to be upgraded in the embedded system can be directly obtained.

[0039] Specifically, first, one or more of the first manufacturer code, the first version number and the first date in the file naming information of the configuration file is obtained; secondly, the software naming information of the corresponding application software to be upgraded in the embedded system can be directly obtained, and the user can also be reminded to enter one or more of the corresponding second manufacturer code, the second version number and the second date of the application software to be upgraded.

[0040] Step A3: identifying, according to the software naming information, a configuration file corresponding to the file naming information related to the software naming information in the mobile storage device.

[0041] Specifically, the software naming information of the application software to be upgraded in the embedded system is matched with the file naming information in the configuration file in the U disk, and the configuration file related to the software naming information can be identified, such as identifying that the file naming information of the configuration file is consistent with one or more of the software naming information. However, only when the matching of the three information in the naming information is passed, will the update thread be entered. The three matchings include: the first manufacturer code and the second manufacturer code, the first version number and the second version number, and the first date and the second date. Only the configuration file that is consistent with the three can be used to update the corresponding application software to be upgraded.

[0042] In this embodiment, by determining whether there is an update mark in the configuration file in the mobile storage device, the mobile storage device is mounted to a specified directory, and the file naming information of the configuration file and the software naming information of the application software to be upgraded in the system are obtained, and the configuration file in the mobile storage device is determined according to the software naming information. The system can automatically determine whether there is an update mark in the mobile storage device, and can identify the configuration file corresponding to the application software to be upgraded according to the obtained software naming information and file naming information.

[0043] In one embodiment, when the configuration file includes an update flag, before mounting the mobile storage device to the specified directory (ie, step A1), the following step B may be performed: Step B: determining whether the software upgrade file in the configuration file is updated according to the update flag; if the software upgrade file is updated, determining an update method for the configuration file, the update method including manual update or automatic update.

[0044] After the embedded system is started, the boot program reads whether there is a file corresponding to the update mark in the U disk. The file corresponding to the update mark can be a file with an update mark in the configuration file of the U disk. The update mark can include the text "updated" or a color mark, etc., which is not limited here.

[0045] According to the update flag, it is determined whether there is update content in the configuration file, and the update content includes: updates made by the software upgrade file, and may also include updates made by the step file, etc. If the software upgrade file has been updated, it can also be determined whether the update operation performed by the configuration file is based on manual update or automatic update, such as setting a manual update or automatic update identification option in the file corresponding to the update flag.

[0046] As an example, when the embedded system corresponding to the application software to be upgraded is used by developers to update and debug, the startup menu program in the system can automatically update the application software to be upgraded, without entering the software naming information, and automatically upgrade the application software to be upgraded according to the steps in the configuration file. If it is during the use of the product, it is more appropriate to use manual update, and different versions of configuration files in the U disk can be selected according to the software naming information of the application software to be upgraded, and the application software to be upgraded can be upgraded.

[0047] In this embodiment, an update flag is used to determine whether there is updated content in the U disk, and to determine the update method of the application in the updated embedded system. According to different judgment results, different processes for updating the application corresponding to the application software to be upgraded are automatically executed. There is no need to manually stop updating the application or start updating the application, which can save operating steps.

[0048] In one embodiment, when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file (ie, S106), and the following steps C1-C2 may also be executed: Step C1, perform consistency identification on the application software to be upgraded and the corresponding configuration file. When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, decrypt the encrypted software upgrade file corresponding to the application software to be upgraded in the configuration file according to the update thread in the step file in the configuration file to obtain the decrypted software upgrade file.

[0049] The decryption process includes: decrypting the software upgrade file according to the decryption password generated by the file naming information.

[0050] By performing consistency identification on the application software to be upgraded and the corresponding configuration file, when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, that is, the first manufacturer code and the second manufacturer code, the first version number and the second version number, and the first date and the second date are all consistent, the configuration file is used to update and upgrade the application software to be upgraded.

[0051] An update thread is the smallest unit that the operating system can schedule operations on. Each update thread can execute different update tasks in parallel.

[0052] Specifically, the startup menu program in the embedded system will identify the first line of the step file in the configuration file, and the first line instructs the embedded system to start the update operation and enter the update thread; after entering the update thread, the second line in the step file is identified, and the second line is used to check whether the version of the application corresponding to the software upgrade file in the configuration file is suitable for this system. If it is not suitable for this system, the update operation is terminated and an error prompt word is returned; if it is suitable for this embedded system, the third line in the step file is continued to be identified, and the second line is used to instruct to copy the software upgrade file in the configuration file to the embedded system. If an error occurs during the copying process, the update operation is terminated and an error prompt word is returned; if the copy is successful, the fourth line in the step file is continued to be identified, and the fourth line is used to instruct to decrypt the encrypted software upgrade file corresponding to the application software to be upgraded to obtain the decrypted software upgrade file. If the decryption fails, the update operation is terminated and an error prompt word is returned.

[0053] Among them, according to the file naming information, a decryption password is generated according to the encryption password generation rule to decrypt the software upgrade file.

[0054] Step C2, deleting the original program file in the embedded system, and moving the decrypted software upgrade file into the target program directory.

[0055] If the decryption is successful, the decrypted software upgrade file is obtained, and the fifth line in the step file is continued to be identified. The fifth line indicates to delete the original program file in the embedded system. The original program file is the program file related to the application software to be updated. If the deletion fails, the update operation is terminated and an error prompt word is returned; then the sixth line in the step file is identified. The sixth line is used to indicate that the decrypted software upgrade file is moved to the target program directory.

[0056] In this embodiment, when the application software to be upgraded is consistent with the corresponding configuration file, the corresponding update steps are executed in sequence according to the update thread included in the step file in the configuration file, and finally the encrypted software upgrade file is decrypted and the decrypted software upgrade file is moved into the target program directory. This can improve the speed of upgrading the application software, avoid the need for complex network configuration and physical connection, and make the application software upgrade process in the embedded system more efficient.

[0057] In one embodiment, after the decrypted software upgrade file is moved into the target program directory (i.e., step C2), the following steps D1-D2 may be performed: Step D1, decompressing the decrypted software upgrade file to obtain a decompressed software upgrade file.

[0058] According to step C1, the decrypted software upgrade file can be moved into the target program directory, and the seventh line in the step file is continuously identified. The seventh line is used to instruct to decompress the compressed package of the decrypted software upgrade file to obtain the decompressed software upgrade file.

[0059] Step D2, performing integrity check on the decompressed software upgrade file to obtain the software upgrade file after integrity check.

[0060] According to step D1, continue to identify the seventh line in the step file. The seventh line is also used to indicate that the decompressed software upgrade file will be subjected to integrity verification. The final result of the step file execution is to obtain the software upgrade file after the integrity verification, and the software upgrade file after the integrity verification in the target program directory can update the application software to be upgraded.

[0061] Integrity check specifically refers to the system's startup menu program performing a Message-Digest Algorithm 5 (md5) check on the decompressed software upgrade file. The md5 check can perform a hash operation on the data in the received decompressed software upgrade file to check the correctness of the corresponding data and ensure the integrity of the software upgrade file after the update process.

[0062] In this embodiment, by decompressing the decrypted software upgrade file and performing integrity verification on the decompressed software upgrade file, an integrity verification mechanism is provided to ensure that the software upgrade file obtained after the integrity verification does not have any missing content problem.

[0063] In one embodiment, the configuration file containing the application software to be upgraded in the mobile storage device is obtained (ie, S102), and the following step E may be performed: Step E: after starting the embedded system, obtaining data in the mobile storage device, the data including the configuration file of the application software to be upgraded.

[0064] Among them, the configuration file includes: the encrypted software upgrade file and step file corresponding to the application software to be upgraded; the software upgrade file includes: compressing the software upgrade file with a hash value table to obtain a compressed package, and determining the compressed package as the software upgrade file; the step file includes: a file of an update thread with virtual instructions.

[0065] After the embedded system is started, data in the mobile storage device can be obtained, and the data includes configuration files of the application software to be upgraded, and may also include data contained in other mobile storage devices.

[0066] Specifically, the configuration file in the mobile storage device includes a software upgrade file and a step file. The production process of the mobile storage device includes: first, placing the corresponding content of the completed application software to be updated in the folder of the software upgrade file to be performed, generating an MD5 hash value table for all files in the folder through the Md5sum command, and using the command: md5sdum*>md5sum.txt to pack and compress all files in the folder into a compressed package to generate a software upgrade file in the form of a compressed package. Among them, the Md5sum command is a command line interface shell command under Linux, which is used to calculate and verify the MD5 checksum.

[0067] Secondly, encrypt the software upgrade file. The encryption process includes: executing the script encrypt.sh, which uses the open source software library package openssl tool to encrypt the compressed package of the application, that is, the software upgrade file. The encryption process is as follows: the encryption command is: . / openssl des3-pbkdf2-iter 10000-salt-in $1-out $2-pass pass:$3, where: . / openssl: A command line tool for executing OpenSSL commands. des3: Used to specify the use of symmetric encryption algorithms (Triple DES, DESede) for encryption. -pbkdf2: Specifies the use of a pseudo-random function to derive the key using the PBKDF2 algorithm. -iter 10000: Specifies the number of iterations of the PBKDF2 algorithm, which is 10,000 here. -salt: Specifies the generation of a random salt value to increase the complexity of key derivation. -in $1: Specifies the input file, $1 is a variable, usually used in scripts, representing the first command line parameter. -out $2: Specifies the output file, $2 is a variable, representing the second command line parameter. -pass pass:$3: Specifies the password, $3 is a variable, representing the third command line parameter. Pass: The prefix indicates that the password follows.

[0068] The parameters passed in are: $1, the file name of the application compression package; $2, the file naming information of the encrypted configuration file; $3, the encryption password.

[0069] Then, add a step file for performing the update operation to the U disk data. The startup menu program in the system reads the content of the step file and performs the update operation according to the steps in the step file to update the application software to be upgraded in the embedded system. Each line in the step file is a step. For example, the step file consists of the command prompt cmd, the first parameter or the first replacement parameter value arg1, the second parameter or the second replacement parameter value arg2, etc., separated by space characters, for example: [BEG] [BEG]MMIType [UPF] Update.f MMIPath [DEC]update.f updatefile[DEL] MMI [TXF]Updatefile MMIPath .

[0070] The commands in [] are virtual commands, which are all three capital letters. The startup menu program in the embedded system recognizes these virtual commands and converts them into actual execution commands to process files and update and upgrade applications.

[0071] The description of each virtual command is as follows: [BEG] is the start command, and the first line of the update step file is this command. is the end command, and the last line of the update step file is this command, which is also the sign of the end of the update step. [UPF] is the copy command, and this virtual command will be replaced by the "cp-f" command, which is used to copy the contents of the USB flash drive to the system. [DEC] is the decryption command, and this virtual command will be replaced by the "shdecrypt.sh" command, which is used to decrypt the encrypted application file, i.e., the software upgrade file. [DEL] is the delete command, and this virtual command will be replaced by the "rm -rf" command, which is used to delete the corresponding file content. [TXF] is the decompression command, and this virtual command will be replaced by the "tar -zxf" command, which is used to decompress the application file to the specified directory.

[0072] There are other virtual commands, such as [EXE] for executing Linux instructions, [RUN] for executing scripts, [UKN] for upgrading the kernel, and [URF] for upgrading the root file system rootfs.

[0073] Finally, put the encrypted software upgrade file and step file in the configuration file, name the configuration file according to the preset format, and the preset format of the configuration file folder name can be the manufacturer code [Vendor]_version number [Version]_update date [Date]_update flag update, and the three names in [] are used as flags for the startup menu program to determine whether the application matches. Finally, copy the configuration file to the U disk, and add the file with the update flag to the U disk, and the steps of making the U disk are completed.

[0074] In this embodiment, by compressing the software upgrade file in the mobile storage device and encrypting the compressed software upgrade file using the openssl tool, an encrypted software upgrade file is obtained, so that the password of the encrypted software upgrade file will not be displayed in the USB flash drive. Since each version is different, the encryption password for each update is also different, which can ensure the security of the updated configuration file.

[0075] In one embodiment, after executing the corresponding software upgrade file (ie, S106) according to the step file in the configuration file, the following steps F1-F2 may be executed: Step F1, displaying the update progress of the application software to be upgraded in the startup menu of the embedded system, and when the update is successful, displaying a prompt word indicating the success of the update in the startup menu.

[0076] Specifically, when executing each step corresponding to the above step file, the startup menu program corresponding to the startup menu of the embedded system will print the corresponding prompt words of the update progress. For example, after the update is successful, the startup menu of the embedded system will prompt a prompt word such as "Update successful, please unplug the USB flash drive and restart the system". When the USB flash drive is removed and the entire system is restarted, the application software to be upgraded is upgraded.

[0077] Step F2: When the update fails, a progress prompt indicating the update failure is displayed in the startup menu.

[0078] When the update fails, as an example, if the update thread of the step file in the configuration file fails, the corresponding return value will be returned, and the embedded system will print the corresponding error content according to the return value, including: incorrect update folder, too old version to update, external storage device not ready, insufficient disk space, decompression error, decryption error, version error, update file does not match the system, and more than ten other progress prompts for update failure.

[0079] In this embodiment, the errors and progress of the application software to be upgraded are displayed through the startup menu page of the embedded system, so that the user can always understand the progress of the application software upgrade and can also adjust the problem easily.

[0080] In one embodiment, Figure 2The figure shows a schematic diagram of the software upgrade process of an embedded application software upgrade method based on the ARM architecture provided in an embodiment of the present application. Make a U disk for upgrading the application software to be upgraded, insert the U disk into an electronic device, start the embedded system in the electronic device, first execute the boot boot program boot1st, determine whether the U disk has a file with an update mark, if there is no update mark, start the original application software, if there is an update mark, execute the boot menu program bootmenu, check again whether the configuration file in the U disk matches the version number of the application software to be upgraded in the system, if they match, execute the update thread of the step file in the configuration file, and check whether the software upgrade file in the configuration file is suitable for this system, if not suitable for this system, print the prompt word "Configuration file is incorrect"; if suitable for this system, copy the software upgrade file, and determine whether the copying of the software upgrade file is successful, If the copying fails, the prompt word "copy file failed" is printed; if the software upgrade file is copied successfully, the software upgrade file is decrypted to determine whether the decryption of the software upgrade file is successful. If the decryption fails, the prompt word "decryption failed" is printed; if the decryption is successful, the original application software, i.e. the corresponding application software to be upgraded, is deleted, the decrypted software upgrade file is decompressed, and the decompression of the decrypted software upgrade file is determined to be successful. If the decompression fails, the prompt word "decompression failed" is printed; if the decompression is successful, the MD5 verification is performed on the decompressed software upgrade file to determine whether the verification of the software upgrade file is successful. If the verification fails, the prompt word "verification failed" is printed; if the verification is successful, the application software to be upgraded in the system is updated successfully, and the update operation is terminated. Among them, each printed prompt word displays the error result on the system menu page.

[0081] Figure 3 FIG. 1 is a scenario flow diagram of an embedded application software upgrade method based on ARM architecture provided in accordance with another embodiment of the present application. Figure 3 As shown, the method comprises the following steps: S301, compressing the to-be-upgraded software file with a hash value table to obtain a compressed package, and determining the compressed package as a software upgrade file.

[0082] S302, using an encryption tool to encrypt the software upgrade file to obtain an encrypted software upgrade file.

[0083] S303, configuring a step file of an update thread with virtual instructions, and adding the encrypted software upgrade file and the step file as configuration files to a USB flash drive.

[0084] S304, inserting the USB flash drive into the electronic device, and the boot system in the embedded system of the electronic device identifies the USB flash drive and reads whether there is a file with an update mark in the USB flash drive.

[0085] S305, when there is an update mark in the U disk, use the startup menu program to mount the U disk to the specified directory, and determine the configuration file corresponding to the application software to be upgraded by judging the consistency between the software naming information of the application software to be upgraded in the embedded system and the file naming information of the configuration file.

[0086] S306: Upgrade the application software to be upgraded according to the step file in the configuration file corresponding to the application software to be upgraded.

[0087] S307, displaying the errors and progress during the upgrade process on the system startup menu.

[0088] The specific process from S301 to S307 has been described in detail in the above embodiment and will not be repeated here.

[0089] By adopting the technical solution of the embodiment of the present application, a configuration file containing the application software to be upgraded in a mobile storage device is obtained, the application software to be upgraded includes: the application software in the embedded system based on the ARM architecture, the configuration file includes: the encrypted software upgrade file and the step file for updating the application software to be upgraded; based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file in the mobile storage device is identified; when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded. It can be seen that in the process of upgrading the application software, the configuration file in the mobile storage device is obtained, and when it is identified that the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the software upgrade file is executed using the step file in the configuration file to upgrade the application software to be upgraded, without the need for additional upgrade tools or remote upgrade through the network, the application software in the embedded system can be directly upgraded using a portable and mobile mobile storage device, thereby improving the efficiency of application software upgrade.

[0090] In summary, specific embodiments of the present subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recorded in the claims can be performed in a different order and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing can be advantageous.

[0091] The above is an embedded application software upgrade method based on ARM architecture provided in an embodiment of the present application. Based on the same idea, an embedded application software upgrade device based on ARM architecture is also provided in an embodiment of the present application.

[0092] Figure 4 Schematic diagram of the structure of an embedded application software upgrade device based on ARM architecture provided in an embodiment of the present application. Figure 4 As shown, the embedded application software upgrade device based on ARM architecture includes: an acquisition module 41, an identification module 42, and an upgrade module 43: The acquisition module 41 is used to acquire a configuration file containing the application software to be upgraded in the mobile storage device, the application software to be upgraded includes: application software in an embedded system based on the ARM architecture, and the configuration file includes: an encrypted software upgrade file and a step file for updating the application software to be upgraded; An identification module 42, used to identify the configuration file in the mobile storage device based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device; The upgrade module 43 is used to execute the corresponding software upgrade file according to the step file in the configuration file to upgrade the application software to be upgraded when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file.

[0093] In one embodiment, the identification module 42 is specifically used to mount the mobile storage device to a specified directory when the configuration file contains an update flag; obtain file naming information of the configuration file in the mobile storage device, and software naming information of the corresponding application software to be upgraded; wherein the file naming information includes: one or more of the first manufacturer code, the first version number and the first date corresponding to the configuration file, and the software naming information includes: one or more of the second manufacturer code, the second version number and the second date corresponding to the application software to be upgraded; and identify the configuration file corresponding to the file naming information related to the software naming information in the mobile storage device according to the software naming information.

[0094] In one embodiment, the identification module 42 is further used to: determine whether the software upgrade file in the configuration file is updated according to the update flag; if the software upgrade file is updated, determine the update method of the configuration file, and the update method includes: manual update or automatic update.

[0095] In one embodiment, the upgrade module 43 is specifically used to identify the consistency between the application software to be upgraded and the corresponding configuration file. When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the encrypted software upgrade file corresponding to the application software to be upgraded in the configuration file is decrypted according to the update thread in the step file in the configuration file to obtain the decrypted software upgrade file. The decryption process includes: decrypting the software upgrade file according to the decryption password generated by the file naming information; deleting the original program file in the embedded system, and moving the decrypted software upgrade file to the target program directory.

[0096] In one embodiment, the device also includes a verification module, which is used to decompress the decrypted software upgrade file to obtain a decompressed software upgrade file; and perform integrity verification on the decompressed software upgrade file to obtain a software upgrade file after integrity verification.

[0097] In one embodiment, the acquisition module 41 is specifically used to acquire data in the mobile storage device after starting the embedded system, and the data includes a configuration file of the application software to be upgraded, wherein the configuration file includes: an encrypted software upgrade file and a step file corresponding to the application software to be upgraded; the software upgrade file includes: compressing the software upgrade file with a hash value table to obtain a compressed package, and determining the compressed package as the software upgrade file; the step file includes: a file of an update thread with virtual instructions.

[0098] In one embodiment, the device also includes a display module for displaying the update progress of the application software to be upgraded in the startup menu of the embedded system. When the update is successful, a prompt word indicating the successful update is displayed in the startup menu; when the update fails, a progress prompt word indicating the failed update is displayed in the startup menu.

[0099] By adopting the technical solution of the embodiment of the present application, a configuration file containing the application software to be upgraded in a mobile storage device is obtained, the application software to be upgraded includes: the application software in the embedded system based on the ARM architecture, the configuration file includes: the encrypted software upgrade file and the step file for updating the application software to be upgraded; based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file in the mobile storage device is identified; when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded. It can be seen that in the process of upgrading the application software, the configuration file in the mobile storage device is obtained, and when it is identified that the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the software upgrade file is executed using the step file in the configuration file to upgrade the application software to be upgraded, without the need for additional upgrade tools or remote upgrade through the network, the application software in the embedded system can be directly upgraded using a portable and mobile mobile storage device, thereby improving the efficiency of application software upgrade.

[0100] Those skilled in the art should understand that Figure 4 The embedded application software upgrade device based on ARM architecture can be used to implement the embedded application software upgrade method based on ARM architecture described above, and the detailed description should be similar to the description of the method part above. To avoid tediousness, it will not be repeated here.

[0101] Based on the same technical concept, the embodiment of the present application further provides an electronic device, which is used to execute the above-mentioned embedded application software upgrade method based on ARM architecture. Figure 5 A schematic diagram of the structure of an electronic device for implementing various embodiments of the present application. The electronic device may have relatively large differences due to different configurations or performances, and may include a processor (processor) 510, a communication interface (Communications Interface) 520, a memory (memory) 530 and a communication bus 540, wherein the processor 510, the communication interface 520, and the memory 530 communicate with each other through the communication bus 540. The processor 510 may call a computer program stored in the memory 530 and executable on the processor 510 to perform the following steps: Obtaining a configuration file containing the application software to be upgraded in the mobile storage device, the application software to be upgraded includes: application software in an embedded system based on the ARM architecture, and the configuration file includes: an encrypted software upgrade file and a step file for updating the application software to be upgraded; Based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, identifying the configuration file in the mobile storage device; When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded.

[0102] By adopting the technical solution of the embodiment of the present application, a configuration file containing the application software to be upgraded in a mobile storage device is obtained, the application software to be upgraded includes: the application software in the embedded system based on the ARM architecture, the configuration file includes: the encrypted software upgrade file and the step file for updating the application software to be upgraded; based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, the configuration file in the mobile storage device is identified; when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded. It can be seen that in the process of upgrading the application software, the configuration file in the mobile storage device is obtained, and when it is identified that the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the software upgrade file is executed using the step file in the configuration file to upgrade the application software to be upgraded, without the need for additional upgrade tools or remote upgrade through the network, the application software in the embedded system can be directly upgraded using a portable and mobile mobile storage device, thereby improving the efficiency of application software upgrade.

[0103] The specific execution steps can refer to the various steps of the above-mentioned embedded application software upgrade method embodiment based on ARM architecture, and can achieve the same technical effect. To avoid repetition, they will not be repeated here.

[0104] It should be noted that the electronic devices in the embodiments of the present application include: servers, terminals, or other devices except terminals.

[0105] The above electronic device structure does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. For example, the input unit may include a graphics processing unit (GPU) and a microphone, and the display unit may be configured with a display panel in the form of a liquid crystal display, an organic light-emitting diode, etc. The user input unit includes a touch panel and at least one of other input devices. The touch panel is also called a touch screen. Other input devices may include, but are not limited to, a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which will not be repeated here.

[0106] The memory can be used to store software programs and various data. The memory may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, an application program or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory may include a volatile memory or a non-volatile memory, or the memory may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. Volatile memory can be random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct memory bus random access memory (DRRAM).

[0107] The processor may include one or more processing units; optionally, the processor integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to the operating system, user interface, and application programs, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It is understandable that the modem processor may not be integrated into the processor.

[0108] An embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the various processes of the above-mentioned embedded application software upgrade method embodiment based on the ARM architecture are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.

[0109] The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0110] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned ARM architecture-based embedded application software upgrade method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0111] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.

[0112] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the processor is used to run the program or instructions to implement the various processes of the above-mentioned product recommendation method embodiment and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0113] It should be noted that, in this article, the terms "comprise", "include" or any other variant thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise one..." do not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.

[0114] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, a magnetic disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0115] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.

Claims

1. A method for upgrading embedded application software based on ARM architecture, characterized in that: The method comprises: Obtaining a configuration file containing application software to be upgraded in a mobile storage device, wherein the application software to be upgraded includes: application software in an embedded system based on an ARM architecture, and the configuration file includes: an encrypted software upgrade file and a step file for updating the application software to be upgraded; Based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device, identifying the configuration file in the mobile storage device; When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, the corresponding software upgrade file is executed according to the step file in the configuration file to upgrade the application software to be upgraded.

2. The method according to claim 1, characterized in that The step of identifying the configuration file in the mobile storage device based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device comprises: When the configuration file includes an update flag, mounting the mobile storage device to a specified directory; Acquire the file naming information of the configuration file in the mobile storage device, and the corresponding software naming information of the to-be-upgraded application software; wherein the file naming information includes: one or more of a first manufacturer code, a first version number, and a first date corresponding to the configuration file, and the software naming information includes: one or more of a second manufacturer code, a second version number, and a second date corresponding to the to-be-upgraded application software; According to the software naming information, the configuration file corresponding to the file naming information related to the software naming information in the mobile storage device is identified.

3. The method according to claim 2, characterized in that In the case where the configuration file includes an update flag, before mounting the mobile storage device to the designated directory, the method includes: According to the update flag, it is determined whether the software upgrade file in the configuration file is updated. If the software upgrade file has been updated, an update method for the configuration file is determined, and the update method includes: manual update or automatic update.

4. The method according to claim 1, characterized in that: When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, executing the corresponding software upgrade file according to the step file in the configuration file includes: Perform consistency identification on the application software to be upgraded and the corresponding configuration file. When the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file, decrypt the encrypted software upgrade file corresponding to the application software to be upgraded in the configuration file according to the update thread in the step file in the configuration file to obtain the decrypted software upgrade file, wherein the decryption process includes: decrypting the software upgrade file according to the decryption password generated by the file naming information; The original program file in the embedded system is deleted, and the software upgrade file after the decryption process is moved into the target program directory.

5. The method according to claim 4, characterized in that After the decrypted software upgrade file is moved into the target program directory, the method includes: Decompressing the decrypted software upgrade file to obtain the decompressed software upgrade file; The decompressed software upgrade file is subjected to an integrity check to obtain the software upgrade file subjected to the integrity check.

6. The method according to claim 4, characterized in that The step of obtaining a configuration file containing the application software to be upgraded in the mobile storage device includes: After starting the embedded system, data in the mobile storage device is obtained, the data including the configuration file of the application software to be upgraded, wherein the configuration file includes: the encrypted software upgrade file and the step file corresponding to the application software to be upgraded; the software upgrade file includes: compressing the software upgrade file with a hash value table to obtain a compressed package, and determining the compressed package as the software upgrade file; the step file includes: a file of the update thread with virtual instructions.

7. The method according to claim 1, characterized in that After executing the corresponding software upgrade file according to the step file in the configuration file, the method includes: Displaying the update progress of the application software to be upgraded in the startup menu of the embedded system, and when the update is successful, displaying a prompt word indicating the success of the update in the startup menu; When the update fails, a progress prompt indicating the update failure is displayed in the startup menu.

8. An embedded application software upgrade device based on ARM architecture, characterized in that: The device comprises: An acquisition module is used to acquire a configuration file containing application software to be upgraded in a mobile storage device, wherein the application software to be upgraded includes: application software in an embedded system based on an ARM architecture, and the configuration file includes: an encrypted software upgrade file and a step file for updating the application software to be upgraded; an identification module, configured to identify the configuration file in the mobile storage device based on the software naming information of the application software to be upgraded and the file naming information of the configuration file in the mobile storage device; The upgrade module is used to execute the corresponding software upgrade file according to the step file in the configuration file to upgrade the application software to be upgraded when the software naming information of the application software to be upgraded is consistent with the file naming information of the configuration file.

9. An electronic device, characterized in that: It comprises a processor and a memory electrically connected to the processor, the memory stores a computer program, and the processor is used to call and execute the computer program from the memory to implement an embedded application software upgrade method based on ARM architecture as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The storage medium is used to store a computer program, and the computer program can be executed by a processor to implement an embedded application software upgrade method based on an ARM architecture as described in any one of claims 1 to 7.