Movatterモバイル変換


[0]ホーム

URL:


CN114428633A - Firmware upgrading method, device and equipment - Google Patents

Firmware upgrading method, device and equipment
Download PDF

Info

Publication number
CN114428633A
CN114428633ACN202210004814.7ACN202210004814ACN114428633ACN 114428633 ACN114428633 ACN 114428633ACN 202210004814 ACN202210004814 ACN 202210004814ACN 114428633 ACN114428633 ACN 114428633A
Authority
CN
China
Prior art keywords
firmware
program
area
upgraded
upgrading
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
CN202210004814.7A
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology 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 Alipay Hangzhou Information Technology Co LtdfiledCriticalAlipay Hangzhou Information Technology Co Ltd
Priority to CN202210004814.7ApriorityCriticalpatent/CN114428633A/en
Publication of CN114428633ApublicationCriticalpatent/CN114428633A/en
Pendinglegal-statusCriticalCurrent

Links

Images

Classifications

Landscapes

Abstract

The embodiment of the specification discloses a firmware upgrading method, a firmware upgrading device and firmware upgrading equipment. The method comprises the following steps: acquiring a firmware upgrading request of a firmware to be upgraded, wherein the firmware upgrading request carries a firmware upgrading program; and writing the firmware upgrading program into a program area corresponding to the firmware to be upgraded based on the firmware upgrading request, and updating the content of a mark area to realize the upgrading of the firmware to be upgraded, wherein the program area is used for storing the firmware upgrading program, and the mark area is used for displaying the current running program of the firmware to be upgraded.

Description

Translated fromChinese
一种固件升级方法、装置以及设备A firmware upgrade method, device and device

技术领域technical field

本说明书涉及计算机技术领域,尤其涉及一种固件升级方法、装置以及设备。The present specification relates to the field of computer technology, and in particular, to a firmware upgrade method, apparatus, and device.

背景技术Background technique

随着技术的发展,由于业务需求,需要不断进行固件升级。以修改固件,从而适应不断更新的硬件环境。对于不支持固件热升级的固件,导致每次固件升级必须重新上下电,使得业务运行及运维非常不便。As technology evolves, firmware upgrades need to be performed continuously due to business needs. to modify the firmware to adapt to the constantly updated hardware environment. For firmware that does not support firmware hot upgrade, it is necessary to power on and off each time the firmware is upgraded, which makes business operation and maintenance very inconvenient.

因此,需要一种新的固件升级方法,能够实现固件热升级。Therefore, there is a need for a new firmware upgrade method capable of implementing hot firmware upgrade.

发明内容SUMMARY OF THE INVENTION

本说明书实施例提供一种固件升级方法,用于解决以下技术问题:固件升级必须重新上下电,使得业务运行及运维非常不便。The embodiments of this specification provide a firmware upgrade method, which is used to solve the following technical problem: the firmware must be powered on and off again, which makes business operation and operation and maintenance very inconvenient.

为解决上述技术问题,本说明书实施例是这样实现的:In order to solve the above-mentioned technical problems, the embodiments of this specification are implemented as follows:

本说明书实施例提供一种固件升级方法,包括:The embodiments of this specification provide a firmware upgrade method, including:

获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序;Obtain a firmware upgrade request for firmware to be upgraded, where the firmware upgrade request carries a firmware upgrade program;

基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序。Based on the firmware upgrade request, the firmware upgrade program is written into the program area corresponding to the firmware to be upgraded, and the content of the flag area is updated to realize the upgrade of the firmware to be upgraded, and the program area is used to store the Firmware upgrade program, the mark area is used to display the current running program of the firmware to be upgraded.

本说明书实施例还提供一种固件升级装置,包括:The embodiments of this specification also provide a firmware upgrade device, including:

一种固件升级装置,所述装置包括:A firmware upgrade device, the device includes:

获取模块,获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序;an obtaining module to obtain a firmware upgrade request for firmware to be upgraded, the firmware upgrade request carrying a firmware upgrade program;

升级模块,基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序。The upgrade module, based on the firmware upgrade request, writes the firmware upgrade program into the program area corresponding to the firmware to be upgraded, and updates the content of the flag area to realize the upgrade of the firmware to be upgraded, and the program area is used for The firmware upgrade program is stored, and the flag area is used to display the current running program of the firmware to be upgraded.

本说明书实施例还提供一种电子设备,包括:The embodiments of this specification also provide an electronic device, including:

至少一个处理器;以及,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, the instructions being executed by the at least one processor to enable the at least one processor to:

获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序;Obtain a firmware upgrade request for firmware to be upgraded, where the firmware upgrade request carries a firmware upgrade program;

基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序。Based on the firmware upgrade request, the firmware upgrade program is written into the program area corresponding to the firmware to be upgraded, and the content of the flag area is updated to realize the upgrade of the firmware to be upgraded, and the program area is used to store the Firmware upgrade program, the mark area is used to display the current running program of the firmware to be upgraded.

