CN116166299A - Software upgrading method and device, storage medium, chip and electronic equipment - Google Patents

Software upgrading method and device, storage medium, chip and electronic equipment Download PDF

Info

Publication number
CN116166299A
CN116166299A CN202310346980.XA CN202310346980A CN116166299A CN 116166299 A CN116166299 A CN 116166299A CN 202310346980 A CN202310346980 A CN 202310346980A CN 116166299 A CN116166299 A CN 116166299A
Authority
CN
China
Prior art keywords
service
thread
software
data
shared memory
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
CN202310346980.XA
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.)
Shenzhen Yunbao Intelligent Co ltd
Original Assignee
Shenzhen Yunbao Intelligent 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 Shenzhen Yunbao Intelligent Co ltd filed Critical Shenzhen Yunbao Intelligent Co ltd
Priority to CN202310346980.XA priority Critical patent/CN116166299A/en
Publication of CN116166299A publication Critical patent/CN116166299A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Abstract

The application discloses a software upgrading method, a device, a storage medium, a chip and electronic equipment. When the software needs to be upgraded, the service data of the software can be stored into the shared memory through the current process of the software, then a new process is started through process switching, and the service data is recovered from the shared memory through the new process, so that the software is upgraded. According to the scheme provided by the application, the thermal upgrading is finished locally through the process, the thermal upgrading is not needed to be realized through a thermal migration mode, the large-version software upgrading can be realized under the condition that the running service of the system is not influenced, and the upgrading time is less.

Description

