CN104239082B - The hot patch implementation method of embedded system - Google Patents

The hot patch implementation method of embedded system Download PDF

Info

Publication number
CN104239082B
CN104239082B CN201310248056.4A CN201310248056A CN104239082B CN 104239082 B CN104239082 B CN 104239082B CN 201310248056 A CN201310248056 A CN 201310248056A CN 104239082 B CN104239082 B CN 104239082B
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.)
Active
Application number
CN201310248056.4A
Other languages
Chinese (zh)
Other versions
CN104239082A (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 the hot patch implementation methods of embedded system, firstly, finding old function in existing system, first instruction of the function is changed to jump instruction, and new function is directed toward in the address jumped, to realize that the function of new function replaces original old function.Thus, it is possible to realize function renewal and defect repair that system software is completed in the case where that cannot replace software systems, restarting equipment.

Description

The hot patch implementation method of embedded system
Technical field
The present invention relates to embedded system technologies, and in particular to the patching technology of embedded system.
Background technique
Modern network requires stability, the fault-tolerance of embedded device higher and higher, it is desirable that equipment has few in system Perhaps it is still able to maintain and continues to run in the case where mistake, keep the correctness and continuity of other function.
Traditional embedded software updates, and needs to replace whole system image file, even if this directly results in system only Need to repair a local defect, it is also necessary to restarted by system complete machine to complete software upgrading.But for embedded device Use occasion, generally require and avoid replacing software version with the mode of restarting equipment, hot patch technology can be good at making up This problem.
Hot patch provides one kind in the case where not interrupting built-in equipment operation, quickly, is achieved at low cost system The technology of the partial modification of software, to achieve the purpose that repair software defect and update system function.
It can be seen that how to carry out partial modification, Shi Ben to system software using hot patch technology in embedded systems The problem of field urgent need to resolve.
Summary of the invention
The present invention needs to replace whole system image file when being directed to existing embedded software function renewal and defect repair The problem of restarting with system complete machine to complete, and a kind of hot patch technology for embedded system is provided.It can be realized In the case where software systems, restarting equipment cannot be replaced, the function renewal and defect repair of system software are completed.
In order to achieve the above object, the present invention adopts the following technical scheme that:
The hot patch implementation method of embedded system, the method in existing system firstly, find old function, by the letter First several instructions are changed to jump instruction, and new function is directed toward in the address jumped, so that it is original to realize that the function of new function replaces Old function.
In preferred embodiment of the invention, specific step is as follows for the method:
(1) compiling realize new function or repair defect new function, compile generation file format save code segment, Data segment and BSS sections, the file which generates this document and can be read by the system and copy to memory as module file Middle execution;
(2) it by the Symbol division used in the file of compiling generation into individual file, generates a character style and protects The symbol table deposited, there are the symbols being newly added in symbol present in original system and this patch in the symbol table, and pass through The complete symbols table used in original system is searched, the corresponding value of symbol existing for original system in the symbol table is filled complete; Again by the complete symbols table extracted and the table of newly putting in marks extracted with character string forms, the middle module generated of same step (1) File is packaged as a patch file;
(3) goal systems is added the complete symbols table extracted in step (2) and to module file in step (1) Carry out dynamically load;
(4) it imports after symbol table, system isolates the module file in patch file dynamically load patch file Come, and its code segment, data segment and BSS sections are successively copied in corresponding memory headroom;Simultaneously being defined in patch file Function be added in the symbol table of system itself;
(5) after having loaded patch, the new function in patch file for update is searched, then inquiry system symbol table, It determines the position of function that needs are updated in system code section, and several bytes before the function is jumped into finger instead It enables, jump address is the address of code segment where new function.
Further, the file format that compiling generates in the step (1) is ELF format.
Further, in the step (3) before dynamically load, the addition of symbol table is completed by dynamic addition.
Further, empty for replicating code segment in patch file, data segment and BSS sections of memory in the step (4) Between be embedded system when generating system software reserve.
Further, when step (4) the load patch file, to the corresponding version number of patch file and system software Version number do consistency check.
It can effectively realize in the case where being changed without software systems, restarting equipment through the above scheme, complete system The function renewal and defect repair of software greatly reduce the cost that embedded system is updated or repaired.
Meanwhile it is simple and reliable when this programme implementation.Without recompilating whole system software, avoid because compile error is led The version of cause is unstable.
It can guarantee the correctness and continuity of the other functions of system.In replacement system power function, it will not influence The normal execution of his function, will not influence the normal consistency of system.
The generation period of system software when reducing embedded system addition new function.It is soft due to regenerating whole system Part need it is functional to the institute of the software make factory and test just can guarantee the stabilization of version, and the patch mode is due to other systems Function all has not been changed, and reduces the unstable risk of system software.
Practicability is wide, and the program is suitable for most of embedded systems for supporting symbol table and dynamically load.
Detailed description of the invention
The present invention is further illustrated below in conjunction with the drawings and specific embodiments.
Fig. 1 is that patch file format is intended in this example;
Fig. 2 is the calling schematic diagram of original function;
Fig. 3 is the calling schematic diagram of the function after patch installing.
Specific embodiment
In order to be easy to understand the technical means, the creative features, the aims and the efficiencies achieved by the present invention, tie below Conjunction is specifically illustrating, and the present invention is further explained.
Hot patch scheme provided by the invention is that old function is found in existing system, and first instruction of the function is changed For jump instruction, new function is directed toward in the address jumped, to realize that the function of new function replaces original old function.
Based on the above principles, concrete scheme of the invention includes the following steps:
When the program is implemented, when each system software generates, symbol table file (such as .map of corresponding software version can be generated File), it is used to search symbol that newly compiled patch file is used in systems correspondingly when for version generation patch Location.
1, it first has to compiling to realize new function or repair the new function of defect, the file format for compiling generation is ELF lattice Formula.The format saves code segment, data segment and BSS section, and the file which is generated is as module file, and this document is most It can be read by the system and be copied in memory eventually and be executed.
2, using the compilation tool objdump of system, by the Symbol division used in the module file of compiling generation to list In only file, a symbol table file is generated, due to connecting not yet, so having symbol but corresponding value in the symbol table For sky, the symbol that the patch file is used in total can be effectively indicated in this way, it is complete by searching for being used in original system Symbol table fills the corresponding value of symbol existing for original system in the symbol table complete;Again by the complete symbols table extracted and Extract it is unfinished newly put in marks table with character string forms, a patch file is packaged into together with module file.
3, goal systems is added the complete symbols table extracted in step (2) and to module file in step (1) Carry out dynamically load.It will increase the size of system software due to initializing global symbol table in system software in advance, consuming need not The memory space wanted, so symbol table can be completed before dynamically load by dynamic addition.It is possible thereby to save certain Memory space.
4, it imports after symbol table, goal systems is by dynamically load patch file, the module file in patch file point It separates out and, and its code segment, data segment and BSS sections are successively copied in corresponding memory headroom, while in patch file The function of definition is added to symbol table.When being loaded into patch, code segment, data segment and BSS sections of target memory space is that needs are embedding What embedded system was reserved when generating system software, since the code segment of embedded device tends not to too greatly, reserved space is big Small is respectively 2M.
The step can do the version number of the corresponding version number of patch file and system software when loading patch file Consistency check, if it is not the same, should not so load the patch.
5, after having loaded patch, the new function in patch file for update is searched, then inquires goal systems symbol Table, come determine old function that needs are updated in code segment (code segment whether be goal systems code segment) position, And several bytes before the function are changed to jump instruction, jump address is the address of code segment where new function.
For above-mentioned specific scheme, the present invention illustrated by such as next specific example the program to embedded system into The detailed process of row hot patch.
Entire patch installation process is divided into three pieces by this example:
1) service packs is constructed: compiling new function, the service packs that building system can identify.And to ensure that new function is in original It can be worked normally in system, other symbols called in new function can be found.
2) two class symbol tables, I system analysis service packs: are imported) symbol table that calls in new function, II) it needs to be replaced The original function symbol table changed, then copies to the code segment of service packs, data segment and BSS section in system specified memory, and protect Shield is got up.
3) it replaces original function: first instruction of original function being changed to jump instruction, jump address is the address of new function.
1) building service packs is divided into following subprocess:
1.1) compiling new function generates ELF format file
Due to before compiling, generally having known the various information of function name and goal systems that needs update, so As long as a new function is constructed, to replace original old function just.The function name of new function is set as the function of original function Name adds suffix " _ patch ", it does so in the step of being convenient for below and finds the original function name for needing patch installing.For example Wish by original function " int doshowversion (void) " patch installing, then its corresponding patch function just should be " int doshowversion_patch(void)”。
The input parameter and return value of new function are identical as the corresponding relationship needs of original function, can be avoided new function in this way The input parameter read is led to the problem of.
Due to needing to isolate symbol table from the ELF format file of compiling in the steps afterwards, so for outside The calling of function can write the do-nothing function of a same name.
Then the patch source code file is compiled using the compilation tool of embedded system, generates an ELF lattice The file of formula.
1.2) symbol table is isolated from the ELF format file of generation
The mode of embedded system separating character table is different, this example is using vxworks as example.
This example uses objdump tool, and uses option -- and syms generates symbol table, and is deposited into tmp.sym text In part.
Meanwhile need to detect when installing patch code segment, data segment and BSS sections in patch whether can be written in It deposits, whether memory is enough, needs to know code segment, data segment and BSS sections of length thus, obtains this using corresponding method A little values, and be deposited into a file, and this document is named as tmp.size.
1.3) it is packaged symbol table
If initialization symbol table can occupy the memory headrooms of 500K or so more at runtime, for insertion in original system Formula system, the memory headroom of this 500K are also more valuable.So the selection of this example does not use system in initialization All symbol loading systems global symbol table, and only establish the empty table initialized.The symbol generated due to front Number list file tmp.sym, which includes the symbols that this patch is used.When system software generates, corresponding software can be generated Symbol table file (such as .map file).
For this purpose, this example is by searching for .map file, with can be in all symbols that .map file is found in tmp.sym file It number completes the complete symbols table of patch needs, then the complete symbol table of this part is packed into patch file.
The designation length (SYMBOL_NAME_SIZE) in data structure being packaged for each symbol table can be set 80 are set to, can be adjusted for different this value of compiler and chip.
When completing complete symbols table, the symbol occurred in tmp.sym file is traversed, searches, looks into .map file The storage found ultimately generates the big array of SYMBAL_TABLE_ENTRY structure to store the symbol that these find Table sets -1 to confirm that when symbol table terminates for the value of all value when the array initializes.The member of the big array Plain number is set as 256, this size is enough for embedded device.
For the symbol that can not be found in map, explanation be it is current newly added, should also be bundled to patch file In, 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 the patch file and system software, guarantee system software can the normal use patch, The system software release number that should support the patch is bundled in patch, examines compatibility for system software.
Simultaneously in order to ensure patch file is in the transmission without generating mistake, need to do CRC check.It need to also be in patch file Cyclic redundancy check when generation is loaded into patch file.
We are stored in a data structure these information, this data structure is bundled to patch file tail portion for being Software of uniting parses.
1.5) patch file packet is constructed
According to above-mentioned 1.1) -1.4) content of part constructs corresponding patch file packet, specific structure as shown in Figure 1, It mainly include ELF file, complete symbols table, newly put in marks table and patch file information header.
ELF file is the module file of generation after the new function compiling for needing to update, wherein containing code segment, data Section and BSS sections.
Complete symbols table and new symbol table, essence are above-mentioned ELF module files using objdump tool, are separated Symbol table file.Wherein complete symbols table is that symbol in this document corresponds in original system complete symbols table and can find value The table that a part of symbol is constituted, and table of newly putting in marks be in this document can not from original system complete symbols table lookup value that The table that a part is constituted.
Patch file information header mainly includes patch file version number, and cyclic redundancy check and ELF file, symbol table are in text Position in part.
To avoid the tedious steps for being manually generated patch file, a packing program can be write on host to generate Patch file.The concrete methods of realizing for being packaged program is:
A ELF file, symbol table file, original system software, original system complete symbols list file) are found.
B a new file) is opened by the routine interface of host, this document is as patch file, if it is windows System can use the interfaces such as file_cpy and copy to ELF file, symbol table file in patch file.
C after) constructing patch file information header, patch file is written into using interfaces such as file_append.
2) system software parsing installation service packs
Installation service packs mainly passes through the library file that the symlib and loadlib of system are provided, and will be bundled to patch file In complete symbols table and module file be dynamically loaded into system, then find and need the old function new function that is replaced Instead of process is broadly divided into:
2.1) patch file information header parsing
After patch file is copied in the storage equipment of embedded system, I reads the patch file.Due to patch file The size of information header is certain, as long as therefore read file end sizeof (hotfix_param_t) a byte, energy Enough read the head.
Pass through firstly, calculating CRC and whether verifying.
Then, system version number and patch release number are compared, if it is consistent, if inconsistent should so stop installing The patch.
2.2) symbol table that installation patch file can be used
Symlib may not be incorporated into system, so needing if the system software of vxworks will support hot patch Macro INCLUDE_SYM_TBL is taken in compiling.
The position of complete symbols table is had recorded in patch information head, for the offset ref_ of file beginning Symbol_table_offset starts, and reads and starts to read symbol table with the structure of data structure SYMBAL_TABLE_ENTRY. Then by symbol table writing system symbol table, search whether the symbol table has been added using system interface symFindByName Enter, if be not added, system symbol table is added in symbol table using symTblAdd.
2.3) new module is loaded
Loadlib may not be incorporated into system, so if the system software of vxworks will support hot patch, It needs to take macro INCLUDE_LOADER in compiling.
The length of code segment, data segment needed for patch and BSS sections has been had recorded in patch information header file, therefore needs elder generation Then storage allocation calls loadModuleAt that ELF file is regarded module dynamically load, load while can add new function Enter into system symbol table.
Since present embedded system supports multicore, the processing of multicore is often common codes section, but data segment and BSS sections personal.It is gone so needing to copy to data segment and BSS sections from core.
3) original function is replaced with new function
New symbol table is saved in patch file, since front has determined band in this new symbol table " _ The function of patch " suffix exactly needs new function to be loaded, and removing the suffix is exactly the original function for needing to be replaced.
Before the patch installing to original function, the called mode of original function is as shown in Fig. 2, caller calls directly former letter Several Instraction1 executes original function.
Due to needing to replace original function, new function is replaced with, there are three types of processes since system operation is general only:
1) it sequentially executes instruction;
2) instruction jumps;
3) it interrupts.
For this purpose, process of this example to original function patch installing, exactly replaces with one for the Instraction1 of original function The process of jump instruction, jump address are the first address of new function.
Referring to Fig. 3 which shows the calling schematic diagram after having beaten patch.As seen from the figure, the effect for having beaten patch, is equivalent to Caller has called directly the new_Instruction1 of new function, without executing Instruction2 and later code.
For this purpose, this example is in specific implementation, new function and original function are found in generation first with symFindByName interface Address in code section instructs first of original function the j target_addr for being changed to assembly instruction, wherein target_addr For the first address of new function.Original Instruction1 is saved before a modification, and is managed with a global chained list Installed patch.
Wherein in the structure of global linked list element there is func_rec field to be used to save the instruction being replaced, with It is used when just unloading patch.
It is noted that some cpu support pipelining since the cpu that embedded system is supported is varied, so When first jump instruction is also not carried out, Article 2 instruction Instruction2 is had read, may have been caused so not Instruction2 can be revised as 00000000 so on the processor for supporting assembly line by necessary problem, that is, Nop instruction.And when modification code section address, it should close and interrupt, when preventing from being modified to half, modification process is interrupted, and is led This section of invalid code is caused to be cited.
It after having modified original function, needs to update the cache of cpu, dummy order CACHE_TEXT_UPDATE can be called.
4) it is still effective to restart rear patch for guarantee
Equipment may be restarted due to some other, and the patch installed before restarting should still have after restarting Effect.Concrete methods of realizing is the behaviour's action command realization " patch install WORD " for installing patch, which is saved in life It enables in storage file " startup-config ", in each system start-up initialisation, can read this document, parse word therein Symbol is gone here and there and is executed as order.
5) patch is unloaded
Since the function of patch is it could also be possible that defective, so the patch after installation should have mechanism can be by patch Unloading.When installing patch, this example saves all information of patch in MODULE_INFO_REC, so can when unloading Restore the instruction for being replaced function.
By the func_rec field of MODULE_INFO_REC, the instruction for the function being updated before restoring.Then it uses UnldByModuleId unloads installed patch.
The basic principles, main features and advantages of the present invention have been shown and described above.The technology of the industry Personnel are it should be appreciated that the present invention is not limited to the above embodiments, and the above embodiments and description only describe this The principle of invention, without departing from the spirit and scope of the present invention, various changes and improvements may be made to the invention, these changes Change and improvement all fall within the protetion scope of the claimed invention.The claimed scope of the invention by appended claims and its Equivalent thereof.