本说明书实施例提供的一种固件升级方法,获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序;基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序,从而实现固件热升级,在固件升级过程中不需要重新上下电,能够在不中断原有程序执行的情况下,实现固件升级,方便业务运行及运维。In a firmware upgrade method provided by the embodiments of this specification, a firmware upgrade request for firmware to be upgraded is obtained, and the firmware upgrade request carries a firmware upgrade program; based on the firmware upgrade request, the firmware upgrade program is written into the firmware upgrade request. The program area corresponding to the firmware is upgraded, and the content of the flag area is updated to realize the upgrade of the firmware to be upgraded. The program area is used to store the firmware upgrade program, and the flag area is used to display the current status of the firmware to be upgraded. Run the program to achieve hot firmware upgrade. During the firmware upgrade process, there is no need to power on and off again, and the firmware upgrade can be realized without interrupting the execution of the original program, which is convenient for business operation and operation and maintenance.

附图说明Description of drawings

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present specification or the prior art, the following briefly introduces the accompanying drawings required in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only These are some embodiments described in this specification. For those of ordinary skill in the art, other drawings can also be obtained according to these drawings without creative labor.

图1本说明书实施例提供一种固件升级方法的示意图;1 is a schematic diagram of a firmware upgrade method provided by an embodiment of the present specification;

图2为本说明书实施例提供的一种拟升级固件的结构图;2 is a structural diagram of a firmware to be upgraded provided by an embodiment of the present specification;

图3为本说明书实施例提供的一种升级策略的示意图;3 is a schematic diagram of an upgrade strategy provided by an embodiment of the present specification;

图4为本说明书实施例提供的又一种升级策略的示意图;FIG. 4 is a schematic diagram of another upgrade strategy provided by an embodiment of the present specification;

图5为本说明书实施例提供的一种固件升级装置的示意图。FIG. 5 is a schematic diagram of a firmware upgrade apparatus according to an embodiment of the present specification.

具体实施方式Detailed ways

为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。In order to make those skilled in the art better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings in the embodiments of this specification. Obviously, the described The embodiments are only a part of the embodiments of the present application, but not all of the embodiments. Based on the embodiments of the present specification, all other embodiments obtained by persons of ordinary skill in the art without creative efforts shall fall within the scope of protection of the present application.

随着技术的进步,固件的升级成为了用户的迫切需求。固件热升级是指在升级过程中,不中断原有程序执行的一种升级方法。由于固件热升级不会中断原有程序的执行,为固件升级带来极大的便利,因此,固件热升级在固件升级中具有重要意义。下面将结合具体的实施例,以说明本说明书提供的固件升级方法。With the advancement of technology, firmware upgrade has become an urgent need for users. Firmware hot upgrade refers to an upgrade method that does not interrupt the execution of the original program during the upgrade process. Since the firmware hot upgrade will not interrupt the execution of the original program, which brings great convenience to the firmware upgrade, the firmware hot upgrade is of great significance in the firmware upgrade. The firmware upgrade method provided in this specification will be described below with reference to specific embodiments.

图1本说明书实施例提供一种固件升级方法的示意图。如图1所示,固件升级方法包括如下步骤:FIG. 1 is a schematic diagram of a firmware upgrade method provided by an embodiment of the present specification. As shown in Figure 1, the firmware upgrade method includes the following steps:

步骤S101:获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序。Step S101: Obtain a firmware upgrade request for firmware to be upgraded, where the firmware upgrade request carries a firmware upgrade program.

固件是一种与硬件紧密结合并集成一体的程序逻辑,是一种重要的硬件服务。在本说明书实施例中,所述拟升级固件至少包括第一存储区和第二存储区,所述第一存储区包括程序区和标志区,所述第二存储区包括数据区和命令缓冲区。Firmware is a program logic that is closely integrated with hardware and is an important hardware service. In the embodiment of this specification, the firmware to be upgraded includes at least a first storage area and a second storage area, the first storage area includes a program area and a flag area, and the second storage area includes a data area and a command buffer area .

在本说明书实施例中,固件升级请求中所携带的固件升级程序可以是存储在区块链上的,能够防止固件升级请求中所携带的固件升级程序的篡改,保证固件升级的安全性及可靠性。In the embodiment of this specification, the firmware upgrade program carried in the firmware upgrade request may be stored on the blockchain, which can prevent the tampering of the firmware upgrade program carried in the firmware upgrade request, and ensure the security and reliability of the firmware upgrade. sex.

在本说明书实施例中,所述第一存储区可同时运行程序及存储数据,所述第二存储区为静态随机存取存储器。具体地,在本说明书的一个实施例中,第一存储区为非易失性闪存,具体地,第一存储区可以为NANDFLASH或NOR FLASH,优选为NOR FLASH。第二存储区为SRAM。In the embodiment of this specification, the first storage area can run programs and store data at the same time, and the second storage area is a static random access memory. Specifically, in an embodiment of this specification, the first storage area is a non-volatile flash memory, specifically, the first storage area may be NANDFLASH or NOR FLASH, preferably NOR FLASH. The second storage area is SRAM.

NOR FLASH是一种非易失性闪存,在具体实施例中,固件中,第一存储区的存储容量的大小可根据业务需求而定。NOR FLASH is a non-volatile flash memory. In a specific embodiment, in the firmware, the size of the storage capacity of the first storage area may be determined according to business requirements.

SRAM(Static Random-Access Memory,静态随机存储存储器)是随机存取存储器的一种。所谓的“静态”,是指这种存储器只要保持通电,里面储存的数据就可以恒常保持;但是当电力供应停止时,SRAM储存的数据还是会消失。需要特别说明的是,固件中第二存储区的容量大小也根据业务需求而定。SRAM (Static Random-Access Memory, static random access memory) is a kind of random access memory. The so-called "static" means that as long as the memory is kept powered on, the data stored in it can be kept constantly; but when the power supply is stopped, the data stored in the SRAM will still disappear. It should be noted that the capacity of the second storage area in the firmware is also determined according to business requirements.

