Processor software upgrading method and device, equipment and storage medium
By obtaining the step parameters of the processor and automatically determining the iteration stage and the target software version, the problem of version mismatch in the processor software upgrade is solved, and the upgrade efficiency and accuracy are improved.
Patent Information
- Application Number
- CN202510076562.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-17
- Publication Date
- 2025-04-11
AI Technical Summary
In the prior art, the upgrade of the processor software code base requires manual selection and combination of binary files, which easily leads to version mismatch and cannot be turned on, and it consumes a lot of time and effort.
By obtaining the step parameters of the processor, determining its current iteration stage, and automatically determining the target software version and the corresponding binary version file according to the iteration stage, and performing software updates.
It effectively avoids the mismatch between the component binary version files and the actual stage, improves the efficiency and accuracy of processor software upgrades, and reduces the need for manual intervention.
Smart Images

Figure CN119806596A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a processor software upgrading method, device, equipment and storage medium. Background Art
[0002] The processor's software codebase refers to a collection of software codes that contain processor-related functions. These codebases are usually used to obtain and process processor information. Updates to the processor's software codebase mainly include updates to various functional modules and microcode updates at the operating system level.
[0003] In the related art, after the manufacturer releases a code base upgrade introduction document, the user needs to manually select the corresponding version of the binary file of each component for reorganization, and then merge it into the firmware; however, manually selecting the binary file version for combination may cause an abnormal combination that may lead to a failure to boot, and it wastes a lot of manpower and is costly. Summary of the invention
[0004] In view of this, the purpose of the present invention is to provide a processor software upgrade method, device, equipment and storage medium, which can avoid the situation where the binary version file of the component does not match the actual stage as much as possible, and improve the efficiency of processor software upgrade. The specific scheme is as follows: In a first aspect, the present application discloses a processor software upgrade method, comprising: Acquire a stepping parameter of the processor according to the update instruction, and determine a current iteration phase of the processor according to the stepping parameter; Determine the target software version corresponding to the iteration stage; the target software version includes a debugging version and a production version; Determine a binary version file of a target component in the processor under the target software version to obtain a component version file matching the iteration stage; Software update is performed based on the component version file of the target component.
[0005] Optionally, acquiring the stepping parameter of the processor according to the update instruction includes: Acquire a data control language file of the processor according to the update instruction, and extract step parameters by parsing the data control language file; comparing the stepping parameter with the most recently extracted stepping parameter; If the step parameter is different from the most recently extracted step parameter, an operation of determining the current iteration stage of the processor according to the step parameter is performed.
[0006] Optionally, after determining the current iteration stage of the processor according to the step parameter, the method further includes: Update the firmware flag according to the iteration stage; The target software version corresponding to the iteration stage is determined by querying the mapping relationship between the iteration stage and the software version according to the flag bit when the firmware is running.
[0007] Optionally, determining a binary version file of a target component in the processor under the target software version includes: Obtaining different versions of binary version files corresponding to the target component; The binary version file is identified according to the version feature, and the binary version file matching the target software version is screened out from all the binary version files according to the identification result.
[0008] Optionally, the debugging version includes an internal test version and a public test version; the target software version also includes an experience version.
[0009] Optionally, before performing software update based on the component version file of the target component, the method further includes: Check that the component version files of all target components match each other; If the detection result shows that there is a mismatch, re-execute the operation of determining the target software version corresponding to the iteration stage to obtain a new component version file; Recheck whether the new component version files match each other, and update the cumulative number of checks; If the new detection result shows that there is a mismatch, the accumulated number of inspections is compared with a preset number threshold; If the cumulative number of checks is less than the preset number threshold, re-execute the operation of determining the target software version corresponding to the iteration stage; If the cumulative number of checks is greater than or equal to the preset number threshold, filtering out the unmatched component version files as the version files to be updated; Obtaining a compatible version file of the target component corresponding to the version file to be updated; Replacing the to-be-updated version file with the compatible version file; If the detection result is a match, the device is started and the operating system is entered.
[0010] Optionally, the checking whether the component version files of all target components match each other includes: Static measurement and dynamic measurement are performed on the component version file, and it is determined whether the component version files of all the target components match each other based on the measurement data.
[0011] In a second aspect, the present application discloses a processor software upgrade device, comprising: A step parameter acquisition module, used to acquire a step parameter of a processor according to an update instruction, and determine a current iteration phase of the processor according to the step parameter; A target software version determination module is used to determine the target software version corresponding to the iteration stage; the target software version includes a debugging version and a production version; A component version file determination module, used to determine a binary version file of a target component in a processor under the target software version, so as to obtain a component version file matching the iteration stage; An update module is used to perform software update based on the component version file of the target component.
[0012] In a third aspect, the present application discloses an electronic device, comprising: Memory, used to store computer programs; The processor is used to execute the computer program to implement the aforementioned processor software upgrade method.
[0013] In a fourth aspect, the present application discloses a computer-readable storage medium for storing a computer program; wherein the computer program implements the aforementioned processor software upgrade method when executed by a processor.
[0014] In the present application, the stepping parameters of the processor are obtained according to the update instruction, and the current iteration stage of the processor is determined according to the stepping parameters; the target software version corresponding to the iteration stage is determined; the target software version includes a debug version and a production version; the binary version file of the target component in the processor under the target software version is determined to obtain a component version file that matches the iteration stage; and the software is updated based on the component version file of the target component. It can be seen that by reading the stepping parameters of the processor, the iteration stage of the processor can be determined, and then the software version required for the stage can be determined according to the iteration stage. According to the determined target software version, the binary version file of the target component of the processor is determined. The binary version file is the target software version and corresponds to the iteration stage of the current processor. The processor software is updated by combining the binary version files of each component determined above, which can avoid the situation where the binary version file of the component does not match the actual stage. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] In order to more clearly illustrate the embodiments of the present invention 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 embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.
[0016] Figure 1A flowchart of a processor software upgrade method provided in this application; Figure 2 A specific processor software upgrade method flow chart provided in this application; Figure 3 A schematic diagram of the structure of a processor software upgrade device provided in this application; Figure 4 A structural diagram of an electronic device provided for this application. DETAILED DESCRIPTION
[0017] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0018] In the related art, after the manufacturer releases the code base upgrade introduction document, the user needs to manually select the binary files of the corresponding versions of each component to reorganize and then merge them into the firmware; however, when manually selecting the binary file versions for combination, there is a possibility that the combination will be abnormal and the system will not be able to boot, and it wastes a lot of manpower and has high costs. In order to overcome the above technical problems, this application proposes a processor software upgrade method that can avoid the situation where the binary version file of the component does not match the actual stage, and improve the efficiency of the processor software upgrade.
[0019] The present application embodiment discloses a processor software upgrade method, see Figure 1 As shown, the method may include the following steps: Step S11: acquiring a step parameter of the processor according to the update instruction, and determining a current iteration stage of the processor according to the step parameter.
[0020] In this embodiment, when the processor software needs to be upgraded, the stepping parameter of the processor is first obtained, that is, the stepping field, which can characterize the current iteration version of the processor, and then determine the iteration stage to which the current processor belongs, and the iteration stage includes but is not limited to engineering samples, electrical validation samples, quality samples, QSFD, PRQ, etc. It can be understood that different iteration stages of the processor require different software versions, so before the software upgrade, it is necessary to clarify the current iteration stage of the processor so as to use the accurate software version for the software upgrade.
[0021] In some embodiments, the stepping parameters of the processor are obtained according to the update instruction, which may specifically include: obtaining the data control language file of the processor according to the update instruction, extracting the stepping parameters by parsing the data control language file; comparing the stepping parameters with the stepping parameters extracted the most recently; if the stepping parameters are different from the stepping parameters extracted the most recently, then performing the operation of determining the current iteration stage of the processor according to the stepping parameters. Specifically, the stepping parameters can be located and extracted from the data control language file (Data Control Language) of the processor, that is, the data control language file needs to be parsed, and the stepping parameters are obtained from the parsed file. After obtaining the stepping parameters, in order to further improve the accuracy and efficiency of the software update, first determine whether the current stepping parameters are consistent with the stepping parameters based on which the software update was last executed. If they are consistent, it indicates that the software update has been performed based on the stepping parameters, and the update can be temporarily scheduled at this time; if the current stepping parameters are inconsistent with the stepping parameters based on which the software update was last executed, then performing the operation of determining the current iteration stage of the processor according to the stepping parameters, that is, executing the current software upgrade.
[0022] Step S12: Determine the target software version corresponding to the iteration stage; the target software version includes a debugging version and a production version.
[0023] In this embodiment, after determining the iteration stage of the processor according to the stepping parameter, the software version corresponding to the iteration stage is determined as the target software version, and the target software version includes a debug version and a production version, that is, according to the iteration stage of the processor, it is determined whether the currently matched software version is a debug version or a production version. That is, the software version needs to conform to the update stage of the processor.
[0024] In some embodiments, after determining the current iteration stage of the processor according to the step parameter, it may also include: updating the flag bit of the firmware according to the iteration stage; by querying the mapping relationship between the iteration stage and the software version according to the flag bit when the firmware is running, so as to determine the target software version corresponding to the iteration stage. It can be understood that the operation of determining the target software version corresponding to the iteration stage and the component version file of the component, and performing the software update can be specifically performed by the firmware. Therefore, by updating the flag bit of the firmware according to the iteration stage, the current iteration stage of the processor is characterized by the flag bit, so that the iteration stage of the processor is determined by reading the above flag bit when the firmware is running, and then the corresponding target software version is determined according to the iteration stage, and then the binary file of each target component is obtained according to the target software version to obtain the component version file of each target component, and the complete version file is obtained by combining all component version files, and the software of the processor is updated during the firmware operation.
[0025] Among them, the debugging version includes the internal test version (alpha version) and the public test version (beta version); the target software version can also include the production version (Personal Computer version) and the experience version (ProductVersion version). The internal test version is the earliest version, which contains many unfixed defects (BUGs) and is not fully functional. This version is mainly used by developers and testers to test and find BUGs; the public test version is released later than the internal test version. This version is more stable than the internal test version, but there are still BUGs. The purpose of the public test version is to allow community users and loyal users to test to find and fix more problems. The production version, that is, the PC version, refers to the software version designed for personal computers. This version usually has higher graphics quality, more complex operations and more flexible customization options. The experience version refers to the program version, which involves iterative updates during the software development and maintenance process. This version contains different functional features and fixed errors, helps developers manage code changes, and provides different degrees of product testing and experience to the outside world. Of course, according to actual conditions, the target software version can be further subdivided, for example, it can also include a signed version, etc.
[0026] Step S13: Determine the binary version file of the target component in the processor under the target software version to obtain a component version file that matches the iteration stage.
[0027] In this embodiment, after determining the target software version corresponding to the iteration phase, the binary version file of each target component in the processor under the target software version is automatically found, that is, the binary version files corresponding to components under different software versions are different.
[0028] The above-mentioned target components include but are not limited to SINIT (Secure Initialization), ACM (Authenticated Code Module), and Microcode. Microcode is a firmware layer inside a computer processor that controls the low-level operations and functions of the processor. Microcode is located between hardware and software and is an integral part of processor design. It is often used to implement complex instruction set architecture instructions, as well as logic and control flow within the processor. Typically, microcode updates are to fix bugs, improve performance, or add new features. Microcode is usually stored in a read-only memory or non-volatile memory inside the processor. When the processor starts or encounters a specific instruction, it loads the corresponding microcode to guide the execution of the instruction. Microinstructions are the lowest-level control signals that are directly executed by the processor hardware. Microcode is a collection of microinstructions used to implement specific instructions or operations. Microcode is usually written and maintained by the processor manufacturer. Writing microcode requires a deep understanding of the processor's hardware design and instruction set architecture. Manufacturers periodically release microcode updates to address a variety of issues, including but not limited to security fixes to fix potential security vulnerabilities; performance optimization to improve the efficiency of certain operations; and compatibility improvements to ensure compatibility with new system components or software versions. Microcode is responsible for converting high-level instructions into a series of low-level microinstructions that can be executed directly by the processor hardware. These microinstructions can be used to correct processor design flaws or hardware problems without physically changing the processor. They can be optimized to improve processor performance and add additional security features. They can reduce the delay in instruction execution to protect the processor from attacks. The SINIT component is a key part of the system's secure boot and configuration. It ensures that the device runs in a secure state at boot and that the device remains in a secure state during boot and configuration. In Trusted Execution Technology (TXT), SINIT is used to perform a secure boot of the system and to initialize the platform so that the operating system can enter secure mode operation. ACM is a digitally signed module that is used to establish a chain of trust by measuring and verifying the integrity of the code to ensure the security of the system.
[0029] In some embodiments, determining the binary version file of the target component in the processor under the target software version may include: obtaining different versions of binary version files corresponding to the target component; performing version identification on the binary version file according to version features, and filtering out the binary version file that matches the target software version from all binary version files according to the identification results. That is, first obtaining different versions of binary version files corresponding to the target component, and filtering out the binary version file that matches the target software version according to the version features.
[0030] Step S14: performing software update based on the component version file of the target component.
[0031] Finally, a complete version file is obtained according to the determined component version combination of each target component, and the software of the processor is updated according to the version file.
[0032] Furthermore, before the above-mentioned software update based on the component version file of the target component is performed, it may include: determining the target sub-code library corresponding to the target software version according to the type of the target software version; encapsulating the component version file into the target sub-code library. It is understandable that different types of software versions correspond to different sub-code libraries, such as internal test versions, public test versions, production versions, and experience versions, which correspond to their own sub-code libraries. Therefore, after obtaining the component version file, in order to ensure the success rate of the upgrade, it is necessary to first determine the sub-code library corresponding to the current software version in the code library as the target sub-code library, and then encapsulate all component version files into the target sub-code library. In other words, if it is currently an internal test version, the current component version file is encapsulated into the sub-code library corresponding to the internal test version, and if it is currently a production version, the current component version file is encapsulated into the sub-code library corresponding to the production version.
[0033] This application can be applied to multiple processor platforms, such as the Birch Stream platform. Birch Stream is part of the fifth-generation Xeon Scalable processor series and is a platform for Intel processors used in servers. It is mainly aimed at the data center and enterprise server markets and is designed to provide advanced computing capabilities, energy efficiency and security. The platform mainly has two CPUs, Granite Rapids (GNR) and Sierra Forest (SRF). For each CPU, it is generally necessary to support booting at the same time. However, due to pre-research projects, the release plans of the alpha, beta, PC, and PV versions of the code base of the software (software) of GNR and SRF are different. Intel releases a new codebase every week, and releases alpha, beta, PC, and PV versions of key nodes every 2-4 months. Alpha and beta are often called debug versions, and PC and PV are production versions. For debug and production versions, the versions of components such as SINT, ACM, Microcode, etc. that need to be supported are completely different, which may even lead to scenarios where the system cannot be booted. In the related art, when the codebase is upgraded weekly, the corresponding adapted SINT, ACM, Microcode and other binary versions are manually searched according to the published introduction documents, and then merged into the firmware, which has the problems of low efficiency and poor accuracy. The present application reads the current Stepping through the Stepping field defined in the DCL document of the processor, and performs adaptive matching in the firmware, that is, automatically matches the binary suitable for the current debug and production versions according to the corresponding relationship. It can avoid the problem of the Birch Stream generation that cannot be started normally due to the combination of different versions, and provide a more comprehensive, detailed and complete secure boot process. The above firmware can be BIOS (Basic Input / Output System) or UEFI (Unified Extensible Firmware Interface).
[0034] In some embodiments, before performing software update based on the component version file of the target component, it may also include: checking whether the component version files of all target components match each other; if the detection result is that there is a mismatch, re-executing the operation of determining the target software version corresponding to the iteration stage to obtain a new component version file; re-checking whether the new component version files match each other, and updating the cumulative number of checks; if the new detection result is that there is a mismatch, comparing the cumulative number of checks with a preset number threshold; if the cumulative number of checks is less than the preset number threshold, re-executing the operation of determining the target software version corresponding to the iteration stage; if the cumulative number of checks is greater than or equal to the preset number threshold, filtering out the unmatched component version files as the version files to be updated; obtaining the compatible version file of the target component corresponding to the version file to be updated; replacing the version file to be updated with the compatible version file; if the detection result is a match, starting the device to enter the operating system. It can be understood that in order to improve the success rate of software upgrades, a matching check is performed first after the component version file is determined, that is, whether the component version files of all target components match each other and whether they match the current stage; if there is a mismatch, repeat the process of determining the target software version and component version file, and detect again. If the test result is still a mismatch after the preset number of cycles, select a compatible version for this software upgrade; if they match each other, the device can be started to enter the operating system.
[0035] The checking whether the component version files of all target components match each other may include: performing static measurement and dynamic measurement on the component version files, and judging whether the component version files of all target components match each other according to the measurement data. Component measurement can provide guidance for subsequent corrections through the continuous quantitative process of data definition, collection and analysis.
[0036] For example Figure 2The figure shows a specific processor software upgrade process. Taking the server as an example, the server initializes the CPU after it is powered on. The BIOS actively reads the Stepping field of the CPU, sets the flag bit (Token) in the BIOS code according to the Stepping field, and searches for binary version files of ACM, SINIT, Microcode and other components of different versions of Debug and Production according to the Token, and encapsulates the component version files; executes the static measurement and dynamic measurement processes in the secure boot to check whether the versions match; if there is a mismatch, repeat (retry) 3 times, and if it still doesn't work, use a compatible version for software upgrade; if it matches, the server boots up normally and enters the system. By automatically negotiating and adapting different versions of ACM, SINIT, Microcode and other components according to the stepping parameters, the problem of being unable to boot due to version mismatch of related components during the secure boot measurement process is solved, and the cost and risk of manual adaptation are reduced.
[0037] As can be seen from the above, in this embodiment, the stepping parameters of the processor are obtained according to the update instruction, and the current iteration stage of the processor is determined according to the stepping parameters; the target software version corresponding to the iteration stage is determined; the target software version includes a debug version and a production version; the binary version file of the target component in the processor under the target software version is determined to obtain a component version file that matches the iteration stage; and the software is updated based on the component version file of the target component. It can be seen that by reading the stepping parameters of the processor, the iteration stage of the processor can be determined, and then the software version required for the stage can be determined according to the iteration stage. According to the determined target software version, the binary version file of the target component of the processor is determined. The binary version file is the target software version and corresponds to the iteration stage of the current processor. The processor software is updated after combining the binary version files of each component determined above, which can avoid the situation where the binary version file of the component does not match the actual stage.
[0038] Correspondingly, the embodiment of the present application also discloses a processor software upgrade device, see Figure 3 As shown, the device comprises: A step parameter acquisition module 11 is used to acquire a step parameter of a processor according to an update instruction, and determine a current iteration stage of the processor according to the step parameter; The target software version determination module 12 is used to determine the target software version corresponding to the iteration stage; the target software version includes a debugging version and a production version; A component version file determination module 13, used to determine the binary version file of the target component in the processor under the target software version, so as to obtain the component version file matching the iteration stage; The updating module 14 is used to perform software update based on the component version file of the target component.
[0039] As can be seen from the above, in this embodiment, the stepping parameters of the processor are obtained according to the update instruction, and the current iteration stage of the processor is determined according to the stepping parameters; the target software version corresponding to the iteration stage is determined; the target software version includes a debug version and a production version; the binary version file of the target component in the processor under the target software version is determined to obtain a component version file that matches the iteration stage; and the software is updated based on the component version file of the target component. It can be seen that by reading the stepping parameters of the processor, the iteration stage of the processor can be determined, and then the software version required for the stage can be determined according to the iteration stage. According to the determined target software version, the binary version file of the target component of the processor is determined. The binary version file is the target software version and corresponds to the iteration stage of the current processor. The processor software is updated after combining the binary version files of each component determined above, which can avoid the situation where the binary version file of the component does not match the actual stage.
[0040] In some specific embodiments, the step parameter acquisition module 11 may specifically include: An extraction unit, used for acquiring a data control language file of the processor according to the update instruction, and extracting a step parameter by parsing the data control language file; A comparison unit, used for comparing the step parameter with the step parameter extracted most recently; The execution unit is configured to, if the step parameter is different from the most recently extracted step parameter, execute an operation of determining a current iteration stage of the processor according to the step parameter.
[0041] In some specific embodiments, the processor software upgrade device may specifically include: A flag bit updating unit, configured to update a flag bit of the firmware according to the iteration stage after determining the current iteration stage of the processor according to the step parameter; The target software version determining unit is used to determine the target software version corresponding to the iteration stage by querying the mapping relationship between the iteration stage and the software version according to the flag bit when the firmware is running.
[0042] In some specific embodiments, the component version file determination module 13 may specifically include: A file acquisition unit, used to acquire different versions of binary version files corresponding to the target component; The unit is used to perform version identification on the binary version file according to the version feature, and filter out the binary version file matching the target software version from all binary version files according to the identification result.
[0043] In some specific embodiments, the debugging version includes an internal testing version and a public testing version; the target software version also includes an experience version.
[0044] In some specific embodiments, the processor software upgrade device may specifically include: A checking unit, configured to check whether the component version files of all target components match each other before performing a software update based on the component version file of the target component; A new component version file determination unit, configured to re-execute the operation of determining the target software version corresponding to the iteration phase to obtain a new component version file if the detection result shows that there is a mismatch; A checking unit, used to recheck whether the new component version files match each other and update the cumulative number of checks; A comparison unit, for comparing the accumulated number of inspections with a preset number threshold if the new detection result shows that there is a mismatch; an execution unit, configured to re-execute the operation of determining the target software version corresponding to the iteration stage if the cumulative number of checks is less than the preset number threshold; A screening unit, configured to screen out unmatched component version files as version files to be updated if the cumulative number of checks is greater than or equal to the preset number threshold; A compatible version acquisition unit, used to acquire a compatible version file of a target component corresponding to the version file to be updated; A replacement unit, configured to replace the to-be-updated version file with the compatible version file; The boot unit is used to boot the device into the operating system if the detection result is a match.
[0045] In some specific embodiments, the checking unit may be specifically configured to perform static measurement and dynamic measurement on the component version file, and determine whether the component version files of all the target components match each other based on the measurement data.
[0046] Furthermore, the present application also discloses an electronic device, see Figure 4 As shown, the contents in the drawings should not be considered as any limitation on the scope of use of the present application.
[0047] Figure 4The present invention is a schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the processor software upgrade method disclosed in any of the aforementioned embodiments.
[0048] In this embodiment, the power supply 23 is used to provide working voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and the external device, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface 25 is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.
[0049] In addition, the memory 22, as a carrier for storing resources, can be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon include an operating system 221, a computer program 222, and data 223 including step parameters, etc. The storage method can be temporary storage or permanent storage.
[0050] The operating system 221 is used to manage and control the hardware devices and computer programs 222 on the electronic device 20, so as to realize the operation and processing of the massive data 223 in the memory 22 by the processor 21, and it can be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program that can be used to complete the processor software upgrade method executed by the electronic device 20 disclosed in any of the aforementioned embodiments, the computer program 222 can further include a computer program that can be used to complete other specific tasks.
[0051] Furthermore, an embodiment of the present application also discloses a computer storage medium, in which computer executable instructions are stored. When the computer executable instructions are loaded and executed by a processor, the processor software upgrade method steps disclosed in any of the aforementioned embodiments are implemented.
[0052] Furthermore, an embodiment of the present application also discloses a computer program product, in which a computer program is stored. When the computer program product is loaded and executed by a processor, the processor software upgrade method steps disclosed in any of the aforementioned embodiments are implemented.
[0053] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.
[0054] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
[0055] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also 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 a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.
[0056] The above is a detailed introduction to a processor software upgrade method, device, equipment and storage medium provided by the present invention. Specific examples are used in this article to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea; at the same time, for general technical personnel in this field, according to the idea of the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present invention.
Claims
1. A processor software upgrade method, characterized in that: include: Acquire a stepping parameter of the processor according to the update instruction, and determine a current iteration phase of the processor according to the stepping parameter; Determine the target software version corresponding to the iteration stage; the target software version includes a debugging version and a production version; Determine a binary version file of a target component in the processor under the target software version to obtain a component version file matching the iteration stage; Software update is performed based on the component version file of the target component.
2. The processor software upgrade method according to claim 1, characterized in that: The stepping parameter of the processor is obtained according to the update instruction, comprising: Acquire a data control language file of the processor according to the update instruction, and extract step parameters by parsing the data control language file; comparing the stepping parameter with the most recently extracted stepping parameter; If the step parameter is different from the most recently extracted step parameter, an operation of determining the current iteration stage of the processor according to the step parameter is performed.
3. The processor software upgrade method according to claim 1, characterized in that: After determining the current iteration stage of the processor according to the step parameter, the method further includes: Update the firmware flag according to the iteration stage; The target software version corresponding to the iteration stage is determined by querying the mapping relationship between the iteration stage and the software version according to the flag bit when the firmware is running.
4. The processor software upgrade method according to claim 1, characterized in that: The step of determining a binary version file of a target component in a processor under the target software version includes: Obtaining different versions of binary version files corresponding to the target component; The binary version file is identified according to the version feature, and the binary version file matching the target software version is screened out from all the binary version files according to the identification result.
5. The processor software upgrade method according to claim 1, characterized in that: The debugging version includes an internal test version and a public test version; the target software version also includes an experience version.
6. The processor software upgrade method according to any one of claims 1 to 5, characterized in that: Before performing software update based on the component version file of the target component, the method further includes: Check that the component version files of all target components match each other; If the detection result shows that there is a mismatch, re-execute the operation of determining the target software version corresponding to the iteration stage to obtain a new component version file; Recheck whether the new component version files match each other, and update the cumulative number of checks; If the new detection result shows that there is a mismatch, the accumulated number of inspections is compared with a preset number threshold; If the cumulative number of checks is less than the preset number threshold, re-execute the operation of determining the target software version corresponding to the iteration stage; If the cumulative number of checks is greater than or equal to the preset number threshold, filtering out the unmatched component version files as the version files to be updated; Obtaining a compatible version file of the target component corresponding to the version file to be updated; Replacing the to-be-updated version file with the compatible version file; If the detection result is a match, the device is started and the operating system is entered.
7. The processor software upgrade method according to claim 6, characterized in that: The step of checking whether the component version files of all target components match each other includes: Static measurement and dynamic measurement are performed on the component version file, and it is determined whether the component version files of all the target components match each other based on the measurement data.
8. A processor software upgrade device, characterized in that: include: A step parameter acquisition module, used to acquire a step parameter of a processor according to an update instruction, and determine a current iteration phase of the processor according to the step parameter; A target software version determination module is used to determine the target software version corresponding to the iteration stage; the target software version includes a debugging version and a production version; A component version file determination module, used to determine a binary version file of a target component in a processor under the target software version, so as to obtain a component version file matching the iteration stage; An update module is used to perform software update based on the component version file of the target component.
9. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, configured to execute the computer program to implement the processor software upgrade method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: Used to store computer programs; wherein when the computer program is executed by a processor, the processor software upgrade method as described in any one of claims 1 to 7 is implemented.
Citation Information
Cited By
Heat dissipation control method of server, program product, equipment and storage medium
CN120255679A