Claims (5)

1. the hot patch implementation method of embedded system, which is characterized in that the method in existing system firstly, find old letter Number, is changed to jump instruction for first instruction of the function, and new function is directed toward in the address jumped, to realize the function of new function Replace original old function;Specific step is as follows for the method:
(1) compiling realizes new function or repairs the new function of defect, and the file format for compiling generation saves code segment, data Section is with BSS sections, and as module file, this document can be read by the system and copy in memory and hold the file which generates Row;
(2) by the Symbol division used in the file of compiling generation into individual file, generate what a character style saved Symbol table, there are the symbols being newly added in symbol present in original system and this patch in the symbol table, and by searching for The complete symbols table used in original system fills the corresponding value of symbol existing for original system in the symbol table complete;Again will The complete symbols table extracted and the table of newly putting in marks extracted are with character string forms, the middle module file generated of same step (1) It is packaged as a patch file;
(3) goal systems is added the complete symbols table extracted in step (2) and carries out to module file in step (1) Dynamically load;
(4) it importing after symbol table, system separates the module file in patch file dynamically load patch file, And its code segment, data segment and BSS sections are successively copied in corresponding memory headroom;Simultaneously letter defined in patch file Number is added in the symbol table of system itself;
(5) after having loaded patch, the new function in patch file for update is searched, then inquiry system symbol table, come true Position of the function for needing to be updated calmly in system code section, and several bytes before the function are changed to jump instruction, it jumps Turn the address that address is code segment where new function.
2. the hot patch implementation method of embedded system according to claim 1, which is characterized in that in the step (1) The file format that compiling generates is ELF format.
3. the hot patch implementation method of embedded system according to claim 1, which is characterized in that in the step (3) Before dynamically load, the addition of symbol table is completed by dynamic addition.
4. the hot patch implementation method of embedded system according to claim 1, which is characterized in that in the step (4) Memory headroom for replicating code segment in patch file, data segment and BSS sections is embedded system when generating system software Reserved.
5. the hot patch implementation method of embedded system according to claim 1, which is characterized in that the step (4) adds When carrying patch file, consistency check is done to the version number of the corresponding version number of patch file and 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 CN104239082A (en) 2014-12-24
CN104239082B true 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)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105868094A (en) * 2015-01-20 2016-08-17 中兴通讯股份有限公司 Method and device used for hot patching of CPU with MIPS architecture
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
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
CN106055368B (en) * 2016-06-02 2019-12-13 腾讯科技(深圳)有限公司 application updating method and device
CN106484487B (en) * 2016-10-27 2019-11-12 北京锐安科技有限公司 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
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
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
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
CN110618824B (en) * 2018-06-20 2023-07-21 中移(杭州)信息技术有限公司 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
CN109726052A (en) * 2018-12-29 2019-05-07 北京金山安全软件有限公司 Method and device for realizing server thermal repair and electronic equipment
CN112015491B (en) 2019-05-30 2022-08-09 华为技术有限公司 Method, device and computer storage medium for realizing function jump
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
CN113342555B (en) * 2020-02-18 2024-01-09 炬芯科技股份有限公司 ROM repairing method, device 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

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