在本说明书实施例中,所述程序区至少包括两个程序区,用于存储独立的程序版本,所述标志区用于指示当前运行程序。In the embodiment of this specification, the program area includes at least two program areas, which are used to store independent program versions, and the flag area is used to indicate the currently running program.

需要特别说明的是,若程序区为两个程序区,则两个程序区均为可编译区。若程序区具有一个非编译区,则程序区至少具有三个程序区。当然,程序区的个数也可以为多个。但是,一般而言,程序区具有两个可编译的程序区即可满足业务需求。It should be noted that, if the program area is two program areas, the two program areas are both compilable areas. If the program area has one non-compiled area, the program area has at least three program areas. Of course, the number of program areas can also be more than one. In general, however, a program area with two compilable program areas suffices for business needs.

在本说明书实施例中,所述独立的程序版本是指,将同一程序根据所述程序区所包括的各个程序区的起始地址进行固件编译获得的程序版本,所述独立的程序版本中的程序与程序区存在对应关系。需要特别说明的是,各个独立的程序版本具有相同的业务逻辑和业务功能,只是各个独立的程序版本的版本不同,各个程序的起始地址不同。In the embodiments of this specification, the independent program version refers to a program version obtained by compiling the firmware of the same program according to the starting address of each program area included in the program area. There is a corresponding relationship between programs and program areas. It should be noted that each independent program version has the same business logic and business function, but the version of each independent program version is different, and the starting address of each program is different.

在本说明书实施例中,所述将同一程序根据所述程序区所包括的各个程序区的起始地址进行固件编译获得的程序版本,进一步包括:In the embodiment of this specification, the program version obtained by compiling the firmware of the same program according to the starting address of each program area included in the program area further includes:

用于固件编译的所述程序区的各个程序区为可编译区。Each of the program areas used for firmware compilation is a compilable area.

在具体实施例中,程序的编译是在可编译的程序区实现的,可编译的程序区的个数至少为2个。In a specific embodiment, the compilation of the program is implemented in a compilable program area, and the number of the compilable program areas is at least two.

为了便于理解本说明书实施例提供的拟升级的固件,以及独立的程序版本的生成,下面将结合具体的实施例予以说明。In order to facilitate the understanding of the firmware to be upgraded and the generation of the independent program version provided by the embodiments of this specification, the following description will be given with reference to specific embodiments.

图2为本说明书实施例提供的一种拟升级固件的结构图。如图2所示,该固件由第一存储区和第二存储区两个存储区构成,其中,第一存储区包括:程序区和标志区,第二存储区包括:数据区和命令缓冲区。FIG. 2 is a structural diagram of a firmware to be upgraded according to an embodiment of the present specification. As shown in Figure 2, the firmware is composed of two storage areas: a first storage area and a second storage area, wherein the first storage area includes: a program area and a flag area, and the second storage area includes: a data area and a command buffer area .

程序区的个数至少为两个,为便于说明,下面将以程序区包括两个可编译的程序区予以说明。需要特别说明的是,程序区的个数可以根据业务需求而定。The number of program areas is at least two. For the convenience of description, the following will describe the program area including two compilable program areas. It should be noted that the number of program areas can be determined according to business requirements.

第一种情况,第一存储区所包括的程序区均为可编译的程序区,为便于说明,命名为程序A区和程序B区。则进行固件版本编译时,分别根据程序A区和程序B区的起始地址,将固件编译成两个独立的版本程序,分别命名为F-A和F-B,固件可以从程序A区和程序B区独立执行。In the first case, the program areas included in the first storage area are all compilable program areas, and are named as program A area and program B area for convenience of description. When compiling the firmware version, according to the starting addresses of the program A area and the program B area, the firmware is compiled into two independent version programs, named F-A and F-B respectively. The firmware can be independent from the program A area and the program B area. implement.

第二种情况,第一存储区所包括的程序区除了包括可编译的程序区,还包括一个不可更改的程序区,为便于说明,命名为程序0区,程序A区和程序B区,其中,程序0区为不可更改的程序区,程序A区和程序B区为可编译的程序区。则进行固件版本编译时,分别根据程序0区、程序A区和程序B区的起始地址,将固件编译成三个独立的版本程序,分别命名为F-0、F-A和F-B,固件可以从程序A区和程序B区独立执行,而程序0区是不可以进行任何修改的,相当于固件默认的程序。进一步通过带外的方法,将F-A写入程序A区,同样,通过带外的方法,把标志区的内容写为A。将F-B写入程序B区,标志区的内容为B。带外即带外管理,是指管理控制信息与数据信息使用不同的物理通道进行传送。关于带外方式的具体内容,在此不再进行赘述。In the second case, the program area included in the first storage area not only includes the compilable program area, but also includes an unchangeable program area. , the program 0 area is the unchangeable program area, and the program A area and the program B area are the compilable program areas. When the firmware version is compiled, the firmware is compiled into three independent version programs according to the starting addresses of the program 0 area, the program A area and the program B area, respectively named as F-0, F-A and F-B. The program A area and the program B area are executed independently, and the program 0 area cannot be modified in any way, which is equivalent to the default program of the firmware. Further through the out-of-band method, F-A is written into the program A area, and similarly, through the out-of-band method, the content of the flag area is written as A. Write F-B into the program B area, and the content of the flag area is B. Out-of-band or out-of-band management means that management control information and data information are transmitted using different physical channels. The specific content of the out-of-band mode will not be repeated here.