Software upgrading method and device, storage medium, chip and electronic equipment
Technical Field
The present disclosure relates to the field of computer networks, and in particular, to a method and apparatus for upgrading software, a storage medium, a chip, and an electronic device.
Background
In order to reduce the influence on the service during the software upgrading as much as possible and reduce the restarting of the system, the software upgrading generally adopts a method of thermal migration and thermal patching.
The hot migration is to transparently migrate the software from the source host to the destination host during the running process of the software, so as to run new version software on the destination host and complete the upgrade. However, the thermal migration needs more resources, the migration involves multiple modules such as a network and a storage, the migration time is long, the thermal migration of one virtual machine is generally completed for tens of seconds, and if a large number of virtual machines exist in a data center, the thermal upgrade is very time-consuming to realize through the thermal migration. Hot patching is a technology for dynamically repairing code bug in memory when software is running. However, the hot patching is more suitable for repairing the small code change and is not suitable for upgrading large-version software. Thus, there is a need for an upgrade method that is suitable for large versions of software and that is less time consuming.
Disclosure of Invention
The application discloses a software upgrading method, a device, a storage medium, a chip and electronic equipment, which can realize large-version software upgrading and have less time consumption for upgrading.
According to a first aspect of embodiments of the present application, there is provided a software upgrade method, the method including:
when an upgrade command is received, a first process of the software analyzes the upgrade command, wherein the first process is a current process of the software;
the first process stores the business data to the shared memory according to the upgrade command;
when the first process finishes storing the service data, the software executes process switching to control the first process to exit, and starts a second process configured with an upgrading mark as a new current process of the software;
and after the second process is started, acquiring the service data of the first process from the shared memory according to the upgrading mark, and finishing software upgrading.
Optionally, the first process includes a first main thread and at least one service thread, and when receiving the upgrade command, the first process of the software parses the upgrade command through the first main thread, and,
the step of storing the service data to the shared memory by the first process according to the upgrade command specifically comprises the following steps:
the first main thread sends a first notification to at least one first service thread according to the upgrade command;
and when the first notification is received, the first business thread stores the business data into the shared memory.
Optionally, the first main thread sends the first notification to at least one first service thread through the message queue.
Optionally, when the first process completes the saving of the service data, the step of executing the process switching by the software to control the first process to exit specifically includes:
and when all the first service threads finish the storage of the service data, executing process switching by the first main thread.
Optionally, the second process includes a second main thread and at least one second business thread,
after the second process is started, the step of acquiring the service data of the first process from the shared memory according to the upgrade mark specifically comprises the following steps:
after the second process is started, the second main thread sends a second notification to at least one second service thread according to the upgrade mark,
and when receiving the second notification, the second service thread acquires the service data of the first service thread from the shared memory, wherein the second service thread has a mapping relationship between the memory space pointed by the shared memory and the memory space pointed by the first service thread.
Optionally, the service data includes static data and dynamic data, the static data includes configuration information associated with the first process, and the dynamic data includes configuration information for interaction of the first process with the external process.
Optionally, the service data is serialized and then stored in the shared memory.
According to a second aspect of embodiments of the present application, there is provided a software upgrade apparatus, the apparatus comprising:
the analysis module is used for prompting a first process of the software to analyze the upgrade command when the upgrade command is received, wherein the first process is the current process of the software;
the storage module is used for promoting the first process to store the business data to the shared memory according to the upgrade command;
the switching module is used for prompting the software to execute process switching when the first process finishes storing the service data so as to control the first process to exit, and starting a second process configured with an upgrading mark as a new current process of the software;
and the recovery module is used for promoting the second process to acquire the service data of the first process from the shared memory according to the upgrading mark after the second process is started, so as to complete software upgrading.
Optionally, the first process includes a first main thread and at least one business thread,
the analysis module is specifically used for prompting the first process of the software to analyze the upgrade command through the first main thread when the upgrade command is received,
the storage module is specifically further configured to cause the first main thread to send a first notification to at least one first service thread according to the upgrade command, and cause the first service thread to store the service data to the shared memory when receiving the first notification.
Optionally, the first main thread sends the first notification to at least one first service thread through the message queue.
Optionally, the switching module is specifically further configured to cause the first main thread to perform process switching when all the first service threads complete storing of the service data.
Optionally, the second process includes a second main thread and at least one second business thread,
the recovery module is specifically configured to, after the second process is started, cause the second main thread to send a second notification to at least one second service thread according to the upgrade flag, and when the second service thread receives the second notification, cause the second service thread to obtain service data of the first service thread from the shared memory, where a mapping relationship exists between a memory space pointed by the second service thread in the shared memory and a memory space pointed by the first service thread in the shared memory.
Optionally, the service data includes static data and dynamic data, the static data is configuration information associated with the first process, and the dynamic data is configuration information of interaction between the first process and the external process.
Optionally, the service data is serialized and then stored in the shared memory.
According to a third aspect of embodiments of the present application, there is provided a computer readable storage medium storing a computer program which, when executed by one or more processors, implements the software upgrade method as provided in the first aspect of embodiments of the present application.
According to a fourth aspect of embodiments of the present application, there is provided a chip comprising: a memory and a processor;
wherein the memory is configured to store machine-executable instructions;
the processor is configured to read and execute the machine executable instructions stored in the memory, so as to implement the software upgrading method as provided in the first aspect of the embodiment of the present application.
According to a fifth aspect of embodiments of the present application, there is provided an electronic device comprising the chip as provided in the fourth aspect of embodiments of the present application.
The technical scheme provided by the embodiment of the application can comprise the following beneficial effects:
according to the technical scheme, when the software needs to be upgraded, the service data of the software can be stored into the shared memory through the current process of the software, then a new process is started through process switching, and the service data is recovered from the shared memory through the new process, so that the software is upgraded. According to the scheme provided by the application, the thermal upgrading is finished locally through the process, the thermal upgrading is not needed to be realized through a thermal migration mode, the large-version software upgrading can be realized under the condition that the running service of the system is not influenced, and the upgrading time is less.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the specification and together with the description, serve to explain the principles of the specification.
Fig. 1 is a schematic flow chart of a software upgrading method according to an embodiment of the present application;
fig. 2 is a schematic block diagram of a software upgrading apparatus according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with some aspects of the present application as detailed in the accompanying claims.
The terminology used in the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the present application. As used in this application and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
It should be understood that although the terms first, second, third, etc. may be used herein to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first message may also be referred to as a second message, and similarly, a second message may also be referred to as a first message, without departing from the scope of the present application. The word "if" as used herein may be interpreted as "at … …" or "at … …" or "responsive to a determination", depending on the context.
In order to better understand the technical solutions provided by the embodiments of the present application and make the above objects, features and advantages of the embodiments of the present application more obvious, the following description describes method embodiments provided by the embodiments of the present application with reference to the accompanying drawings.
Referring to fig. 1, fig. 1 provides a flow chart of a software upgrading method. As an embodiment, the method comprises the steps of:
step 101, when an upgrade command is received, a first process of the software parses the upgrade command, wherein the first process is a current process of the software.
As an embodiment, the software may be a virtual machine monitor (e.g., hypervisor software) running on DPU (Data Processing Unit), and in other variations, the software may be other executable programs running on a DPU, GPU (Graphics Processing Unit), or CPU (Central Processing Unit). When the software runs, the software runs on the DPU in the form of a first process, wherein the first process is the current process of the software. The software may be thermally upgraded upon receiving an upgrade command. The software can be upgraded on the premise of not restarting the system (such as SoC (System on Chip) on-chip system) through hot upgrading, the running service of the system is not affected, and the upgrading process is transparent to other peripheral processes. The upgrade command may specifically be a file in Json format. When the software receives the upgrade command, the first process of the software parses the upgrade command to verify the file parameters of the upgrade command (e.g., whether the file path is accessible, whether the file path points to the ELF (Executable and Linkable Format, executable linkable file format) file header has the desired segment name indicating the file, etc.). When the verification passes, then the next step 102 is performed. When the verification fails, an error message is returned.
Step 102, the first process saves the service data to the shared memory according to the upgrade command.
As an embodiment, when the upgrade command passes the verification, the first process applies for the shared memory to the system, and then saves the service data to the shared memory. The service data includes static data and dynamic data. For Hypervisor software, the static data includes configuration information (such as information of a created virtual machine, an included device (such as a network card, a disk, etc.) associated with the first process, and the dynamic data includes configuration information of interaction of the first process with an external process (such as information of socket connection, virtio characteristic negotiation result, etc. of interaction of the first process with the external process).
In other alternative embodiments, the first process may include a first main thread and at least one first business thread. The first main thread is used to receive and execute global commands (e.g., upgrade commands). The first service thread is used to perform corresponding service operations (e.g., creation of a virtual machine, binding or unbinding of devices, etc.). When at least one first service thread is a plurality of first service threads, the plurality of first service threads are service threads which are executed in parallel.
When the first process of the software receives the upgrade command, the first process of the software analyzes the upgrade command through the first main thread. And the first main thread sends a first notification to at least one first business thread according to the upgrade command. When the first notification is received, all the first business threads store the business data to the shared memory. The plurality of parallel first service threads store the service data to the shared memory in parallel, so that the rate of storing the service data by the software can be increased, and the rate of upgrading the software is increased.
Optionally, the first main thread sends a first notification to at least one first service thread through the message queue, where the first notification includes an indication to save service data to the shared memory, and includes an address of a memory space pointed by each first service thread in the shared memory. The shared memory is a memory space applied to the system by the first process according to the number of the first service threads. Each first service thread corresponds to a block of memory space, i.e. each first service thread points to a block of memory space, in other words, the first service thread can access the memory space through the address of the memory space pointed to by the first service thread.
Optionally, when the first notification is received, each first service thread sequences the service data and stores the service data into a corresponding memory space in the shared memory. Wherein Protobuf (Protocol Buffers) may be employed to serialize (i.e., serialize) the traffic data, or other means of serializing the traffic data. By serializing the service data and storing the service data into the shared memory, the portable and efficient storage of massive service data can be realized.
Step 103, when the first process finishes saving the service data, the software performs process switching to control the first process to exit, and starts the second process configured with the upgrade flag as a new current process of the software.
As one embodiment, when the first main thread of the software receives signals that all the first service threads complete the saving of the service data, the first main thread of the software performs a process switching to control the first process to exit, and starts a second process configured with an upgrade flag as a new current process of the software.
Alternatively, the first main thread of the software may perform the process switch by calling an execv system function.
And 104, after the second process is started, acquiring the service data of the first process from the shared memory according to the upgrading mark, and finishing the software upgrading.
As an embodiment, the second process obtains the service data of the first process after serialization from the shared memory according to the upgrade flag, and deserializes the service data after serialization to recover the service data of the first process. Wherein, protobuf can be adopted to deserialize the serialized service data.
In other alternative embodiments, the second process includes a second main thread and at least one second business thread. After the second process is started, the second main thread of the second process sends a second notification to at least one second service thread according to the upgrade mark, wherein the second notification comprises an instruction for acquiring and recovering the service data of the first service threads from the shared memory and a mapping relation between the memory space pointed by each second service thread in the shared memory and the memory space pointed by each first service thread in the shared memory. Optionally, the mapping relationship is a one-to-one correspondence relationship, in other words, a memory space pointed by the second service thread in the shared memory is equal to a memory space pointed by the first service thread in the shared memory.
And when the second business thread receives the second notification, the second business thread acquires business data of the first business thread from the shared memory. Specifically, when the second service thread receives the second notification, the second service thread obtains the service data of the first process after serialization from the shared memory according to the second notification, and then deserializes the service data after serialization to recover the service data of the first process. And when all the second service threads recover to finish the service data of the first service thread, the second process finishes the software upgrading.
When the software needs to be upgraded, the service data of the software can be stored into the shared memory through the current process of the software, then a new process is started through process switching, and the service data is recovered from the shared memory through the new process, so that the software is upgraded. According to the software upgrading method, the hot upgrading is finished locally through the process, the hot upgrading is not needed to be realized through a hot migration mode, the large-version software upgrading can be realized under the condition that the running service of the system is not affected, and the upgrading time is less.
Referring to fig. 2, fig. 2 provides a schematic block diagram of a software upgrade apparatus. As an example, the apparatus may be applied to an electronic device such as a PC, a server, or the like. The device comprises: parsing module 202, saving module 204, switching module 206, and recovery module 208.
Specifically, the parsing module 202 is configured to, when receiving the upgrade command, cause a first process of the software to parse the upgrade command, where the first process is a current process of the software.
The saving module 204 is configured to cause the first process to save the service data to the shared memory according to the upgrade command.
And the switching module 206 is configured to, when the first process completes the saving of the service data, cause the software to perform process switching to control the first process to exit, and start the second process configured with the upgrade flag as a new current process of the software.
And the recovery module 208 is configured to, after the second process is started, cause the second process to obtain the service data of the first process from the shared memory according to the upgrade flag, and complete the software upgrade.
In other modified embodiments, the business data includes static data and dynamic data, the static data being configuration information associated with the first process, the dynamic data being configuration information of interactions of the first process with the external process.
In other modified embodiments, the saving module 204 is specifically configured to cause the first process to serialize the service data according to the upgrade command and save the serialized service data to the shared memory.
In other alternative embodiments, the first process includes a first main thread and at least one business thread. In particular, the parsing module 202 is further specifically configured to, when receiving the upgrade command, cause the first process of the software to parse the upgrade command through the first main thread,
the saving module 204 is specifically further configured to cause the first main thread to send a first notification to at least one first service thread according to the upgrade command, and cause the first service thread to save the service data to the shared memory when receiving the first notification. The first main thread sends a first notification to at least one first service thread through the message queue.
In other modified embodiments, the switching module 206 is specifically further configured to, when all the first service threads complete the saving of the service data, cause the first main thread to perform a process switching to control the first process to exit, and start the second process configured with the upgrade flag as a new current process of the software. The second process comprises a second main thread and at least one second service thread.
In other modified embodiments, the recovery module 208 is specifically further configured to, after the second process is started, cause the second main thread to send a second notification to at least one second service thread according to the upgrade flag, and, when the second service thread receives the second notification, cause the second service thread to obtain service data of the first service thread from the shared memory, where a mapping relationship exists between a memory space pointed by the second service thread in the shared memory and a memory space pointed by the first service thread in the shared memory.
When the software needs to be upgraded, the service data of the software upgrading device can be stored into the shared memory through the current process of the software, then a new process is started through process switching, and the service data is recovered from the shared memory through the new process, so that the software upgrading is completed. According to the software upgrading device, the hot upgrading is finished locally through the process, the hot upgrading is not needed to be realized through a hot migration mode, the large-version software upgrading can be realized under the condition that the running service of the system is not affected, and the upgrading time is less.
It should be noted that, the software upgrading apparatus in this embodiment corresponds to the software upgrading method in the foregoing embodiment, so that a portion of the software upgrading apparatus in this embodiment that is not described in detail may be obtained by referring to the content of the software upgrading method in the foregoing embodiment, and therefore will not be described in detail herein.
Correspondingly, the application also provides a computer readable storage medium. The computer readable storage medium stores a computer program that, when executed by one or more processors, may implement the software upgrade method provided herein. In particular, the computer-readable storage medium may include: any entity or recording medium, a USB flash disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), an electrical carrier signal, a telecommunications signal, a software distribution medium, etc. capable of carrying the computer program instructions.
Correspondingly, the application also provides a chip. The chip comprises: memory and a processor. Wherein the memory is for storing machine executable instructions. The processor is configured to read and execute the machine executable instructions stored in the memory, so as to implement the software upgrading method provided by the application. The memory may be any electronic, magnetic, optical, or other physical storage device that may contain or store information, such as executable instructions, data, or the like. For example, the memory may be: volatile memory, nonvolatile memory, or similar storage medium. In particular, the memory may be RAM (Radom Access Memory, random access memory), flash memory, a storage drive (e.g., hard drive), a solid state disk, any type of storage disk (e.g., optical disk, DVD, etc.), or a similar storage medium, or a combination thereof. Alternatively, the chip may be DPU (Data Processing Unit), GPU (Graphics Processing Unit) or CPU (Central Processing Unit). The DPU is a special processor with data as center, which completes the network, storage and safe acceleration processing task.
Correspondingly, the application also provides electronic equipment. The electronic device may include a chip provided herein. Alternatively, the electronic device may be a server or a cluster of servers of a data center.
The foregoing description of the preferred embodiments of the present invention is not intended to limit the invention to the precise form disclosed, and any modifications, equivalents, improvements and alternatives falling within the spirit and principles of the present invention are intended to be included within the scope of the present invention.

