CN104239082A - Hot patching implementation method of embedded system - Google Patents

Hot patching implementation method of embedded system Download PDF

Info

Publication number
CN104239082A
CN104239082A CN201310248056.4A CN201310248056A CN104239082A CN 104239082 A CN104239082 A CN 104239082A CN 201310248056 A CN201310248056 A CN 201310248056A CN 104239082 A CN104239082 A CN 104239082A
Authority
CN
China
Prior art keywords
file
patch
function
symbol
symbol table
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.)
Granted
Application number
CN201310248056.4A
Other languages
Chinese (zh)
Other versions
CN104239082B (en
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.)
SHANGHAI BAUD DATA COMMUNICATION CO Ltd
Original Assignee
SHANGHAI BAUD DATA COMMUNICATION 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 SHANGHAI BAUD DATA COMMUNICATION CO Ltd filed Critical SHANGHAI BAUD DATA COMMUNICATION CO Ltd
Priority to CN201310248056.4A priority Critical patent/CN104239082B/en
Publication of CN104239082A publication Critical patent/CN104239082A/en
Application granted granted Critical
Publication of CN104239082B publication Critical patent/CN104239082B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a hot patching implementation method of an embedded system. The method includes: finding the old function in an existing system, changing the first instruction of the function into a skip instruction with the skip address pointing to a new function so as to allow the new function to replace the old function. By the method, system software function updating and defect fixing can be completed while a software system cannot be replaced and equipment restarting is unavailable.

Description

The hot patch implementation method of embedded system
Technical field
The present invention relates to embedded system technology, be specifically related to the patching technology of embedded system.
Background technology
Modern network requires more and more higher for the stability of embedded device, fault-tolerance, requires that equipment still can run by maintenance when system has a little mistake, keeps correctness and the continuity of other functions.
Traditional embedded software upgrades, and needs to replace whole system image file, even if this directly results in system only need reparation local defect, also must restart software upgrading by system complete machine.But for the use occasion of embedded device, general needs is avoided changing software version by the mode of restarting equipment, and hot patch technology can be good at making up this problem.
Hot patch provides a kind of when not interrupting built-in equipment operation, realizes the technology of the local amendment of system software fast, at low cost, thus reaches the object of repairing software defect and upgrading systemic-function.
As can be seen here, how to utilize hot patch technology to carry out local amendment to system software in embedded systems, time this area need the problem of solution badly.
Summary of the invention
Need the problem that replacement whole system image file and system complete machine have been restarted when the present invention is directed to existing embedded software function renewal and defect repair, and a kind of hot patch technology for embedded system is provided.It can realize when not changing software systems, restarting equipment, the function renewal of completion system software and defect repair.
In order to achieve the above object, the present invention adopts following technical scheme:
The hot patch implementation method of embedded system, first described method, finds old function in existing system, changes the Article 1 instruction of this function into jump instruction, and new function is pointed in the address of redirect, thus the function realizing new function replaces original old function.
In preferred embodiment of the present invention, the concrete steps of described method are as follows:
(1) compiling realizes the new function of New function or repair-deficiency, and the file layout that compiling generates saves code segment, data segment and BSS section, the file that this compiling generates as module file, this file and can be read by system and copy in internal memory and perform;
(2) Symbol division used in file compiling generated is in independent file, generate the symbol table that a character style is preserved, the symbol newly added in the symbol existed in original system and this patch is there is in this symbol table, and by searching the complete symbols table used in original system, the value that the symbol existed by original system in this symbol table is corresponding is filled complete; Again by the complete symbols table extracted and the table of newly putting in marks that extracts with character string forms, the module file generated in same step (1) is packaged as a patch file;
(3) goal systems is added the complete symbols table extracted in step (2) and is carried out dynamic load to module file in step (1);
(4) import after symbol table, system, by dynamic load patch file, is separated the module file in patch file, and its code segment, data segment and BSS section is copied in corresponding memory headroom successively; The function defined in patch file is added in the symbol table of system self simultaneously;
(5) after having loaded patch, search the new function for upgrading in patch file, then inquiry system symbol table, determine the position of function in system code section needing to be updated, and making bytes some before this function into jump instruction, jump address is the address of new function place code segment.
Further, the file layout that in described step (1), compiling generates is ELF form.
Further, in described step (3) before dynamic load, by dynamically having added the interpolation of symbol table.
Further, reserved when generation system software for copy the memory headroom of code segment in patch file, data segment and BSS section be embedded system in described step (4).
Further, when described step (4) loads patch file, consistency check is done by the version number corresponding to patch file and the version number of system software.
Effectively can being realized when not changing software systems, restarting equipment by such scheme, the function renewal of completion system software and defect repair, greatly reducing the cost that embedded system upgrades or repairs.
Meanwhile, it is simple and reliable when this programme is implemented.Without the need to recompilating whole system software, avoid the version instability because compile error causes.
Correctness and the continuity of other function of system can be ensured.When replacement system power function, the normal execution of other functions can not be affected, can not the normal consistency of influential system.
Decrease the generating period of system software during embedded system interpolation New function.Need to dispatch from the factory to all functions of this software to test the stable of guarantee version owing to regenerating whole system software, and this patch mode does not all change due to other system function, decreases the risk of system software instability.
Practicality is wide, and the program is applicable to the embedded system that great majority support symbol table and dynamic load.
Accompanying drawing explanation
The present invention is further illustrated below in conjunction with the drawings and specific embodiments.
Fig. 1 is patch file form intention in this example;
Fig. 2 antiderivatively calls schematic diagram;
Fig. 3 be function after patch installing call schematic diagram.
Embodiment
The technological means realized to make the present invention, creation characteristic, reaching object and effect is easy to understand, below in conjunction with concrete diagram, setting forth the present invention further.
Hot patch scheme provided by the invention is in existing system, find old function, changes the Article 1 instruction of this function into jump instruction, and new function is pointed in the address of redirect, thus the function realizing new function replaces original old function.
Based on above-mentioned principle, concrete scheme of the present invention comprises the steps:
When the program is implemented, when each system software generates, the symbol table file (as .map file) of corresponding software version being generated, being used for when generating patch for this version, the address of the symbol used of the patch file searching new compiling correspondence in systems in which.
1, first will compile the new function realizing New function or repair-deficiency, the file layout that compiling generates is ELF form.This form saves code segment, data segment and BSS section, and the file this compiling generated is as module file, and this file finally can be read by system and copy in internal memory and performs.
2, the compilation tool objdump of system is utilized, the Symbol division used in module file compiling generated is in independent file, generate a symbol table file, connect owing to also not doing, so have symbol in this symbol table but the value of correspondence for empty, effectively can represent the symbol that this patch file is used altogether like this, by searching the complete symbols table used in original system, the value that the symbol existed by original system in this symbol table is corresponding is filled complete; Again by the table of newly putting in marks of the complete symbols table extracted and not completing of extracting with character string forms, be packaged into a patch file together with module file.
3, goal systems is added the complete symbols table extracted in step (2) and is carried out dynamic load to module file in step (1).Due in system software in advance initialization global symbol table can increase the size of system software, expend unnecessary storage space, so symbol table can before dynamic load, by dynamically having added.Certain storage space can be saved thus.
4, import after symbol table, goal systems is by dynamic load patch file, module file in patch file is separated, and its code segment, data segment and BSS section is copied to successively in corresponding memory headroom, the function defined is added to symbol table simultaneously in patch file.When being loaded into patch, the target memory space of code segment, data segment and BSS section needs embedded system reserved when generation system software, and because the code segment of embedded device is often not too large, headspace size is respectively 2M.
This step, when loading patch file, can be done consistency check to the version number of version number corresponding to patch file and system software, if not identical, so should not load this patch.
5, after having loaded patch, search the new function for upgrading in patch file, then query aim system symbol table, determine the old function that needs the to be updated position of (whether this code segment is the code segment of goal systems) in code segment, and making bytes some before this function into jump instruction, jump address is the address of new function place code segment.
For above-mentioned concrete scheme, by such as next instantiation, the present invention illustrates that the program carries out the detailed process of hot patch to embedded system.
Whole patch installation process is divided into three pieces by this example:
1) service packs is built: compiling new function, the service packs that constructing system can identify.And to guarantee that new function can normally work in original system, other symbols called in new function can be found.
2) system analysis service packs: import two class symbol tables, I) symbol table that calls in new function, II) need the original function symbol table that is replaced, then the code segment of service packs, data segment and BSS section are copied in system specified memory, and protect.
3) original function is replaced: change antiderivative first instruction into jump instruction, jump address is the address of new function.
1) build service packs and be divided into following subprocess:
1.1) compile new function and generate ELF formatted file
Due to before compiling, generally know the function name needing to upgrade, and the various information of goal systems, as long as so build a new function, replace original old function just.The function name of new function is set to antiderivative function name and adds suffix " _ patch ", do in the step be convenient to below the original function name finding and need patch installing like this.For example wish original function " int doshowversion (void) " patch installing, so its corresponding patch function should be just " int doshowversion_patch (void) ".
The input parameter of new function needs identical with rreturn value with antiderivative corresponding relation, and input parameter new function can being avoided to read like this has problems.
Owing to needing to isolate symbol table from the ELF formatted file of compiling, so call for external function the do-nothing function can writing a same name in step afterwards.
Then adopt the compilation tool of embedded system to compile this patch source code file, generate the file of an ELF form.
1.2) from the ELF formatted file generated, symbol table is isolated
The mode of embedded system separating character table is different, and this example take vxworks as example.
This example uses objdump instrument, and uses option--and syms generates symbol table, and by it stored in tmp.sym file.
Simultaneously, whether need to detect code segment, data segment and BSS section in patch when installing patch can write memory, whether internal memory is enough, need the length knowing code segment, data segment and BSS section for this reason, adopt corresponding method to obtain these values, and by it stored in a file, and by this file called after tmp.size.
1.3) packing symbol table
If Initialise symbol table operationally can take the memory headroom of about 500K more in original system, for embedded system, the memory headroom of this 500K is also more valuable.So this example selects the global symbol table of all symbol loading systems system do not used when initialization, and just set up the sky table of an initialization.Due to the symbol table file tmp.sym generated, which includes the symbol that this patch is used above.When system software generates, the symbol table file (as .map file) of corresponding software can be generated.
For this reason, this example, by searching .map file, completes with all symbols that can find at .map file in tmp.sym file the complete symbols table that patch needs, then packs this part of complete symbol table in patch file.
Can 80 be set to for the designation length (SYMBOL_NAME_SIZE) in the data structure that each symbol table is packed, can adjust for different compilers and this value of chip.
When completing complete symbols table, travel through the symbol occurred in tmp.sym file, search in .map file, what find deposits, the large array of final generation SYMBAL_TABLE_ENTRY structure deposits these symbol tables found, during this array initialization, the value of all value is set to-1, when symbol table for confirmation terminates.The element number of this large array is set to 256, and this size is enough for embedded device.
For the symbol that cannot find in map, explanation is current new interpolation, also should be bundled in patch file, to search the original function and objective function that need to repair.
1.4) version number of patch and verification
In order to ensure the compatibility of this patch file and system software, ensure that system software can normally use this patch, the system software release number this patch should supported is bundled in patch, compatible for system software inspection.
Do not produce mistake in the transmission in order to ensure patch file simultaneously, need to do CRC check.Also need be loaded in patch file by the CRC check code when patch file generates.
These information we be kept in a data structure, this data structure is bundled to patch file afterbody for system software resolve.
1.5) patch file bag is built
According to above-mentioned 1.1)-1.4) part content build corresponding patch file bag, its concrete structure as shown in Figure 1, mainly comprise ELF file, complete symbols table, newly put in marks table and patch file information header.
ELF file is the module file produced after the new function compiling needing to upgrade, and wherein contains code segment, data segment and BSS section.
Complete symbols table and new symbol table, essence is that above-mentioned ELF module file utilizes objdump instrument, the symbol table file separated.Wherein complete symbols table is the table that a part of symbol that can find value in symbol in this file corresponding original system complete symbols table is formed, and table of newly putting in marks is table that part cannot searching value in this file from original system complete symbols table is formed.
Patch file information header mainly comprises patch file version number, CRC check code, and ELF file, symbol table position hereof.
For avoiding the manual tedious steps generating patch file, a packing program can be write to generate patch file on host.The concrete methods of realizing of packing program is:
A) ELF file, symbol table file, original system software, original system complete symbols list file is found.
B) open a new file by the routine interface of host, this file is as patch file, if windows system, the interfaces such as file_cpy can be utilized ELF file, symbol table file to be copied in patch file.
C), after building patch file information header, the interfaces such as file_append are utilized to be write patch file.
2) system software is resolved and is installed service packs
The library file that service packs provides mainly through symlib and loadlib of system is installed, the complete symbols table be bundled in patch file and module file are dynamically loaded in system, then find and need the old function new function be replaced to replace, process is mainly divided into:
2.1) patch file information header is resolved
Copied by patch file after in the memory device of embedded system, I reads this patch file.Size due to patch file information header is certain, as long as end sizeof (hotfix_param_t) the individual byte of therefore file reading, just can read this head.
First, whether calculating CRC verifies and passes through.
Then, system version number and patch release number are compared, whether unanimously, so should stop this patch is installed if inconsistent.
2.2) symbol table that patch file can be used is installed
Symlib may not enroll system, if so the system software of vxworks will support hot patch, so needs to bring grand INCLUDE_SYM_TBL when compiling.
Have recorded the position of complete symbols table in patch information head, for the side-play amount ref_symbol_table_offset of file beginning starts, read and start to read symbol table with the structure of data structure SYMBAL_TABLE_ENTRY.Then by symbol table writing system symbol table, utilize system interface symFindByName to search this symbol table and whether be added into, if do not added, so use symTblAdd that symbol table is added system symbol table.
2.3) new module is loaded
Loadlib may not enroll system, if so the system software of vxworks will support hot patch, so needs to bring grand INCLUDE_LOADER when compiling.
The length of code segment needed for patch, data segment and BSS section has been have recorded in patch information header file, therefore need first storage allocation, then call loadModuleAt and ELF file is regarded module dynamic load, new function can be joined in system symbol table while loading.
Because present embedded system supports multinuclear, the process common codes section often of multinuclear, but data segment and BSS section are used by oneself.So need data segment and BSS section to copy to go from core.
3) original function is replaced with new function
In patch file, saved new symbol table, due to determined above in this new symbol table with " _ patch " function of suffix, need the new function loaded exactly, removing this suffix is exactly the original function needing to be replaced.
Before to antiderivative patch installing, as shown in Figure 2, caller directly calls antiderivative Instraction1 and performs original function antiderivative called mode.
Because original function is replaced by needs, replace with new function, because system cloud gray model generally only has three kinds of flow processs:
1) order performs instruction;
2) instruction redirect;
3) interrupt.
For this reason, antiderivative Instraction1, to the process of original function patch installing, is replaced with the process of a jump instruction by this example exactly, and jump address is the first address of new function.
See Fig. 3, its be depicted as and beaten patch after call schematic diagram.As seen from the figure, beat the effect of patch, be equivalent to the new_Instruction1 that Caller directly have invoked new function, and do not perform Instruction2 and later code.
For this reason, this example is when specific implementation, first utilize symFindByName interface to find new function and the original function address in code segment, antiderivative Article 1 instruction is changed into the j target_addr of assembly instruction, wherein target_addr is the first address of new function.Before a modification original Instruction1 is saved, and manage with an overall chained list patch installed.
In the structure of wherein overall linked list element, there is func_rec field to be used for the instruction be replaced to save, to use when unloading patch.
Notice at this, the cpu supported due to embedded system is varied, some cpu support pipelining, so when Article 1 jump instruction does not also perform, have read Article 2 instruction Instruction2, unnecessary problem may have been caused like this, so on the processor supporting streamline, Instruction2 can be revised as 00000000, namely nop instruction.And during amendment code section address, should close interruption, prevent from being modified to a half, modification process is interrupted, and causes this section of invalid code to be cited.
After having revised original function, need the cache upgrading cpu, can pseudoinstruction CACHE_TEXT_UPDATE be called.
4) ensure to restart rear patch still effective
Equipment may be restarted due to some other reasonses, and the patch installed before restarting should be still effective after restarting.Concrete methods of realizing is, the behaviour's action command installing patch realizes " patch install WORD ", and this order is saved in order storing documents " startup-config ", when each system start-up initialisation, this file can be read, resolve character string wherein and perform as order.
5) patch is unloaded
Function due to patch is also likely defective, so the patch after installing should have mechanism patch can be unloaded.When installing patch, this example saves all information of patch in MODULE_INFO_REC, so can recover the instruction being replaced function during unloading.
By the func_rec field of MODULE_INFO_REC, the instruction of the function be updated before recovery.Then with the patch unloading that unldByModuleId will install.
More than show and describe ultimate principle of the present invention, principal character and advantage of the present invention.The technician of the industry should understand; the present invention is not restricted to the described embodiments; what describe in above-described embodiment and instructions just illustrates principle of the present invention; without departing from the spirit and scope of the present invention; the present invention also has various changes and modifications, and these changes and improvements all fall in the claimed scope of the invention.Application claims protection domain is defined by appending claims and equivalent thereof.

Claims (6)

1. the hot patch implementation method of embedded system, is characterized in that, described method first, old function is found in existing system, change the Article 1 instruction of this function into jump instruction, new function is pointed in the address of redirect, thus the function realizing new function replaces original old function.
2. the hot patch implementation method of embedded system according to claim 1, is characterized in that, the concrete steps of described method are as follows:
(1) compiling realizes the new function of New function or repair-deficiency, and the file layout that compiling generates saves code segment, data segment and BSS section, and the file that this compiling generates is as module file, and this file can be read by system and copy in internal memory and perform;
(2) Symbol division used in file compiling generated is in independent file, generate the symbol table that a character style is preserved, the symbol newly added in the symbol existed in original system and this patch is there is in this symbol table, and by searching the complete symbols table used in original system, the value that the symbol existed by original system in this symbol table is corresponding is filled complete; Again by the complete symbols table extracted and the table of newly putting in marks that extracts with character string forms, the module file generated in same step (1) is packaged as a patch file;
(3) goal systems is added the complete symbols table extracted in step (2) and is carried out dynamic load to module file in step (1);
(4) import after symbol table, system, by dynamic load patch file, is separated the module file in patch file, and its code segment, data segment and BSS section is copied in corresponding memory headroom successively; The function defined in patch file is added in the symbol table of system self simultaneously;
(5) after having loaded patch, search the new function for upgrading in patch file, then inquiry system symbol table, determine the position of function in system code section needing to be updated, and making bytes some before this function into jump instruction, jump address is the address of new function place code segment.
3. the hot patch implementation method of embedded system according to claim 2, is characterized in that, the file layout that in described step (1), compiling generates is ELF form.
4. the hot patch implementation method of embedded system according to claim 2, is characterized in that, in described step (3) before dynamic load, by dynamically having added the interpolation of symbol table.
5. the hot patch implementation method of embedded system according to claim 2, is characterized in that, reserved when generation system software for copy the memory headroom of code segment in patch file, data segment and BSS section be embedded system in described step (4).
6. the hot patch implementation method of embedded system according to claim 2, is characterized in that, when described step (4) loads patch file, consistency check is done by the version number corresponding to patch file and the version number of system software.
CN201310248056.4A 2013-06-20 2013-06-20 The hot patch implementation method of embedded system Active CN104239082B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310248056.4A CN104239082B (en) 2013-06-20 2013-06-20 The hot patch implementation method of embedded system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310248056.4A CN104239082B (en) 2013-06-20 2013-06-20 The hot patch implementation method of embedded system

Publications (2)

Publication Number Publication Date
CN104239082A true CN104239082A (en) 2014-12-24
CN104239082B CN104239082B (en) 2019-01-15

Family

ID=52227220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310248056.4A Active CN104239082B (en) 2013-06-20 2013-06-20 The hot patch implementation method of embedded system

Country Status (1)

Country Link
CN (1) CN104239082B (en)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335200A (en) * 2015-11-24 2016-02-17 小米科技有限责任公司 System upgrading method and device
CN105468410A (en) * 2015-11-24 2016-04-06 小米科技有限责任公司 System upgrading method and device
CN105630557A (en) * 2015-12-24 2016-06-01 迈普通信技术股份有限公司 Hotfix method and device
WO2016115975A1 (en) * 2015-01-20 2016-07-28 中兴通讯股份有限公司 Method and device for hotpatch of cpu having mips architecture
CN106055368A (en) * 2016-06-02 2016-10-26 腾讯科技(深圳)有限公司 Application updating method and device
CN106484487A (en) * 2016-10-27 2017-03-08 北京锐安科技有限公司 A kind of processing method and processing device of system mend
CN106610857A (en) * 2016-12-23 2017-05-03 上海优刻得信息科技有限公司 Hot patch information inquiring method and device
CN107329753A (en) * 2017-06-28 2017-11-07 联想(北京)有限公司 The method of adjustment and electronic equipment of a kind of firmware interface code
CN107451474A (en) * 2016-05-31 2017-12-08 百度在线网络技术(北京)有限公司 Software vulnerability restorative procedure and device for terminal
CN107729042A (en) * 2017-10-16 2018-02-23 东软集团股份有限公司 Mobile solution upgrade method and device, storage medium, electronic equipment
CN108108202A (en) * 2016-11-23 2018-06-01 阿里巴巴集团控股有限公司 A kind of hot-plug method and device
CN108268266A (en) * 2016-12-29 2018-07-10 中移(苏州)软件技术有限公司 A kind of upgrade method and device
CN108762787A (en) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 Software repair, device, computer equipment and storage medium
CN109117169A (en) * 2016-12-12 2019-01-01 百度在线网络技术(北京)有限公司 Method and apparatus for repairing kernel loophole
CN109491698A (en) * 2018-12-29 2019-03-19 武汉思普崚技术有限公司 Method for updating system and device based on hot patch
CN109492406A (en) * 2018-11-15 2019-03-19 百度在线网络技术(北京)有限公司 Monitor the methods, devices and systems of kernel loophole attack
CN109614133A (en) * 2018-12-11 2019-04-12 江苏电力信息技术有限公司 A kind of method of power industry lightweight heat publication mobile application
CN109726052A (en) * 2018-12-29 2019-05-07 北京金山安全软件有限公司 Method and device for realizing server thermal repair and electronic equipment
CN110427316A (en) * 2019-07-04 2019-11-08 沈阳航空航天大学 Embedded software defect-restoration method therefor based on access behavior perception
CN110618824A (en) * 2018-06-20 2019-12-27 中移(杭州)信息技术有限公司 Software upgrading method, device, medium and equipment
CN111158735A (en) * 2019-12-05 2020-05-15 青岛海信移动通信技术股份有限公司 Hot patch file processing method and communication terminal
CN111562934A (en) * 2020-04-03 2020-08-21 深圳震有科技股份有限公司 Software system upgrading method based on hot patch, terminal and storage medium
CN111782302A (en) * 2020-07-13 2020-10-16 腾讯科技(深圳)有限公司 Process updating method and device, storage medium and electronic equipment
WO2020238245A1 (en) * 2019-05-30 2020-12-03 华为技术有限公司 Function jump implementation method, device, and computer storage medium
CN113342555A (en) * 2020-02-18 2021-09-03 炬芯科技股份有限公司 Method and device for repairing ROM and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5619698A (en) * 1995-05-05 1997-04-08 Apple Computer, Inc. Method and apparatus for patching operating systems
CN1475909A (en) * 2002-08-16 2004-02-18 华为技术有限公司 realization of isertion type system soft ware patch and control method
CN1567232A (en) * 2003-07-10 2005-01-19 华为技术有限公司 Testing device and method for flush-bonding system
CN101882094A (en) * 2010-06-10 2010-11-10 中兴通讯股份有限公司 Method and system for making patch by embedded system
CN101937340A (en) * 2009-06-29 2011-01-05 中兴通讯股份有限公司 Method and device for dynamically updating and controlling software by using patches
CN102722387A (en) * 2012-05-29 2012-10-10 华为技术有限公司 Dynamic patching method and device
CN102982277A (en) * 2012-12-24 2013-03-20 广东威创视讯科技股份有限公司 Method and system achieving embedded system software patching

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5619698A (en) * 1995-05-05 1997-04-08 Apple Computer, Inc. Method and apparatus for patching operating systems
CN1475909A (en) * 2002-08-16 2004-02-18 华为技术有限公司 realization of isertion type system soft ware patch and control method
CN1567232A (en) * 2003-07-10 2005-01-19 华为技术有限公司 Testing device and method for flush-bonding system
CN101937340A (en) * 2009-06-29 2011-01-05 中兴通讯股份有限公司 Method and device for dynamically updating and controlling software by using patches
CN101882094A (en) * 2010-06-10 2010-11-10 中兴通讯股份有限公司 Method and system for making patch by embedded system
CN102722387A (en) * 2012-05-29 2012-10-10 华为技术有限公司 Dynamic patching method and device
CN102982277A (en) * 2012-12-24 2013-03-20 广东威创视讯科技股份有限公司 Method and system achieving embedded system software patching

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016115975A1 (en) * 2015-01-20 2016-07-28 中兴通讯股份有限公司 Method and device for hotpatch of cpu having mips architecture
CN105335200A (en) * 2015-11-24 2016-02-17 小米科技有限责任公司 System upgrading method and device
CN105468410A (en) * 2015-11-24 2016-04-06 小米科技有限责任公司 System upgrading method and device
CN105468410B (en) * 2015-11-24 2019-02-12 小米科技有限责任公司 Method for upgrading system and device
CN105335200B (en) * 2015-11-24 2019-05-07 小米科技有限责任公司 Method for upgrading system and device
CN105630557A (en) * 2015-12-24 2016-06-01 迈普通信技术股份有限公司 Hotfix method and device
CN105630557B (en) * 2015-12-24 2018-12-28 迈普通信技术股份有限公司 Hot patch method and apparatus
CN107451474B (en) * 2016-05-31 2020-06-26 百度在线网络技术(北京)有限公司 Software bug fixing method and device for terminal
CN107451474A (en) * 2016-05-31 2017-12-08 百度在线网络技术(北京)有限公司 Software vulnerability restorative procedure and device for terminal
CN106055368B (en) * 2016-06-02 2019-12-13 腾讯科技(深圳)有限公司 application updating method and device
CN106055368A (en) * 2016-06-02 2016-10-26 腾讯科技(深圳)有限公司 Application updating method and device
CN106484487B (en) * 2016-10-27 2019-11-12 北京锐安科技有限公司 A kind of processing method and processing device of system mend
CN106484487A (en) * 2016-10-27 2017-03-08 北京锐安科技有限公司 A kind of processing method and processing device of system mend
CN108108202A (en) * 2016-11-23 2018-06-01 阿里巴巴集团控股有限公司 A kind of hot-plug method and device
CN109117169A (en) * 2016-12-12 2019-01-01 百度在线网络技术(北京)有限公司 Method and apparatus for repairing kernel loophole
CN109117169B (en) * 2016-12-12 2022-06-07 百度在线网络技术(北京)有限公司 Method and device for repairing kernel vulnerability
CN106610857B (en) * 2016-12-23 2019-01-22 优刻得科技股份有限公司 A kind of hot patch information query method and device
CN106610857A (en) * 2016-12-23 2017-05-03 上海优刻得信息科技有限公司 Hot patch information inquiring method and device
CN108268266A (en) * 2016-12-29 2018-07-10 中移(苏州)软件技术有限公司 A kind of upgrade method and device
CN107329753B (en) * 2017-06-28 2021-07-16 联想(北京)有限公司 Firmware interface code adjusting method and electronic equipment
CN107329753A (en) * 2017-06-28 2017-11-07 联想(北京)有限公司 The method of adjustment and electronic equipment of a kind of firmware interface code
CN107729042A (en) * 2017-10-16 2018-02-23 东软集团股份有限公司 Mobile solution upgrade method and device, storage medium, electronic equipment
CN108762787B (en) * 2018-05-31 2024-04-05 康键信息技术(深圳)有限公司 Software repairing method, device, computer equipment and storage medium
CN108762787A (en) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 Software repair, device, computer equipment and storage medium
CN110618824A (en) * 2018-06-20 2019-12-27 中移(杭州)信息技术有限公司 Software upgrading method, device, medium and equipment
CN109492406A (en) * 2018-11-15 2019-03-19 百度在线网络技术(北京)有限公司 Monitor the methods, devices and systems of kernel loophole attack
CN109614133A (en) * 2018-12-11 2019-04-12 江苏电力信息技术有限公司 A kind of method of power industry lightweight heat publication mobile application
CN109491698B (en) * 2018-12-29 2022-07-08 武汉思普崚技术有限公司 System updating method and device based on hot patch
CN109491698A (en) * 2018-12-29 2019-03-19 武汉思普崚技术有限公司 Method for updating system and device based on hot patch
CN109726052A (en) * 2018-12-29 2019-05-07 北京金山安全软件有限公司 Method and device for realizing server thermal repair and electronic equipment
WO2020238245A1 (en) * 2019-05-30 2020-12-03 华为技术有限公司 Function jump implementation method, device, and computer storage medium
US11645068B2 (en) 2019-05-30 2023-05-09 Huawei Technologies Co., Ltd. Method for implementing function jump, apparatus, and computer storage medium
CN110427316A (en) * 2019-07-04 2019-11-08 沈阳航空航天大学 Embedded software defect-restoration method therefor based on access behavior perception
CN110427316B (en) * 2019-07-04 2023-02-14 沈阳航空航天大学 Embedded software defect repairing method based on access behavior perception
CN111158735B (en) * 2019-12-05 2023-03-31 青岛海信移动通信技术股份有限公司 Hot patch file processing method and communication terminal
CN111158735A (en) * 2019-12-05 2020-05-15 青岛海信移动通信技术股份有限公司 Hot patch file processing method and communication terminal
CN113342555A (en) * 2020-02-18 2021-09-03 炬芯科技股份有限公司 Method and device for repairing ROM and storage medium
CN113342555B (en) * 2020-02-18 2024-01-09 炬芯科技股份有限公司 ROM repairing method, device and storage medium
CN111562934A (en) * 2020-04-03 2020-08-21 深圳震有科技股份有限公司 Software system upgrading method based on hot patch, terminal and storage medium
CN111562934B (en) * 2020-04-03 2023-08-11 深圳震有科技股份有限公司 Software system upgrading method based on hot patch, terminal and storage medium
CN111782302B (en) * 2020-07-13 2021-05-14 腾讯科技(深圳)有限公司 Process updating method and device, storage medium and electronic equipment
CN111782302A (en) * 2020-07-13 2020-10-16 腾讯科技(深圳)有限公司 Process updating method and device, storage medium and electronic equipment

Also Published As

Publication number Publication date
CN104239082B (en) 2019-01-15

Similar Documents

Publication Publication Date Title
CN104239082A (en) Hot patching implementation method of embedded system
CN106095620B (en) A kind of development approach of built-in Linux partition holding
CN103955363B (en) A kind of manufacture method of program upgrade installation package
JP5208350B2 (en) Self-describing software image update component
US8423991B2 (en) Embedded network device and firmware upgrading method
TWI566180B (en) A system and method thereof for creating dynamically attachable and detachable binary files
CN101799763B (en) Method, device and system for patching kernel on line
CN109491695A (en) A kind of increment updating method of integrated Android application
WO2015070521A1 (en) Method for making ubi format system file into factory burnt image file
CN111562934B (en) Software system upgrading method based on hot patch, terminal and storage medium
CN107506219A (en) A kind of general version upgrade method based on android system
WO2011000279A1 (en) Patch generation method for dynamic software updating and control and apparatus thereof
CN113821235B (en) Operating system data updating method, device, storage medium and program product
CN102609275A (en) BIOS updating system and method thereof
CN103345412A (en) Patching method and device
CN101719074A (en) patch-realizing method and device
CN105224309A (en) A kind of method and apparatus transferring function
CN114116023A (en) Operating system starting method, operating system starting device, storage medium and computer program product
CN113821221A (en) Method, apparatus, storage medium, and computer program product for installing operating system
CN115617687A (en) Program instrumentation method, apparatus, device and storage medium
CN103645888A (en) System and method for automatically building operation system
WO2015184732A1 (en) Bootstrap storage method, bootstrap fault recovery method and device, and computer storage medium
CN113900673A (en) System installation package management method, device, storage medium and program product
CN103106086B (en) Operating system disposal route and system
CN110928570A (en) Firmware upgrading method and device and readable storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20141224

Assignee: Shanghai Puchuang Longke Finance Leasing Co.,Ltd.

Assignor: SHANGHAI BAUD DATA COMMUNICATION Co.,Ltd.

Contract record no.: X2020980003092

Denomination of invention: Hot patching implementation method of embedded system

Granted publication date: 20190115

License type: Exclusive License

Record date: 20200615

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Hot patching implementation method of embedded system

Effective date of registration: 20200615

Granted publication date: 20190115

Pledgee: Shanghai Puchuang Longke Finance Leasing Co.,Ltd.

Pledgor: SHANGHAI BAUD DATA COMMUNICATION Co.,Ltd.

Registration number: Y2020980003093

PE01 Entry into force of the registration of the contract for pledge of patent right
EC01 Cancellation of recordation of patent licensing contract
EC01 Cancellation of recordation of patent licensing contract

Assignee: Shanghai Puchuang Longke Finance Leasing Co.,Ltd.

Assignor: SHANGHAI BAUD DATA COMMUNICATION Co.,Ltd.

Contract record no.: X2020980003092

Date of cancellation: 20210809

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20210809

Granted publication date: 20190115

Pledgee: Shanghai Puchuang Longke Finance Leasing Co.,Ltd.

Pledgor: SHANGHAI BAUD DATA COMMUNICATION Co.,Ltd.

Registration number: Y2020980003093