在本说明书实施例中,所述获取固件升级请求之前,还包括如下步骤:In the embodiment of this specification, before the acquiring the firmware upgrade request, the following steps are further included:

读取所述拟升级固件的标志区内容;Read the content of the flag area of the firmware to be upgraded;

根据所述标志区内容,按照预设的升级策略,将程序区对应的固件发送至命令缓冲区,所述程序区至少包括两个程序区。According to the content of the flag area and according to a preset upgrade strategy, the firmware corresponding to the program area is sent to the command buffer, and the program area includes at least two program areas.

在本说明书实施例中,所述预设的升级策略是指根据所述标志区内容,将所述程序区对应的固件发送至所述命令缓冲区域。In the embodiment of this specification, the preset upgrade strategy refers to sending the firmware corresponding to the program area to the command buffer area according to the content of the flag area.

为便于理解,继续延续前例,予以说明。如前所述,针对第一种情况,第一存储区所包括的程序区均为可编译的程序区时,标志区的内容可以为A或B,程序A对应的固件为F-A,程序B对应的固件为F-B,预设的升级策略为,当标志区内容为A时,将程序A对应的固件F-B发送到命令缓冲区;当标志区内容为B时,将程序B对应的固件F-A发送到命令缓冲区。针对第二种情况,第一存储区所包括的程序区除了包括可编译的程序区,还包括一个不可更改的程序区时,标志区的内容可以为0、A或B,程序0对应的固件为F-0,程序A对应的固件为F-A,程序B对应的固件为F-B,预设的升级策略为,当标志区内容为0时,将程序0对应的固件F-A发送到命令缓冲区,当标志区内容为A时,将程序A对应的固件F-B发送到命令缓冲区;当标志区内容为B时,将程序B对应的固件F-A发送到命令缓冲区。For ease of understanding, the previous example is continued and explained. As mentioned above, for the first case, when the program areas included in the first storage area are all compilable program areas, the content of the flag area can be A or B, the firmware corresponding to program A is F-A, and program B corresponds to The firmware is F-B, and the preset upgrade strategy is, when the content of the flag area is A, send the firmware F-B corresponding to program A to the command buffer; when the content of the flag area is B, send the firmware F-A corresponding to program B to the command buffer. command buffer. For the second case, when the program area included in the first storage area includes an unchangeable program area in addition to a compilable program area, the content of the flag area can be 0, A or B, and the firmware corresponding to program 0 is F-0, the firmware corresponding to program A is F-A, and the firmware corresponding to program B is F-B. The preset upgrade strategy is that when the content of the flag area is 0, the firmware F-A corresponding to program 0 is sent to the command buffer. When the content of the flag area is A, send the firmware F-B corresponding to program A to the command buffer; when the content of the flag area is B, send the firmware F-A corresponding to program B to the command buffer.

为便于理解升级策略,下面将以示意图的方式予以说明,如图3和图4所示。In order to facilitate the understanding of the upgrade strategy, the following will be described in the form of schematic diagrams, as shown in FIG. 3 and FIG. 4 .

步骤S103:基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序。Step S103: Based on the firmware upgrade request, write the firmware upgrade program into the program area corresponding to the firmware to be upgraded, and update the content of the flag area to realize the upgrade of the firmware to be upgraded, and the program area is used for The firmware upgrade program is stored, and the flag area is used to display the current running program of the firmware to be upgraded.

在本说明书实施例中,从所述命令缓冲区读取所述固件升级请求后,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新所述标志区的内容,实现所述拟升级固件的升级。In the embodiment of this specification, after reading the firmware upgrade request from the command buffer, the firmware upgrade program is written into the program area corresponding to the firmware to be upgraded, and the content of the flag area is updated to achieve The upgrade of the firmware to be upgraded.

在本说明书实施例中,所述从所述命令缓冲区读取所述固件升级请求,之前还包括如下步骤:In the embodiment of this specification, before the reading of the firmware upgrade request from the command buffer, the following steps are further included:

若所述拟升级固件为第一次上电,则将所述拟升级固件按照初始化方式执行,并清空所述命令缓冲区;若所述拟升级固件不是第一次上电,则保持所述命令缓冲区的内容不变。If the firmware to be upgraded is powered on for the first time, execute the firmware to be upgraded according to the initialization mode, and clear the command buffer; if the firmware to be upgraded is not powered on for the first time, keep the The contents of the command buffer do not change.

上电是指从电源接通后到系统稳定时可以工作的过程。相应地,与上电对应的是下电,是指将设备脱离电源的过程。Power-on refers to the process from when the power is turned on to when the system is stable. Correspondingly, power-off corresponds to power-on, which refers to the process of disconnecting the device from the power source.

在本说明书实施例中,所述读取所述拟升级固件的标志区内容,进一步包括:In the embodiment of this specification, the reading of the content of the flag area of the firmware to be upgraded further includes:

