Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

A method and system for dynamically upgrading software based on intermediate auxiliary functions

An auxiliary function and dynamic upgrade technology, applied in software deployment, software engineering design, electrical digital data processing, etc., can solve the problem that multi-threaded programs cannot reach the security update point at the same time, cannot be dynamically updated by multi-threaded programs, cannot be dynamically updated by programs, etc. problems, to achieve the effect of avoiding insecure updates, inability to update, and inconsistencies

Active Publication Date: 2019-03-05
HUAZHONG UNIV OF SCI & TECH
View PDF4 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0007] Some dynamic software upgrade methods (polus) can only update functions that are not in the function call stack, and cannot update functions that are being executed in real time. If some functions that cannot return in a short time, such as the main loop function and scheduling function, will not be able to update to the next version
Some dynamic upgrade methods (upstare) require specific compiler support, so programs compiled with general compilers cannot be dynamically updated
Some dynamic software upgrade methods (Kitsune) take the process as the update unit. During the update process, all the code data of the new version needs to be stored, resulting in high overhead, but the actual update often only has a few changes.
The security update point of some dynamic update methods can only be applied to single-threaded programs, and multi-threaded programs cannot reach the security update point at the same time, so dynamic updates cannot be performed on multi-threaded programs

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • A method and system for dynamically upgrading software based on intermediate auxiliary functions
  • A method and system for dynamically upgrading software based on intermediate auxiliary functions
  • A method and system for dynamically upgrading software based on intermediate auxiliary functions

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0063] In order to make the object, technical solution and advantages of the present invention more clear, the present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, not to limit the present invention.

[0064] The overall idea of ​​the present invention is that the developer generates a primary dynamic upgrade patch containing new functions and intermediate auxiliary functions according to the source code of the new and old versions, and using the intermediate auxiliary functions to solve the traditional multi-thread dynamic update needs to modify the source code of the old version or use a specific compiler to The problem of transforming the source code of the old version. Then load the dynamic upgrade patch during the update, suspend all threads, and update the function to be updated that is ...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

The invention discloses an intermediate auxiliary function-based method for dynamically updating software. The method comprises the following steps: generating an intermediate auxiliary function by analyzing to-be-updated functions in integrated new / old version of code source files; respectively updating to-be-updated functions located at a function call stack, to-be-updated functions not located at the function call stack and to-be-updated static variables by utilizing the intermediate auxiliary function and a binary rewriting mechanism. Correspondingly, the invention also discloses a corresponding system. According to the method and the system disclosed by the invention, system loss and deadlock problems brought by inserting a plurality of check points are effectively solved; while updating security is ensured, real-time dynamic updating can be performed on a program, and operation complexity of a user and system overheads are obviously reduced; meanwhile, rollback can be finished when any exception occurs during updating to ensure reliability of an updating process. The method and the system disclosed by the invention are suitable for application services which need high-reliability continuous demands, and are capable of reducing loss caused by system restart due to version updating.

Description

technical field [0001] The invention belongs to the security field in cloud software reliability research, and more specifically relates to a method and system for dynamically upgrading software based on intermediate auxiliary functions. Background technique [0002] The software needs to be continuously upgraded and updated to fix bugs and add functions during the use process. However, traditional software updates need to close the software first, and then restart the software after the update is completed. In this way, on the one hand, the software service will be down for a period of time, and on the other hand, the software service will lose the state before the update. For software services that require 7 / 24 hours, this undoubtedly reduces the availability of services. But if the update is not adopted, it will undoubtedly reduce the security of the software and the reliability of the service. To solve this problem, the software dynamic upgrade method can complete the ...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Patents(China)
IPC IPC(8): G06F8/65G06F21/56
CPCG06F8/656G06F21/56
Inventor 邹德清代炜琦陈志坤金海
Owner HUAZHONG UNIV OF SCI & TECH
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products