Claims (17)

1. A method of software upgrade, the method comprising:
when an upgrade command is received, a first process of the software analyzes the upgrade command, wherein the first process is a current process of the software;
the first process stores the business data to the shared memory according to the upgrade command;
when the first process finishes storing the service data, the software executes process switching to control the first process to exit, and starts a second process configured with an upgrading mark as a new current process of the software;
and after the second process is started, acquiring the service data of the first process from the shared memory according to the upgrading mark, and finishing software upgrading.
2. The method of claim 1, wherein the first process comprises a first main thread and at least one business thread,
when an upgrade command is received, a first process of the software parses the upgrade command through a first main thread, and,
the step of storing the service data to the shared memory by the first process according to the upgrade command specifically comprises the following steps:
the first main thread sends a first notification to at least one first service thread according to the upgrade command;
and when the first notification is received, the first business thread stores the business data into the shared memory.
3. The method of claim 2, wherein the first main thread sends the first notification to the at least one first service thread via a message queue.
4. The method of claim 2, wherein the step of software executing a process switch to control the first process to exit when the first process completes the saving of the service data comprises:
and when all the first service threads finish the storage of the service data, executing process switching by the first main thread.
5. The method of claim 1 or 4, wherein the second process comprises a second main thread and at least one second service thread,
after the second process is started, the step of acquiring the service data of the first process from the shared memory according to the upgrade mark specifically comprises the following steps:
after the second process is started, the second main thread sends a second notification to at least one second service thread according to the upgrade mark,
and when receiving the second notification, the second service thread acquires the service data of the first service thread from the shared memory, wherein the second service thread has a mapping relationship between the memory space pointed by the shared memory and the memory space pointed by the first service thread.
6. The method of claim 1, wherein the business data comprises static data and dynamic data, the static data comprising configuration information associated with the first process, the dynamic data comprising configuration information for interaction of the first process with an external process.
7. The method of claim 1 wherein the service data is serialized and stored to the shared memory.
8. A software upgrade apparatus, the apparatus comprising:
the analysis module is used for prompting a first process of the software to analyze the upgrade command when the upgrade command is received, wherein the first process is the current process of the software;
the storage module is used for promoting the first process to store the business data to the shared memory according to the upgrade command;
the switching module is used for prompting the software to execute process switching when the first process finishes storing the service data so as to control the first process to exit, and starting a second process configured with an upgrading mark as a new current process of the software;
and the recovery module is used for promoting the second process to acquire the service data of the first process from the shared memory according to the upgrading mark after the second process is started, so as to complete software upgrading.
9. The apparatus of claim 8, wherein the first process comprises a first main thread and at least one business thread,
the analysis module is specifically used for prompting the first process of the software to analyze the upgrade command through the first main thread when the upgrade command is received,
the storage module is specifically further configured to cause the first main thread to send a first notification to at least one first service thread according to the upgrade command, and cause the first service thread to store the service data to the shared memory when receiving the first notification.
10. The apparatus of claim 9, wherein the first main thread sends the first notification to the at least one first service thread via a message queue.
11. The apparatus according to claim 9, wherein the switching module is further configured to cause the first main thread to perform a process switching when all the first service threads complete the saving of the service data.
12. The apparatus of claim 8 or 11, wherein the second process comprises a second main thread and at least one second service thread,
the recovery module is specifically configured to, after the second process is started, cause the second main thread to send a second notification to at least one second service thread according to the upgrade flag, and when the second service thread receives the second notification, cause the second service thread to obtain service data of the first service thread from the shared memory, where a mapping relationship exists between a memory space pointed by the second service thread in the shared memory and a memory space pointed by the first service thread in the shared memory.
13. The apparatus of claim 8, wherein the business data comprises static data and dynamic data, the static data being configuration information associated with the first process, the dynamic data being configuration information of interactions of the first process with the external process.
14. The apparatus of claim 8 wherein the service data is serialized and stored to the shared memory.
15. A computer readable storage medium, characterized in that the computer readable storage medium stores a computer program which, when executed by one or more processors, implements the software upgrade method according to any one of claims 1-7.
16. A chip, the chip comprising: a memory and a processor;
wherein the memory is configured to store machine-executable instructions;
the processor is configured to read and execute the machine executable instructions stored in the memory, so as to implement the method according to any one of claims 1 to 7.
17. An electronic device comprising the chip of claim 16.
CN202310346980.XA 2023-04-04 2023-04-04 Software upgrading method and device, storage medium, chip and electronic equipment Pending CN116166299A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310346980.XA CN116166299A (en) 2023-04-04 2023-04-04 Software upgrading method and device, storage medium, chip and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310346980.XA CN116166299A (en) 2023-04-04 2023-04-04 Software upgrading method and device, storage medium, chip and electronic equipment