若所述拟升级固件的标志区内容与所述拟升级固件所在的程序区一致,则根据所述标志区内容,按照预设的升级策略,将程序区域对应的固件发送至所述命令缓冲区;If the content of the flag area of the firmware to be upgraded is consistent with the program area where the firmware to be upgraded is located, then according to the content of the flag area and according to the preset upgrade strategy, the firmware corresponding to the program area is sent to the command buffer ;

若所述拟升级固件的标志区内容与所述拟升级固件所在的程序区不一致,则所述拟升级固件执行所述标志区内容。If the content of the flag area of the firmware to be upgraded is inconsistent with the program area where the firmware to be upgraded is located, the firmware to be upgraded executes the content of the flag area.

需要特别说明的是,在命令缓冲区读取请求时,可以为固件升级请求,也可能为业务请求,若在命令缓冲区读取的为业务请求,则按照业务逻辑执行即可,在此不再赘述。It should be noted that when the command buffer is read, it can be a firmware upgrade request or a business request. If the read request in the command buffer is a business request, it can be executed according to business logic. Repeat.

采用本说明书实施例提供的固件升级方法,实现固件热升级,在固件升级过程中不需要重新上下电,能够在不中断原有程序执行的情况下,实现固件升级,方便业务运行及运维。The firmware upgrade method provided by the embodiments of this specification is adopted to realize the firmware hot upgrade, which does not need to be powered on and off during the firmware upgrade process, and can realize the firmware upgrade without interrupting the execution of the original program, which is convenient for business operation and operation and maintenance.

上述内容详细说明了一种固件升级方法,与之相应的,本说明书还提供了一种固件升级装置,如图5所示。图5为本说明书实施例提供的一种固件升级装置的示意图,该装置包括:The above content describes a firmware upgrade method in detail, and correspondingly, this specification also provides a firmware upgrade device, as shown in FIG. 5 . FIG. 5 is a schematic diagram of a firmware upgrade apparatus according to an embodiment of the present specification, and the apparatus includes:

获取模块501,获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序;The obtainingmodule 501 obtains a firmware upgrade request for firmware to be upgraded, and the firmware upgrade request carries a firmware upgrade program;

升级模块503,基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序。Theupgrade module 503, based on the firmware upgrade request, writes the firmware upgrade program into the program area corresponding to the firmware to be upgraded, and updates the content of the flag area to realize the upgrade of the firmware to be upgraded. For storing the firmware upgrade program, the flag area is used to display the current running program of the firmware to be upgraded.

进一步地,所述获取固件升级请求之前,还包括如下步骤:Further, before the acquisition of the firmware upgrade request, the following steps are also included:

读取所述拟升级固件的标志区内容;Read the content of the flag area of the firmware to be upgraded;

根据所述标志区内容,按照预设的升级策略,将程序区对应的固件发送至命令缓冲区,所述程序区至少包括两个程序区。According to the content of the flag area and according to a preset upgrade strategy, the firmware corresponding to the program area is sent to the command buffer, and the program area includes at least two program areas.

进一步地,所述基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,具体包括:Further, based on the firmware upgrade request, the firmware upgrade program is written into the program area corresponding to the firmware to be upgraded, and the content of the flag area is updated to realize the upgrade of the firmware to be upgraded, specifically including:

从所述命令缓冲区读取所述固件升级请求后,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新所述标志区的内容,实现所述拟升级固件的升级。After reading the firmware upgrade request from the command buffer, write the firmware upgrade program into the program area corresponding to the firmware to be upgraded, and update the content of the flag area to realize the upgrade of the firmware to be upgraded .

进一步地,所述拟升级固件至少包括第一存储区和第二存储区,所述第一存储区包括程序区和标志区,所述第二存储区包括数据区和命令缓冲区。Further, the firmware to be upgraded includes at least a first storage area and a second storage area, the first storage area includes a program area and a flag area, and the second storage area includes a data area and a command buffer area.

进一步地,所述第一存储区可同时运行程序及存储数据,所述第二存储区为静态随机存取存储器。Further, the first storage area can run programs and store data at the same time, and the second storage area is a static random access memory.

进一步地,所述程序区至少包括两个程序区,用于存储独立的程序版本,所述标志区用于指示当前运行程序。Further, the program area includes at least two program areas for storing independent program versions, and the flag area is used to indicate the current running program.

进一步地,所述独立的程序版本是指,将同一程序根据所述程序区所包括的各个程序区的起始地址进行固件编译获得的程序版本,所述独立的程序版本中的程序与程序区存在对应关系。Further, the independent program version refers to the program version obtained by firmware compiling the same program according to the starting address of each program region included in the program region, the program in the independent program version and the program region. There is a corresponding relationship.

进一步地,所述将同一程序根据所述程序区所包括的各个程序区的起始地址进行固件编译获得的程序版本,进一步包括:Further, the program version obtained by firmware compiling the same program according to the starting address of each program area included in the program area further includes:

用于固件编译的所述程序区的各个程序区为可编译区。Each of the program areas used for firmware compilation is a compilable area.

进一步地,所述预设的升级策略是指根据所述标志区内容,将所述程序区对应的固件发送至所述命令缓冲区域。Further, the preset upgrade strategy refers to sending the firmware corresponding to the program area to the command buffer area according to the content of the flag area.

进一步地,所述从所述命令缓冲区读取所述固件升级请求,之前还包括如下步骤:Further, before the reading of the firmware upgrade request from the command buffer, the following steps are further included:

若所述拟升级固件为第一次上电,则将所述拟升级固件按照初始化方式执行,并清空所述命令缓冲区;若所述拟升级固件不是第一次上电,则保持所述命令缓冲区的内容不变。If the firmware to be upgraded is powered on for the first time, execute the firmware to be upgraded according to the initialization mode, and clear the command buffer; if the firmware to be upgraded is not powered on for the first time, keep the The contents of the command buffer do not change.

进一步地,所述读取所述拟升级固件的标志区内容,进一步包括:Further, the described reading of the flag area content of the firmware to be upgraded further includes:

若所述拟升级固件的标志区内容与所述拟升级固件所在的程序区一致,则根据所述标志区内容,按照预设的升级策略,将程序区域对应的固件发送至所述命令缓冲区;If the content of the flag area of the firmware to be upgraded is consistent with the program area where the firmware to be upgraded is located, then according to the content of the flag area and according to the preset upgrade strategy, the firmware corresponding to the program area is sent to the command buffer ;

若所述拟升级固件的标志区内容与所述拟升级固件所在的程序区不一致,则所述拟升级固件执行所述标志区内容。If the content of the flag area of the firmware to be upgraded is inconsistent with the program area where the firmware to be upgraded is located, the firmware to be upgraded executes the content of the flag area.

本说明书实施例还提供一种电子设备,包括:The embodiments of this specification also provide an electronic device, including:

至少一个处理器;以及,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, the instructions being executed by the at least one processor to enable the at least one processor to:

获取拟升级固件的固件升级请求,所述固件升级请求携带有固件升级程序;Obtain a firmware upgrade request for firmware to be upgraded, where the firmware upgrade request carries a firmware upgrade program;

基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,所述程序区用于存储所述固件升级程序,所述标志区用于显示所述拟升级固件的当前运行程序。Based on the firmware upgrade request, the firmware upgrade program is written into the program area corresponding to the firmware to be upgraded, and the content of the flag area is updated to realize the upgrade of the firmware to be upgraded, and the program area is used to store the Firmware upgrade program, the mark area is used to display the current running program of the firmware to be upgraded.

进一步地,所述获取固件升级请求之前,还包括如下步骤:Further, before the acquisition of the firmware upgrade request, the following steps are also included:

读取所述拟升级固件的标志区内容;Read the content of the flag area of the firmware to be upgraded;

根据所述标志区内容,按照预设的升级策略,将程序区对应的固件发送至命令缓冲区,所述程序区至少包括两个程序区。According to the content of the flag area and according to a preset upgrade strategy, the firmware corresponding to the program area is sent to the command buffer, and the program area includes at least two program areas.

进一步地,所述基于所述固件升级请求,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新标志区的内容,实现所述拟升级固件的升级,具体包括:Further, based on the firmware upgrade request, the firmware upgrade program is written into the program area corresponding to the firmware to be upgraded, and the content of the flag area is updated to realize the upgrade of the firmware to be upgraded, specifically including:

从所述命令缓冲区读取所述固件升级请求后,将所述固件升级程序写入所述拟升级固件对应的程序区,并更新所述标志区的内容,实现所述拟升级固件的升级。After reading the firmware upgrade request from the command buffer, write the firmware upgrade program into the program area corresponding to the firmware to be upgraded, and update the content of the flag area to realize the upgrade of the firmware to be upgraded .

进一步地,所述拟升级固件至少包括第一存储区和第二存储区,所述第一存储区包括程序区和标志区,所述第二存储区包括数据区和命令缓冲区。Further, the firmware to be upgraded includes at least a first storage area and a second storage area, the first storage area includes a program area and a flag area, and the second storage area includes a data area and a command buffer area.

进一步地,所述第一存储区可同时运行程序及存储数据,所述第二存储区为静态随机存取存储器。Further, the first storage area can run programs and store data at the same time, and the second storage area is a static random access memory.

进一步地,所述程序区至少包括两个程序区,用于存储独立的程序版本,所述标志区用于指示当前运行程序。Further, the program area includes at least two program areas for storing independent program versions, and the flag area is used to indicate the current running program.

进一步地,所述独立的程序版本是指,将同一程序根据所述程序区所包括的各个程序区的起始地址进行固件编译获得的程序版本,所述独立的程序版本中的程序与程序区存在对应关系。Further, the independent program version refers to the program version obtained by firmware compiling the same program according to the starting address of each program region included in the program region, the program in the independent program version and the program region. There is a corresponding relationship.

进一步地,所述将同一程序根据所述程序区所包括的各个程序区的起始地址进行固件编译获得的程序版本,进一步包括:Further, the program version obtained by firmware compiling the same program according to the starting address of each program area included in the program area further includes:

用于固件编译的所述程序区的各个程序区为可编译区。Each of the program areas used for firmware compilation is a compilable area.

进一步地,所述预设的升级策略是指根据所述标志区内容,将所述程序区对应的固件发送至所述命令缓冲区域。Further, the preset upgrade strategy refers to sending the firmware corresponding to the program area to the command buffer area according to the content of the flag area.

进一步地,所述从所述命令缓冲区读取所述固件升级请求,之前还包括如下步骤:Further, before the reading of the firmware upgrade request from the command buffer, the following steps are further included:

若所述拟升级固件为第一次上电,则将所述拟升级固件按照初始化方式执行,并清空所述命令缓冲区;若所述拟升级固件不是第一次上电,则保持所述命令缓冲区的内容不变。If the firmware to be upgraded is powered on for the first time, execute the firmware to be upgraded according to the initialization mode, and clear the command buffer; if the firmware to be upgraded is not powered on for the first time, keep the The contents of the command buffer do not change.

进一步地,所述读取所述拟升级固件的标志区内容,进一步包括:Further, the described reading of the flag area content of the firmware to be upgraded further includes:

若所述拟升级固件的标志区内容与所述拟升级固件所在的程序区一致,则根据所述标志区内容,按照预设的升级策略,将程序区域对应的固件发送至所述命令缓冲区;If the content of the flag area of the firmware to be upgraded is consistent with the program area where the firmware to be upgraded is located, then according to the content of the flag area and according to the preset upgrade strategy, the firmware corresponding to the program area is sent to the command buffer ;

若所述拟升级固件的标志区内容与所述拟升级固件所在的程序区不一致,则所述拟升级固件执行所述标志区内容。If the content of the flag area of the firmware to be upgraded is inconsistent with the program area where the firmware to be upgraded is located, the firmware to be upgraded executes the content of the flag area.

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。The foregoing describes specific embodiments of the present specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in an order different from that in the embodiments and still achieve desirable results. Additionally, the processes depicted in the figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。Each embodiment in this specification is described in a progressive manner, and the same and similar parts between the various embodiments may be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the apparatus, electronic equipment, and non-volatile computer storage medium embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and reference may be made to some descriptions of the method embodiments for related parts.

本说明书实施例提供的装置、电子设备、非易失性计算机存储介质与方法是对应的,因此,装置、电子设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、电子设备、非易失性计算机存储介质的有益技术效果。The apparatuses, electronic devices, and non-volatile computer storage media provided in the embodiments of this specification correspond to the methods. Therefore, the apparatuses, electronic devices, and non-volatile computer storage media also have beneficial technical effects similar to those of the corresponding methods. The beneficial technical effects of the method have been described in detail above, and therefore, the beneficial technical effects of the corresponding apparatus, electronic equipment, and non-volatile computer storage medium will not be repeated here.

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。In the 1990s, improvements in a technology could be clearly differentiated between improvements in hardware (eg, improvements to circuit structures such as diodes, transistors, switches, etc.) or improvements in software (improvements in method flow). However, with the development of technology, the improvement of many methods and processes today can be regarded as a direct improvement of the hardware circuit structure. Designers almost get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be realized by hardware entity modules. For example, a Programmable Logic Device (PLD) (eg, Field Programmable Gate Array (FPGA)) is an integrated circuit whose logic function is determined by user programming of the device. It is programmed by the designer to "integrate" a digital system on a PLD without having to ask the chip manufacturer to design and manufacture a dedicated integrated circuit chip. And, instead of making integrated circuit chips by hand, these days, much of this programming is done using software called a "logic compiler", which is similar to the software compiler used in program development and writing, but before compiling The original code also has to be written in a specific programming language, which is called Hardware Description Language (HDL), and there is not only one HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language) , AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (RubyHardware Description Language), etc. The most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. It should also be clear to those skilled in the art that a hardware circuit for implementing the logic method process can be easily obtained by simply programming the method process in the above-mentioned several hardware description languages and programming it into the integrated circuit.

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。The controller may be implemented in any suitable manner, for example, the controller may take the form of eg a microprocessor or processor and a computer readable medium storing computer readable program code (eg software or firmware) executable by the (micro)processor , logic gates, switches, application specific integrated circuits (ASICs), programmable logic controllers and embedded microcontrollers, examples of controllers include but are not limited to the following microcontrollers: ARC625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicon Labs C8051F320, the memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that, in addition to implementing the controller in the form of pure computer-readable program code, the controller can be implemented as logic gates, switches, application-specific integrated circuits, programmable logic controllers and embedded devices by logically programming the method steps. The same function can be realized in the form of a microcontroller, etc. Therefore, such a controller can be regarded as a hardware component, and the devices included therein for realizing various functions can also be regarded as a structure within the hardware component. Or even, the means for implementing various functions can be regarded as both a software module implementing a method and a structure within a hardware component.

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。The systems, devices, modules or units described in the above embodiments may be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices.

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。For the convenience of description, when describing the above device, the functions are divided into various units and described respectively. Of course, when implementing one or more embodiments of the present specification, the functions of each unit may be implemented in one or more software and/or hardware.

本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。As will be appreciated by one skilled in the art, the embodiments of the present specification may be provided as a method, a system, or a computer program product. Accordingly, embodiments of this specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present specification may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.

本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The specification is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the specification. It will be understood that each flow and/or block in the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to the processor of a general purpose computer, special purpose computer, embedded processor or other programmable data processing device to produce a machine such that the instructions executed by the processor of the computer or other programmable data processing device produce Means for implementing the functions specified in a flow or flow of a flowchart and/or a block or blocks of a block diagram.

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory result in an article of manufacture comprising instruction means, the instructions The apparatus implements the functions specified in the flow or flow of the flowcharts and/or the block or blocks of the block diagrams.

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded on a computer or other programmable data processing device to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process such that The instructions provide steps for implementing the functions specified in the flow or blocks of the flowcharts and/or the block or blocks of the block diagrams.

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。Memory may include non-persistent memory in computer readable media, random access memory (RAM) and/or non-volatile memory in the form of, for example, read only memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。Computer-readable media includes both persistent and non-permanent, removable and non-removable media, and storage of information may be implemented by any method or technology. Information may be computer readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), Flash Memory or other memory technology, Compact Disc Read Only Memory (CD-ROM), Digital Versatile Disc (DVD) or other optical storage, Magnetic tape cartridges, tape-based disk storage or other magnetic storage devices or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media, such as modulated data signals and carrier waves.

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。It should also be noted that the terms "comprising", "comprising" or any other variation thereof are intended to encompass a non-exclusive inclusion such that a process, method, article or device comprising a series of elements includes not only those elements, but also Other elements not expressly listed, or which are inherent to such a process, method, article of manufacture, or apparatus are also included. Without further limitation, an element qualified by the phrase "comprising a..." does not preclude the presence of additional identical elements in the process, method, article of manufacture, or device that includes the element.

