CN111367560A - Method, system, equipment and medium for expanding server function - Google Patents
Method, system, equipment and medium for expanding server function Download PDFInfo
- Publication number
- CN111367560A CN111367560A CN202010175323.XA CN202010175323A CN111367560A CN 111367560 A CN111367560 A CN 111367560A CN 202010175323 A CN202010175323 A CN 202010175323A CN 111367560 A CN111367560 A CN 111367560A
- Authority
- CN
- China
- Prior art keywords
- patch
- function
- server
- patch file
- basic functions
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000006870 function Effects 0.000 claims abstract description 175
- 230000004044 response Effects 0.000 claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012217 deletion Methods 0.000 claims description 8
- 230000037430 deletion Effects 0.000 claims description 8
- 238000000354 decomposition reaction Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Library & Information Science (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a method, a system, equipment and a storage medium for expanding server functions, wherein the method comprises the following steps: in response to receiving a demand to extend a server function, decomposing the demand into a plurality of basic functions; matching a plurality of basic functions in a function library of the server, and determining the basic functions which are not successfully matched; respectively creating patch files according to the basic functions which are not successfully matched, and storing the patch files in a patch area; and redirecting the calling function to establish the association between the calling function and the corresponding patch file in the patch area, and running the corresponding patch file through the calling function. The method, the system, the equipment and the medium for expanding the server function, which are provided by the invention, can greatly reduce the workload of function expansion by decomposing the requirement into the basic functions, matching the corresponding basic functions in the function library and establishing the corresponding patch files for the basic functions which are not in the function library.
Description
Technical Field
The present invention relates to the field of servers, and more particularly, to a method, a system, a computer device, and a readable medium for extending server functions.
Background
With the expansion of the market, the server is applied to various fields, and the BMC as a core monitoring function in the server is also increased to a high requirement. The BMC has more and more demands, and besides some general functions, some fields also provide fixed point demands for their own services, and for these demands, the BMC currently processes the following schemes: 1) if the requirement is not in conflict with the current universal architecture, the requirement is compatible to the universal code, the universal code is developed on the universal basis, and a universal version is shared subsequently; 2) if the requirement conflicts with the current general architecture or conflicts with other customized projects, a branch needs to be pulled out based on the current general architecture, the function development is carried out on the branch, and then the branch can be used as the only path of the release version.
In the above-mentioned current demand receiving problem, for the customized demand, if a branch is pulled again to be developed each time, the number of subsequent branches may be increased, and with the continuous evolution of the universal main line, the difference of these branch platforms at the later stage may be increased, thereby increasing the maintenance cost and affecting the construction of the whole platform.
Disclosure of Invention
In view of this, embodiments of the present invention provide a method, a system, a computer device, and a computer readable storage medium for extending a server function, which decompose a requirement into basic functions, match corresponding basic functions in a function library, and create corresponding patch files for the basic functions that are not in the function library, so as to greatly reduce the workload of function extension, reduce a development period, and reduce a later maintenance cost.
Based on the above object, an aspect of the embodiments of the present invention provides a method for extending a server function, including the following steps: in response to receiving a demand to extend a server function, decomposing the demand into a plurality of basic functions; matching the plurality of basic functions in a function library of the server, and determining the basic functions which are not successfully matched; respectively creating patch files according to the basic functions which are not successfully matched, and storing the patch files in a patch area; and redirecting the calling function to establish the association between the calling function and the corresponding patch file in the patch area, and running the corresponding patch file through the calling function.
In some embodiments, further comprising: and responding to the successful execution of the patch file, and writing the patch file into a function library of the server.
In some embodiments, further comprising: and setting a deletion identifier for the patch file in the patch area in response to the patch file being written into the function library of the server, and deleting the patch file with the deletion identifier in response to the BMC restart.
In some embodiments, said redirecting said patch area to establish an association of said patch file with a calling function comprises: and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
In another aspect of the embodiments of the present invention, a system for extending a server function is further provided, including: a decomposition module configured to, in response to receiving a demand to extend a server function, decompose the demand into a plurality of basic functions; the matching module is configured to match the plurality of basic functions in the function library of the server and determine the basic functions which are not successfully matched; the creating module is configured to create patch files respectively according to the basic functions which are not successfully matched and store the patch files in a patch area; and the execution module is configured to redirect a calling function to establish the association between the calling function and the corresponding patch file in the patch area, and run the corresponding patch file through the calling function.
In some embodiments, further comprising: and the writing module is configured to respond to the successful execution of the patch file and write the patch file into the function library of the server.
In some embodiments, further comprising: and the deleting module is configured to respond to the patch file written into the functional library of the server, set a deleting identifier for the patch file in the patch area, and respond to the BMC to restart and delete the patch file with the deleting identifier.
In some embodiments, the execution module is further configured to: and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
In another aspect of the embodiments of the present invention, there is also provided a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of the method as above.
In a further aspect of the embodiments of the present invention, a computer-readable storage medium is also provided, in which a computer program for implementing the above method steps is stored when the computer program is executed by a processor.
The invention has the following beneficial technical effects: by decomposing the requirements into basic functions, matching the corresponding basic functions in the function library, and creating corresponding patch files for the basic functions which are not in the function library, the workload of function expansion can be greatly reduced, the development period can be shortened, and the later maintenance cost can be reduced.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other embodiments can be obtained by using the drawings without creative efforts.
FIG. 1 is a diagram illustrating an embodiment of a method for extending server functionality provided by the present invention;
fig. 2 is a schematic hardware structure diagram of an embodiment of the computer device for extending a server function provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention are described in further detail with reference to the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present invention are used for distinguishing two entities with the same name but different names or different parameters, and it should be noted that "first" and "second" are merely for convenience of description and should not be construed as limitations of the embodiments of the present invention, and they are not described in any more detail in the following embodiments.
In view of the above object, a first aspect of the embodiments of the present invention provides an embodiment of a method for extending a server function. Fig. 1 is a schematic diagram illustrating an embodiment of a method for extending a server function provided by the present invention. As shown in fig. 1, the embodiment of the present invention includes the following steps:
s1, responding to the received requirement of the expansion server function, decomposing the requirement into a plurality of basic functions;
s2, matching a plurality of basic functions in the function library of the server, and determining the basic functions which are not successfully matched;
s3, respectively creating patch files according to the basic functions which are not successfully matched, and storing the patch files in a patch area; and
and S4, redirecting the calling function to establish the association between the calling function and the corresponding patch file in the patch area, and running the corresponding patch file through the calling function.
When a client proposes a requirement, the requirement is found to be incompatible on the current universal version after evaluation, and if import may conflict with the existing functions of the project, the version release of the project is affected. Therefore, a module loading mode is adopted, and firstly, requirements are decomposed to form specific function points. And then developing module patch codes based on the function points, generating a corresponding so file, and packaging the so file through a module patch tool to generate a patch. And then uploading the command to a BMC system through a specified command, and executing the function of loading, activating and running the action guide module to take effect. Mod when the version is provided to the client later, a general version and the module patch file patch are required to be provided. The client can select whether to load the module function according to the own needs, so that the flexible control is facilitated. In the later period, if the client has a new function requirement, the client can load the corresponding module patch only by providing the corresponding module patch, so that the aim of rapid deployment is fulfilled.
In some embodiments, a function library may be added to the system for storing a plurality of commonly used basic functions, and after a customer's request is received, the corresponding basic function may be searched in the function library, and if the basic function can be matched, the corresponding basic function may be directly called, and if the basic function cannot be matched, the corresponding basic function may be added.
And respectively creating patch files according to the basic functions which are not successfully matched, and storing the patch files in the patch area. Mod is a patch file generated by encapsulating executable files of a set of function sets with relevant header description information by a module patching tool, which is a file that is ultimately used to load and run on a device. The patch area is a space which is divided from the BMC space and is specially used for storing the patch file, and the starting address and the ending address of the space can be specified in the BMC file and are used for running the patch file.
And redirecting the calling function to establish the association between the calling function and the corresponding patch file in the patch area, and running the corresponding patch file through the calling function. The first instruction of the hook module _ init () function initialized by the platform module can be modified into a jump instruction through a patch mod active command, so that the initialization entry address of the corresponding patch file of the patch area can be jumped to. The BMC may be enabled to re-invoke the module _ init () function via a patch module run command to validate the module function and also to identify that the current module is running.
In some embodiments, said redirecting said patch area to establish an association of said patch file with a calling function comprises: and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
In some embodiments, further comprising: and responding to the successful execution of the patch file, and writing the patch file into a function library of the server. After the patch file is successfully executed, the patch file can be added into a function library, so that the newly added function can be reserved.
In some embodiments, further comprising: and setting a deletion identifier for the patch file in the patch area in response to the patch file being written into the function library of the server, and deleting the patch file with the deletion identifier in response to the BMC restart.
The following description will be given by taking the function of the newly added PCIE card as an example:
and in response to the receiving of the function of the newly added PCIE card, the function is decomposed into a function of collecting temperature information by the BMC and a function of collecting current information by the BMC. The two functions are matched with the basic functions in the function library, the function of collecting the current information by the BMC is added into the function library, but the temperature information collected by the BMC does not exist, and a patch file of collecting the temperature information by the BMC can be created, for example:
compiling a module patch function file through a module patch tool, and then generating a patch file patch.mod through a packaging script; the patch.mod file is uploaded to the/tmp/directory of the BMC; executing module patch loading patch modload, wherein the loading process is a file writing process and takes dotting as waiting time; activating a patch through a patch mod active command; patch is run via patch mod run command; whether the pcie temperature can be normally acquired can be checked through a command so as to verify whether the module patch is effective.
It should be particularly noted that, the steps in the embodiments of the method for extending the server function may be mutually intersected, replaced, added, or deleted, and therefore, these methods for extending the server function that are reasonably arranged, combined and transformed shall also belong to the scope of the present invention, and shall not limit the scope of the present invention to the embodiments.
In view of the above object, a second aspect of the embodiments of the present invention provides a system for extending a server function, including: a decomposition module configured to, in response to receiving a demand to extend a server function, decompose the demand into a plurality of basic functions; the matching module is configured to match the plurality of basic functions in the function library of the server and determine the basic functions which are not successfully matched; the creating module is configured to create patch files respectively according to the basic functions which are not successfully matched and store the patch files in a patch area; and the execution module is configured to redirect a calling function to establish the association between the calling function and the corresponding patch file in the patch area, and run the corresponding patch file through the calling function.
In some embodiments, further comprising: and the writing module is configured to respond to the successful execution of the patch file and write the patch file into the function library of the server.
In some embodiments, further comprising: and the deleting module is configured to respond to the patch file written into the functional library of the server, set a deleting identifier for the patch file in the patch area, and respond to the BMC to restart and delete the patch file with the deleting identifier.
In some embodiments, the execution module is further configured to: and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
In view of the above object, a third aspect of the embodiments of the present invention provides a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions being executable by the processor to perform the steps of: s1, responding to the received requirement of the expansion server function, decomposing the requirement into a plurality of basic functions; s2, matching a plurality of basic functions in the function library of the server, and determining the basic functions which are not successfully matched; s3, respectively creating patch files according to the basic functions which are not successfully matched, and storing the patch files in a patch area; and S4, redirecting the calling function to establish the association between the calling function and the corresponding patch file in the patch area, and running the corresponding patch file through the calling function.
In some embodiments, further comprising: and responding to the successful execution of the patch file, and writing the patch file into a function library of the server.
In some embodiments, further comprising: and setting a deletion identifier for the patch file in the patch area in response to the patch file being written into the function library of the server, and deleting the patch file with the deletion identifier in response to the BMC restart.
In some embodiments, said redirecting said patch area to establish an association of said patch file with a calling function comprises: and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
Fig. 2 is a schematic hardware structure diagram of an embodiment of the computer device for extending the server function according to the present invention.
Taking the apparatus shown in fig. 2 as an example, the apparatus includes a processor 301 and a memory 302, and may further include: an input device 303 and an output device 304.
The processor 301, the memory 302, the input device 303 and the output device 304 may be connected by a bus or other means, and fig. 2 illustrates the connection by a bus as an example.
The memory 302 is a non-volatile computer-readable storage medium, and can be used for storing non-volatile software programs, non-volatile computer-executable programs, and modules, such as program instructions/modules corresponding to the method for extending the server function in the embodiment of the present application. The processor 301 executes various functional applications of the server and data processing by running the nonvolatile software programs, instructions and modules stored in the memory 302, that is, implements the method of extending the server function of the above-described method embodiment.
The memory 302 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the method of extending the server function, and the like. Further, the memory 302 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, memory 302 optionally includes memory located remotely from processor 301, which may be connected to a local module via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 303 may receive information such as a user name and a password that are input. The output means 304 may comprise a display device such as a display screen.
Program instructions/modules corresponding to one or more methods of extending server functionality are stored in the memory 302 and, when executed by the processor 301, perform the method of extending server functionality in any of the method embodiments described above.
Any embodiment of the computer device executing the method for expanding the server function can achieve the same or similar effects as any corresponding method embodiment.
The invention also provides a computer readable storage medium storing a computer program which, when executed by a processor, performs the method as above.
Finally, it should be noted that, as one of ordinary skill in the art can appreciate that all or part of the processes in the methods of the above embodiments can be implemented by a computer program to instruct related hardware, and the program of the method for extending the server function can be stored in a computer readable storage medium, and when executed, the program can include the processes of the embodiments of the methods as described above. The storage medium of the program may be a magnetic disk, an optical disk, a Read Only Memory (ROM), a Random Access Memory (RAM), or the like. The embodiments of the computer program may achieve the same or similar effects as any of the above-described method embodiments.
Furthermore, the methods disclosed according to embodiments of the present invention may also be implemented as a computer program executed by a processor, which may be stored in a computer-readable storage medium. Which when executed by a processor performs the above-described functions defined in the methods disclosed in embodiments of the invention.
Further, the above method steps and system elements may also be implemented using a controller and a computer readable storage medium for storing a computer program for causing the controller to implement the functions of the above steps or elements.
Further, it should be appreciated that the computer-readable storage media (e.g., memory) herein can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of example, and not limitation, nonvolatile memory can include Read Only Memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM), which can act as external cache memory. By way of example and not limitation, RAM is available in a variety of forms such as synchronous RAM (DRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The storage devices of the disclosed aspects are intended to comprise, without being limited to, these and other suitable types of memory.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as software or hardware depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the disclosed embodiments of the present invention.
The various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein may be implemented or performed with the following components designed to perform the functions herein: a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination of these components. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP, and/or any other such configuration.
The steps of a method or algorithm described in connection with the disclosure herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary designs, the functions may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes Compact Disc (CD), laser disc, optical disc, Digital Versatile Disc (DVD), floppy disk, blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the present disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the disclosed embodiments of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.
The numbers of the embodiments disclosed in the embodiments of the present invention are merely for description, and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, of embodiments of the invention is limited to these examples; within the idea of an embodiment of the invention, also technical features in the above embodiment or in different embodiments may be combined and there are many other variations of the different aspects of the embodiments of the invention as described above, which are not provided in detail for the sake of brevity. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of the embodiments of the present invention are intended to be included within the scope of the embodiments of the present invention.
Claims (10)
1. A method of extending server functionality, comprising the steps of:
in response to receiving a demand to extend a server function, decomposing the demand into a plurality of basic functions;
matching the plurality of basic functions in a function library of the server, and determining the basic functions which are not successfully matched;
respectively creating patch files according to the basic functions which are not successfully matched, and storing the patch files in a patch area; and
and redirecting the calling function to establish the association between the calling function and the corresponding patch file in the patch area, and running the corresponding patch file through the calling function.
2. The method of claim 1, further comprising:
and responding to the successful execution of the patch file, and writing the patch file into a function library of the server.
3. The method of claim 2, further comprising:
and setting a deletion identifier for the patch file in the patch area in response to the patch file being written into the function library of the server, and deleting the patch file with the deletion identifier in response to the BMC restart.
4. The method of claim 1, wherein redirecting the patch area to establish an association of the patch file with a calling function comprises:
and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
5. A system for extending server functionality, comprising:
a decomposition module configured to, in response to receiving a demand to extend a server function, decompose the demand into a plurality of basic functions;
the matching module is configured to match the plurality of basic functions in the function library of the server and determine the basic functions which are not successfully matched;
the creating module is configured to create patch files respectively according to the basic functions which are not successfully matched and store the patch files in a patch area;
and the execution module is configured to redirect a calling function to establish the association between the calling function and a corresponding patch file in the patch area, and run the corresponding patch file through the calling function.
6. The system of claim 5, further comprising:
and the writing module is configured to respond to the successful execution of the patch file and write the patch file into the function library of the server.
7. The system of claim 6, further comprising:
and the deleting module is configured to respond to the patch file written into the functional library of the server, set a deleting identifier for the patch file in the patch area, and respond to the BMC to restart and delete the patch file with the deleting identifier.
8. The system of claim 5, wherein the execution module is further configured to:
and acquiring the address of the patch file, and updating the jump address of the calling function into the acquired address.
9. A computer device, comprising:
at least one processor; and
a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of the method of any one of claims 1 to 4.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010175323.XA CN111367560A (en) | 2020-03-13 | 2020-03-13 | Method, system, equipment and medium for expanding server function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010175323.XA CN111367560A (en) | 2020-03-13 | 2020-03-13 | Method, system, equipment and medium for expanding server function |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111367560A true CN111367560A (en) | 2020-07-03 |
Family
ID=71207313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010175323.XA Withdrawn CN111367560A (en) | 2020-03-13 | 2020-03-13 | Method, system, equipment and medium for expanding server function |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111367560A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667246A (en) * | 2021-01-08 | 2021-04-16 | 深圳前海微众银行股份有限公司 | Application function extension method and device and electronic equipment |
CN114546358A (en) * | 2022-02-28 | 2022-05-27 | 重庆允丰科技有限公司 | Method for configuring production process management product based on low-code platform and storage medium |
WO2024065445A1 (en) * | 2022-09-29 | 2024-04-04 | 西门子(中国)有限公司 | Method and apparatus for extending function block capability, electronic device, and storage medium |
-
2020
- 2020-03-13 CN CN202010175323.XA patent/CN111367560A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667246A (en) * | 2021-01-08 | 2021-04-16 | 深圳前海微众银行股份有限公司 | Application function extension method and device and electronic equipment |
CN112667246B (en) * | 2021-01-08 | 2024-03-01 | 深圳前海微众银行股份有限公司 | Application function expansion method and device and electronic equipment |
CN114546358A (en) * | 2022-02-28 | 2022-05-27 | 重庆允丰科技有限公司 | Method for configuring production process management product based on low-code platform and storage medium |
CN114546358B (en) * | 2022-02-28 | 2023-09-19 | 重庆允丰科技有限公司 | Method for managing products based on low-code platform configuration production process and storage medium |
WO2024065445A1 (en) * | 2022-09-29 | 2024-04-04 | 西门子(中国)有限公司 | Method and apparatus for extending function block capability, electronic device, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111367560A (en) | Method, system, equipment and medium for expanding server function | |
CN111177043B (en) | Method, system, device and medium for accelerating reading of field replaceable unit information | |
CN110427342B (en) | Method, equipment and readable medium for creating mirror library | |
US11375002B2 (en) | Application version switching method and apparatus, electronic device and storage medium | |
CN110968477B (en) | Method, device and medium for acquiring backup BMC version information | |
CN109492181A (en) | Method for page jump, device, computer equipment and storage medium | |
CN111221581A (en) | Network card starting method, equipment and storage medium | |
CN112463303A (en) | JAVA virtual machine class loading method and system | |
CN112087370A (en) | Method, system, electronic device and computer-readable storage medium for issuing GitHub Issues | |
CN110457132B (en) | Method and device for creating functional object and terminal equipment | |
CN111144837A (en) | Flow arrangement method and device, storage medium and electronic equipment | |
CN111309264B (en) | Method, system, device and medium for making directory quota compatible with snapshot | |
CN110968339B (en) | Method and device for front-end building tool and electronic equipment | |
CN111813507A (en) | Method, system, equipment and medium for high availability of virtual machine based on sanlock | |
CN110427199B (en) | Method, equipment and readable medium for upgrading BMC and BIOS in matching manner | |
CN110502296B (en) | Method, equipment and storage medium for displaying firmware upgrading command | |
CN111355716B (en) | Method, system, equipment and medium for determining unique identifier of virtual machine | |
CN110673992B (en) | Multi-mirror image fusion self-starting method and system | |
CN111857744A (en) | Installation method, system, equipment and medium of super-fusion system | |
CN111008037A (en) | Code migration method, equipment and storage medium | |
CN110633146A (en) | Method, equipment and readable medium for multithread operation of IPMI command | |
CN111158591A (en) | Method, equipment and medium for adapting storage system to streaming media service | |
CN111090432A (en) | Interface processing method and device and electronic equipment | |
CN109783756B (en) | Website creation method, server and computer readable storage medium | |
CN113347051B (en) | Upgrading method, device, equipment, system 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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200703 |