Publications (1)

Publication Number Publication Date
CN116166299A true CN116166299A (en) 2023-05-26

Family

ID=86413401

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310346980.XA Pending CN116166299A (en) 2023-04-04 2023-04-04 Software upgrading method and device, storage medium, chip and electronic equipment

Country Status (1)

Country Link
CN (1) CN116166299A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252407A1 (en) * 2010-04-09 2011-10-13 AppFirst, Inc. System and method for information extraction from within an active application during execution
CN109840168A (en) * 2019-02-14 2019-06-04 北京字节跳动网络技术有限公司 Software rejuvenation method, apparatus, terminal and medium
CN111045708A (en) * 2019-12-20 2020-04-21 新华三大数据技术有限公司 Software upgrading method, electronic device and computer readable storage medium
CN112596771A (en) * 2020-12-01 2021-04-02 北京明朝万达科技股份有限公司 Method and system for uninterrupted service upgrade
CN115129515A (en) * 2022-06-30 2022-09-30 苏州浪潮智能科技有限公司 System data storage method, device, equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252407A1 (en) * 2010-04-09 2011-10-13 AppFirst, Inc. System and method for information extraction from within an active application during execution
CN109840168A (en) * 2019-02-14 2019-06-04 北京字节跳动网络技术有限公司 Software rejuvenation method, apparatus, terminal and medium
CN111045708A (en) * 2019-12-20 2020-04-21 新华三大数据技术有限公司 Software upgrading method, electronic device and computer readable storage medium
CN112596771A (en) * 2020-12-01 2021-04-02 北京明朝万达科技股份有限公司 Method and system for uninterrupted service upgrade
CN115129515A (en) * 2022-06-30 2022-09-30 苏州浪潮智能科技有限公司 System data storage method, device, equipment and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郭奕等: "《C#程序设计与实例分析》", 西安电子科技大学出版社, pages: 208 - 210 *