本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。This specification may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The instructions can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including storage devices.

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。Each embodiment in this specification is described in a progressive manner, and the same and similar parts between the various embodiments may be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, as for the system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and for related parts, please refer to the partial descriptions of the method embodiments.

以上所述仅为本说明书实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。The above descriptions are merely embodiments of the present specification, and are not intended to limit the present application. Various modifications and variations of this application are possible for those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this application shall be included within the scope of the claims of this application.

Claims (13)

CN202210004814.7A2022-01-052022-01-05Firmware upgrading method, device and equipmentPendingCN114428633A (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN202210004814.7ACN114428633A (en)2022-01-052022-01-05Firmware upgrading method, device and equipment

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN202210004814.7ACN114428633A (en)2022-01-052022-01-05Firmware upgrading method, device and equipment

Publications (1)

Publication NumberPublication Date
CN114428633Atrue CN114428633A (en)2022-05-03

Family

ID=81311285

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN202210004814.7APendingCN114428633A (en)2022-01-052022-01-05Firmware upgrading method, device and equipment

Country Status (1)

CountryLink
CN (1)CN114428633A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN117573175A (en)*2024-01-162024-02-20广东高斯宝电气技术有限公司 Firmware real-time update method, system and storage medium without resetting control chip

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN102495747A (en)*2011-12-102012-06-13无锡市格力普科技有限公司Method for remotely and automatically updating software of intelligent monitoring device of power transmission line
CN110737449A (en)*2019-08-232020-01-31上海商米科技集团股份有限公司Method, apparatus, and machine-readable storage medium for processing device firmware
CN112732301A (en)*2021-01-072021-04-30广州橙行智动汽车科技有限公司Vehicle upgrading method and device
CN113760332A (en)*2021-08-302021-12-07青岛信芯微电子科技股份有限公司 Software upgrade method and electronic device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN102495747A (en)*2011-12-102012-06-13无锡市格力普科技有限公司Method for remotely and automatically updating software of intelligent monitoring device of power transmission line
CN110737449A (en)*2019-08-232020-01-31上海商米科技集团股份有限公司Method, apparatus, and machine-readable storage medium for processing device firmware
CN112732301A (en)*2021-01-072021-04-30广州橙行智动汽车科技有限公司Vehicle upgrading method and device
CN113760332A (en)*2021-08-302021-12-07青岛信芯微电子科技股份有限公司 Software upgrade method and electronic device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘军: "精通STM32F4 寄存器版 第2版", 31 March 2019, 北京:北京航空航天大学出版社, pages: 435 - 440*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN117573175A (en)*2024-01-162024-02-20广东高斯宝电气技术有限公司 Firmware real-time update method, system and storage medium without resetting control chip

Similar Documents

PublicationPublication DateTitle
CN110008262B (en)Data export method and device
CN113282659B (en)Data processing method and device based on block chain
TWI436199B (en)Method and controller for power management
CN110032409B (en)Client screen adapting method and device and electronic equipment
TWI767106B (en) Method, device and device for configuring payment process and executing payment process
US7246346B2 (en)System and method for persisting dynamically generated code in a directly addressable and executable storage medium
TWI224728B (en)Method and related apparatus for maintaining stored data of a dynamic random access memory
JP2009140512A (en)Updating of read-only software module
US10657068B2 (en)Techniques for an all persistent memory file system
JP2003114826A (en)New flash memory structure
CN110781016B (en)Data processing method, device, equipment and medium
CN101246429A (en) Electronic system using flash memory module as main memory and related system boot method
WO2021164368A1 (en)Container application starting method, system, and apparatus, and electronic device
CN116107728B (en)Task execution method and device, storage medium and electronic equipment
CN111177027A (en)Dynamic random access memory, memory management method, system and storage medium
US20060005002A1 (en)Common platform pre-boot and run-time firmware services
TWI696068B (en)Systems and methods for providing power-efficient file system operation to a non-volatile block memory
CN114428633A (en)Firmware upgrading method, device and equipment
CN103218228B (en)A kind of Android device built-in hard disk realizes method and the device of new technology file system
CN103229150A (en)Data control method and system
US20250123766A1 (en)Method, system, and circuit for deploying file system on embedded memory in programmable computing device
CN118819777A (en) A large model switching method, device and medium based on Lora
CN116541314A (en)Address mapping method, device and storage medium based on system page table
US10169113B2 (en)Storage and application intercommunication using ACPI
CN114297543A (en)Data display method, device, equipment and readable medium

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination

[8]ページ先頭

©2009-2025 Movatter.jp