Also Published As

Publication number Publication date
CN104239082A (en) 2014-12-24

Similar Documents

Publication Publication Date Title
CN104239082B (en) The hot patch implementation method of embedded system
US8499289B2 (en) Method, device and system for realizing kernel online patching
JP5208350B2 (en) Self-describing software image update component
Wang et al. Uroboros: Instrumenting stripped binaries with static reassembling
US9696989B1 (en) Systems and methods for generating and applying operating system live updates
CN103955363B (en) A kind of manufacture method of program upgrade installation package
JP7090657B2 (en) Methods, devices, devices and storage media for upgrading applications
CN106095620B (en) A kind of development approach of built-in Linux partition holding
US9075692B2 (en) Method, device and system for activating on-line patch
TWI566180B (en) A system and method thereof for creating dynamically attachable and detachable binary files
CN111897570B (en) Multi-dependency item file extraction method and device based on Maven plug-in
EP2082318B1 (en) Register-based instruction optimization for facilitating efficient emulation of an instruction stream
JP2018049506A (en) Determination device and determination method
CN111562934B (en) Software system upgrading method based on hot patch, terminal and storage medium
CN103345412A (en) Patching method and device
JP2008502968A (en) Method for loading software comprising an intermediate object-oriented language onto a portable device
CN112099880B (en) Method and system for reducing application program driven by scene
CN105224309A (en) A kind of method and apparatus transferring function
US9152438B2 (en) Object linking based on a determined linker order
US8413132B2 (en) Techniques for resolving read-after-write (RAW) conflicts using backup area
US10747514B2 (en) Reduced save and restore instructions for call-clobbered registers
CN113900673A (en) System installation package management method, device, storage medium and program product
US20110246966A1 (en) Embedding source files into program symbol files
US10310871B2 (en) Non-transitory computer-readable recording medium storing control program, control device and control method
US8185885B2 (en) Providing recovery data for program code

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

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

Assignor: SHANGHAI BAUD DATA COMMUNICATION Co.,Ltd.

Contract record no.: X2020980003092

Date of cancellation: 20210809

EC01 Cancellation of recordation of patent licensing contract
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

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