Similar Documents

Publication Publication Date Title
US9558016B2 (en) Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product
EP3005160B1 (en) Bundle package retrieving
EP3005100B1 (en) Bundle package generation
CN109358882B (en) Method and device for upgrading firmware of television terminal
CN109634718B (en) Method and system for creating mirror image by cloud platform
CN110825399B (en) Deployment method and device of application program
CN112506745B (en) Memory temperature reading method and device and computer readable storage medium
CN103677870A (en) System upgrading method and system upgraded by means of method
WO2014146524A1 (en) Method and configuration center server for configuring server cluster
CN107077379A (en) A kind of virtual machine creation method and device
CN111338698A (en) Method and system for accurately booting server by BIOS (basic input output System)
CN112231230A (en) Test case management method and device, electronic equipment and storage medium
US10318343B2 (en) Migration methods and apparatuses for migrating virtual machine including locally stored and shared data
CN106886477B (en) Method and device for setting monitoring threshold in cloud system
CN106708569B (en) Hot loading method and device for VOBC configuration file in over-the-line train
CN116185571B (en) Data migration method, device, storage medium and apparatus
CN116166299A (en) Software upgrading method and device, storage medium, chip and electronic equipment
CN112214413A (en) Application program testing method, device, equipment and storage medium
CN111753309A (en) Display card switching method, server and storage medium
CN107688479B (en) Android system network cluster, construction method thereof, and Android system network cluster data processing method and system
US11068371B2 (en) Method and apparatus for simulating slow storage disk
CN112416536B (en) Method for extracting processor execution context and processor
CN101751283A (en) Virtual machine monitor, virtual machine system and client operation system state acquiring method
CN111694587A (en) Server PNOR firmware upgrading method, device, equipment and storage medium
CN114327574A (en) Differential upgrading method, electronic device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination