CN101470619A - Application program dynamic loading method based on microkernel operating system - Google Patents

Application program dynamic loading method based on microkernel operating system Download PDF

Info

Publication number
CN101470619A
CN101470619A CNA2008100037176A CN200810003717A CN101470619A CN 101470619 A CN101470619 A CN 101470619A CN A2008100037176 A CNA2008100037176 A CN A2008100037176A CN 200810003717 A CN200810003717 A CN 200810003717A CN 101470619 A CN101470619 A CN 101470619A
Authority
CN
China
Prior art keywords
symbol
application program
operating system
program
loading method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2008100037176A
Other languages
Chinese (zh)
Inventor
张木军
赵俊化
蓝彩萍
胡胜发
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ANKAI (GUANGZHOU) SOFTWARE TECHN Co Ltd
Original Assignee
ANKAI (GUANGZHOU) SOFTWARE TECHN 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 ANKAI (GUANGZHOU) SOFTWARE TECHN Co Ltd filed Critical ANKAI (GUANGZHOU) SOFTWARE TECHN Co Ltd
Priority to CNA2008100037176A priority Critical patent/CN101470619A/en
Publication of CN101470619A publication Critical patent/CN101470619A/en
Pending legal-status Critical Current

Links

Abstract

The invention discloses an application program dynamic loading method based on a micronucleus operating system, which comprises the following steps: analyzing the format of an object program, calculating and distributing the size of memory which is needed by a code segment and a data segment in a module, coping the code segment and the data segment to the memory, determining a symbol which needs to modify an address according to relocation information of an object file, finding out an original migration of the symbol which needs to modify from a symbol table and a string table, calculating a practical operation address of the symbol, and filling the practical operation address of the symbol to the object program. The application program dynamic loading method greatly reduces the demands of the system for the memory, and does not need the supporting of the operating system which is based on the virtual memory technology. Furthermore, each application program also just pays attention to the development and the testing itself, and the application program after upgrading can be put into service through being directly covered on an original file. Different application programs are coupled through an interface, thereby effectively increasing the development efficiency, and reducing the development complexity.

Description

A kind of application program dynamic loading method based on microkernel operating system
Technical field
The present invention relates to a kind of application program dynamic loading method based on microkernel operating system.
Background technology
In recent years, along with continuous advancement in technology, increased increasing function on the mobile hand-held devices such as mobile phone, PDA, MP3, PMP.For the developer, function of every increase, just meaning increases some application programs.And all application programs all will be carried out by internal memory in the ambulatory handheld formula equipment.Therefore, how farthest rationally to utilize internal memory just to become software developer's key issue.
Present existing technical scheme is:
PC intelligent operating system aspect: the dynamic module scheme based on the PE form (as the dll dynamic link library, the exe executable file) that Microsoft is arranged on the Windows; What open standard was arranged on the Unix/Linux dynamically shares scheme (as the dynamic shared file of so, bin executable file) based on the ELF form.
Embedded intelligence operating system such as WinCE, ulinux have also realized the dynamic load technology of module.
General character of above dynamic loading method is all need be based on the operating system of supporting MMU (Memory ManagementUnit, memory management unit), and this is that common microkernel operating system (comprising nucleus) is not available.
Present microkernel operating system (nucleus/ucos/threadx comparatively general in mobile hand-held device ...) kernel itself can only all application programs of static loading.Static loading application programs can cause two serious consequences: the first, and application program is more and more, and the demand of internal memory is increasing, has also therefore caused the cost of end product more and more higher; The second, in case certain application need is changed, just need debug again and test total system, greatly prolonged the Products Development cycle.
Summary of the invention
For overcoming above-mentioned deficiency, the object of the present invention is to provide a kind of application program dynamic loading method based on microkernel operating system, by at microkernel operating system (nucleus/ucos/threadx ...) the middle dynamic loading method of introducing, application programs realizes dynamic load.
For finishing the foregoing invention purpose, the technical scheme that the present invention takes is:
A kind of application program dynamic loading method based on microkernel operating system, it mainly may further comprise the steps:
A. resolve the form of target program, calculate and distribute code segment and the needed memory size of data segment in this module;
B. copy code segment and data segment in this internal memory;
C. according to the relocation information of file destination, need to determine the symbol of modified address;
D. find the original offset that needs the symbol revised from symbol table and string table;
E. calculate the actual motion address of this symbol;
F. the actual motion address with symbol is filled into target program.
Wherein, step a can be divided into plurality of sections with target program in the resolving to target program: code segment, data segment etc.When copying internal memory to, the data in the section must be continuous on memory headroom; And can be discontinuous on memory headroom between section and the section.This processing mode can reduce the demand of application program to the continuous memory headroom of memory headroom especially bulk.In addition, when other application programs of system were called the subroutine that has loaded once more, if this subroutine belongs to global module, code segment and data segment all can be shared so.
For the dynamic load of the application program of multimode, above-mentioned steps d, step e and step f just carry out in the time of can being deferred to program run, need just not carry out in the loading procedure of program.
And the map space internal memory of resource that the unloading of application program distributes only need be released in this program loading procedure time the and module is just passable.
Application of the present invention has significantly reduced the demand of system to internal memory, need not based on the operating system support that the virtual memory technology is arranged.In addition, each application program also only needs to pay close attention to the development﹠ testing of self, and the application program after the upgrading directly covers original and can enable; And only be coupled by interface between different application programs, improved development efficiency effectively, reduced complexity of developing.
Description of drawings
Fig. 1 is the synoptic diagram of application program dynamic load process.
Embodiment
Below in conjunction with Fig. 1 implementation procedure of the present invention is done concrete elaboration.
The source code of supposing module is A.c:
int?gb_data1=9;
int?gb_bss1;
int?myfunc1()
{
gb_bss1=6;
return?gb_data1+gb_bss1;
}
int?vme_main()
{
return?myfunc1();
}
Use the GCC compiler that above-mentioned source code is compiled into ELF object module A.so.
Below be the loading procedure of target program:
A. resolve the form of target program, calculate and distribute code segment and the needed memory size of data segment in this module;
(1) at first resolve object module A.so file, analyze its joint table distributed intelligence:
Every ELF file destination that is compiled into Open Standard, no matter GCC or business-like ADS that compiler is increased income, always these file destinations can be as shown in table 1 substantially:
Table 1 destination file format table:
Figure A200810003717D0005111345QIETU
When resolving the ELF file destination, at first watch its ELF head content whether match-on criterion defines, know from program header that then the code of this object module leaves that deviation post and the total length of file destination in.Then read the joint table.The joint table of general objectives file can be pointed out to have what joints in this document content, and what content what each joint was deposited is, where this joint is offset to end from where being offset.By resolving this joint table data, the joint table information that can obtain object module A.so is as follows:
The joint table of table 2 object module A.so:
Sections:
Idx?Name Size File?off
0.hash 000000bc 00000094
1.dynsym 000001c0 00000150
2.dynstr 00000095 00000310
3.rel.got 00000010 000003a8
4.rel.plt 00000008 000003b8
5.plt 00000020 000003c0
6.text 0000004c 000003e0
7.data 00000004 0000052c
8.got 00000018 00000530
9.dynamic 00000068 00000548
10.bss 00000004 000005b0
11.stack 00000000 000005b0
...
14.sym 00000200 000008a0
15.str 0000009c 00000aa0
...
Illustrate:
Gauge outfit Size represents the data length of this joint in the table 2, and File off represents where the data content of certain joint begins skew in file destination,
.hash the various symbols of quoting in the representation module hash concordance list data section;
.dynsym, sym is the data section of various symbolic information in the representation module;
.dynstr, str is the data section of the name character string of various symbols in the representation module;
.rel.got .rel.plt is the data section of interior various symbols of module or data relocation information;
.plt .text is the code data joint of module;
.data .bss is the data section of module;
.got be a data section of the actual address of the various symbols quoted of storage module;
.dynamic be the data section of the more inner multidate informations of representation module.
Wherein the code segment that need use of the present invention comprises .plt for A.so .text, data .got4 joint table; Data segment comprises .bss1 joint table;
(2) can calculate by the information in the table 2:
Length=the 0x20+0x4c+0x4+0x18=0x88 of code segment
Length=the 0x4 of data segment
(3) dynamic allocation of codes section internal memory and data segment internal memory, length is respectively 0x88 and 0x4,
Suppose that the memory address that distributes is respectively code_addr and bss_addr.
B. copy code segment and data segment in this internal memory;
.plt .text .data, the content of .got joint copies the code segment internal memory to; The content of .bss joint is copied to the data segment internal memory.When copying internal memory to, the data in the section must be continuous on memory headroom; And can be discontinuous on memory headroom between section and the section, can reduce the demand of application program like this to the continuous memory headroom of memory headroom especially bulk.
In addition, when other application programs of system were called the subroutine that has loaded once more, if this subroutine belongs to global module, code segment and data segment all can be shared so.
C. according to the relocation information of file destination, need to determine the symbol of modified address;
For A.so and the locating information of overstating comprises .rel.got, .rel.plt 2 joints are shown, from table 2, can learn, the starting position of these two joint tables lays respectively at skew 0x3a8 and 0x3b8, copy the data signal of these deviation posts from file destination A.so, wherein the data of the rightmost side be the left side binary content compilation resolve readable text, content is as shown in table 3, the deposit data form of these 2 joint table contents all is the same, each relocation information comprises 8 bytes, the data that preceding 4 bytes refer to which corresponding in target program address need to revise, and which symbol is the content that back 4 bytes refer to this need modified address correspondence be.
As shown in table 3, one of them relocation information 3a8:00000544 and 3ac:00001115 comprise 8 bytes, preceding 4 byte 3a8:00000544, the data that refer to corresponding 00000544 this address in the target program need to revise, 4 bytes in back, such as 3ac:00001115, the symbol that refers to the content of this need modified address correspondence is 00001115.
Table 3 relocation information joint table:
000003a8<.rel.got>:
3a8:00000544
3ac:00001115
3b0:00000540
3b4:00001b15
000003b8<.rel.plt>:
3b8:0000053c
3bc:00001916
Below 2 joint table .rel.got in this table 3 and .rel.plt respectively being analyzed a relocation information is example.
Table 4.rel.got joint table:
000003a8<.rel.got>:
3a8:00000544
3ac:00001115
In the table 4, this relocation information represents that target program skew 0x544 place content need revise, this content, and promptly being offset in the file destination is the data at 0x544 place, should fill the actual motion address behind 0x11 the symbol resolution among the joint table .dynsym.
Illustrate: 3ac:00001115; Only use wherein preceding 6 bits 000011.
Table 5.rel.plt joint table:
000003b8<.rel.plt>:
3b8:0000053c
3bc:00001916
In the table 5, this relocation information represents that target program skew 0x53c place content need revise, this content, and promptly being offset in the file destination is the data at 0x53c place, should fill the actual motion address behind 0x19 the symbol resolution among the joint table .dynsym.
Illustrate: 3bc:00001916; Only use wherein preceding 6 bits 000019.
D. find the original offset that needs the symbol revised from symbol table and string table;
Symbol table and string table refer to .dynsym and .dynstr respectively, and the content of symbol table .dynsym is as shown in table 6:
Table 6.dynsym symbol table:
00000150<.dynsym>:
...
260:00000031
264:000005b0
268:00000004
26c:000b0011
...
2e0:00000029
2e4:000003e0
2e8:00000040
2ec:00070012
In the table 6, each symbolic information, such as 260:00000031 264:000005b0 268:0000000426c:000b0011, first 4 byte, 00000031 its community string index community of expression, second 4 byte 000005b0 represents its actual address skew, and preceding 2 byte 000b represent the joint table at this symbol place among the 4th 4 byte 000b0011.
Because the length of each symbolic information is 0x10 in this object module,
So the position=0x150+0x11*0x10=0x260 of 0x11 symbol, wherein, 0x150 represents that 0x11 symbol 0x150 place in file destination begins skew, and this value can obtain from the File off field value of the symbol table .dynsym correspondence of table 2.Corresponding tables 6 can be found, and the actual address skew of 0x11 symbol is 0x5b0.According to 000b, can see from table 2 from 0 and counting that 0x0b joint table is the .bss joint, so this symbol belongs to the .bss section.
Position=the 0x150+0x19*0x10=0x2e0 of 0x19 symbol, corresponding tables 6 can be found, and the actual address skew of this symbol is 0x3e0, according to 0007, can see from table 2 from 0 and counting that 0x06 joint table is the .text joint, so this symbol belongs to the .text section.
Table 7.dynstr string table:
00000310<.dynstr>:
Figure A200810003717D00091
Drawing 0x11 symbol corresponding characters string by table 7 is gb_bss1, and 0x19 symbol corresponding characters string is myfunc1.
E. calculate the actual motion address of this symbol;
According to the memory address that preceding step a is distributed, can parse the actual address of symbol,
Symbol gb_bss1 actual address=0x5b0+bss_addr
Symbol myfunc1 actual address=0x3e0+code_addr
F. the actual motion address with symbol is filled into target program;
According to step a, for
Skew 0x544 should fill at the place actual motion address of 0x11 symbol gb_bss1,
Skew 0x53c should fill at the place actual motion address of 0x19 symbol myfunc1,
In fact these skews are positioned at the .got joint, as shown in table 8;
Table 8.got joint table:
00000530<.got>:
530:00000548
...
53c:000003c0
...
Final modification is:
0x544+code_addr place, address content modification is 0x5b0+bss_addr
0x53c+code_addr place, address content modification is 0x3e0+code_addr
G. resolve the actual motion address of deriving symbol;
From the address of symbol table and string table derivation api function, their content is as shown in table 9:
Table 9.sym joint table:
000008a0<.sym>:
...
a10:00000045
a14:00000420
a18:0001000c
a1c:00070012
Wherein, first its community string index community of 4 byte representation in each symbolic information, its actual address skew of second 4 byte representation, the joint table at preceding 2 these symbol places of byte representation in the 4th byte.
Traversal symbol table and string table, inquiry derivative function vme_main symbol, as shown in table 10, that draw 0x17 symbol correspondence is vme_main, this symbol offset is 0x420, and according to 0007, can find this symbol from table 2 and belong to the .text section.
Table 10.str table:
00000aa0<.str>:
Figure A200810003717D00111
Table 11vme.main table:
00000420<vme_main>:
vme_main():
420:e52de004 str r14,[r13,-#4]!
424:e49de004 ldr r14,[r13],#4
428:eaffffe8 b 3d0<myfunc1-0x10>
Draw the actual derivation of the operation address=0x420+code_addr of this symbol at last by table 11.
H. move modularity function;
Owing to derived the actual motion address of interface function vme_main, can move modularity function.
The present invention is for the dynamic load of the application program of multimode, above-mentioned steps d, and step e and step f just carry out in the time of can being deferred to program run, need just not carry out in the loading procedure of program.
And the map space internal memory of resource that the unloading of application program distributes only need be released in this program loading procedure time the and module is just passable.

Claims (4)

1, a kind of application program dynamic loading method based on microkernel operating system is characterized in that it comprises following steps:
A. resolve the form of target program, calculate and distribute code segment and the needed memory size of data segment in this module;
B. copy code segment and data segment in this internal memory;
C. according to the relocation information of file destination, need to determine the symbol of modified address;
D. find the original offset that needs the symbol revised from symbol table and string table;
E. calculate the actual motion address of this symbol;
F. the actual motion address with symbol is filled into target program.
2, a kind of application program dynamic loading method according to claim 1 based on microkernel operating system, it is characterized in that, among the described step a, in resolving to target program, earlier target program is divided into plurality of sections, when copying internal memory to, the data in the section must be continuous on memory headroom, and discontinuous on memory headroom between section and the section.
3, a kind of application program dynamic loading method according to claim 2 based on microkernel operating system, it is characterized in that, when other application programs of system are called the subroutine that has loaded once more, if this subroutine belongs to global module, code segment and data segment all can be shared so.
4, a kind of application program dynamic loading method according to claim 1 based on microkernel operating system, it is characterized in that, dynamic load for the application program of multimode, described steps d, step e and step f just carry out when being deferred to program run, need just not carry out in the loading procedure of program.
CNA2008100037176A 2007-12-29 2008-01-15 Application program dynamic loading method based on microkernel operating system Pending CN101470619A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008100037176A CN101470619A (en) 2007-12-29 2008-01-15 Application program dynamic loading method based on microkernel operating system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200710033030 2007-12-29
CN200710033030.2 2007-12-29
CNA2008100037176A CN101470619A (en) 2007-12-29 2008-01-15 Application program dynamic loading method based on microkernel operating system

Publications (1)

Publication Number Publication Date
CN101470619A true CN101470619A (en) 2009-07-01

Family

ID=40828111

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008100037176A Pending CN101470619A (en) 2007-12-29 2008-01-15 Application program dynamic loading method based on microkernel operating system

Country Status (1)

Country Link
CN (1) CN101470619A (en)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101794567A (en) * 2010-02-10 2010-08-04 中兴通讯股份有限公司 Method and terminal for loading pictures
CN101984409A (en) * 2010-11-10 2011-03-09 南京南瑞继保电气有限公司 Method for injecting test codes for Linux system
WO2011054223A1 (en) * 2009-11-04 2011-05-12 中兴通讯股份有限公司 Method and device for dynamically loading relocatable file
CN102147743A (en) * 2011-03-28 2011-08-10 博视联(苏州)信息科技有限公司 Method for accelerating startup of embedded system application program
CN102819439A (en) * 2011-06-10 2012-12-12 中兴通讯股份有限公司 Method and device of dynamically loading multi-system application programs based on relocation
CN102831178A (en) * 2012-07-30 2012-12-19 华为技术有限公司 Method and device for redeploying multilevel storage
CN101702130B (en) * 2009-11-12 2012-12-26 深圳市五巨科技有限公司 Method for loading sharing function library with movable terminal and device thereof
CN104679561A (en) * 2015-02-15 2015-06-03 福建天晴数码有限公司 Dynamic link library file loading method and dynamic link library file loading system
CN105426223A (en) * 2015-12-25 2016-03-23 百度在线网络技术(北京)有限公司 Application loading method and device
CN106354536A (en) * 2016-08-31 2017-01-25 北京奇虎科技有限公司 Method and device of loading ELF file of Linux system in Windows system
WO2017067175A1 (en) * 2015-10-21 2017-04-27 百度在线网络技术(北京)有限公司 Method, apparatus and device for loading elf file, and computer storage medium
CN107729085A (en) * 2017-10-19 2018-02-23 北京空间飞行器总体设计部 A kind of On-board software dynamic loading method for supporting address to redirect
CN111190623A (en) * 2019-12-25 2020-05-22 北京中科晶上超媒体信息技术有限公司 Remote updating method of embedded operating system
CN111240765A (en) * 2020-01-15 2020-06-05 深圳英飞拓智能技术有限公司 LINUX compression application program loading method
CN111488282A (en) * 2020-04-13 2020-08-04 龙芯中科技术有限公司 Business function processing method and device, electronic equipment and storage medium
CN111597109A (en) * 2020-04-24 2020-08-28 清华大学 Defect detection method and system for cross-architecture firmware stack memory
CN111913762A (en) * 2020-08-20 2020-11-10 北京机电工程研究所 DSP dynamic loading method for reserving operation memory space
CN111931191A (en) * 2020-09-09 2020-11-13 中国人民解放军国防科技大学 Dynamic detection method and system for binary software stack overflow leakage hole of Linux platform
CN111984411A (en) * 2020-08-18 2020-11-24 上海睿赛德电子科技有限公司 Application relocation method for resource-constrained platform
US10908925B2 (en) 2017-11-20 2021-02-02 Huawei Technologies Co., Ltd. Dynamic loading method, and target file creation method and apparatus
WO2021057300A1 (en) * 2019-09-24 2021-04-01 中兴通讯股份有限公司 Method and apparatus for starting dynamically linked program, and computer readable storage medium
CN113111012A (en) * 2021-04-14 2021-07-13 景德镇市明泰精工瓷业有限公司 Application data locator generation method and application data locating method
WO2022237610A1 (en) * 2021-05-10 2022-11-17 阿里巴巴(中国)有限公司 Program compiling method and program loading method
CN117472456A (en) * 2023-12-27 2024-01-30 南京翼辉信息技术有限公司 Dynamic loading implementation method based on Shenwei processor embedded operating system

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011054223A1 (en) * 2009-11-04 2011-05-12 中兴通讯股份有限公司 Method and device for dynamically loading relocatable file
US8566372B2 (en) 2009-11-04 2013-10-22 Zte Corporation Method and device for dynamically loading relocatable file
CN101702130B (en) * 2009-11-12 2012-12-26 深圳市五巨科技有限公司 Method for loading sharing function library with movable terminal and device thereof
CN101794567A (en) * 2010-02-10 2010-08-04 中兴通讯股份有限公司 Method and terminal for loading pictures
CN101794567B (en) * 2010-02-10 2014-01-01 中兴通讯股份有限公司 Method and terminal for loading pictures
WO2011097874A1 (en) * 2010-02-10 2011-08-18 中兴通讯股份有限公司 Picture loading method and terminal
CN101984409B (en) * 2010-11-10 2013-03-13 南京南瑞继保电气有限公司 Method for injecting test codes for Linux system
CN101984409A (en) * 2010-11-10 2011-03-09 南京南瑞继保电气有限公司 Method for injecting test codes for Linux system
CN102147743A (en) * 2011-03-28 2011-08-10 博视联(苏州)信息科技有限公司 Method for accelerating startup of embedded system application program
CN102819439A (en) * 2011-06-10 2012-12-12 中兴通讯股份有限公司 Method and device of dynamically loading multi-system application programs based on relocation
CN102831178A (en) * 2012-07-30 2012-12-19 华为技术有限公司 Method and device for redeploying multilevel storage
WO2014019367A1 (en) * 2012-07-30 2014-02-06 华为技术有限公司 Method and device for redeploying multilevel storage
CN104679561B (en) * 2015-02-15 2018-07-06 福建天晴数码有限公司 A kind of method and system of dynamic link library file loading
CN104679561A (en) * 2015-02-15 2015-06-03 福建天晴数码有限公司 Dynamic link library file loading method and dynamic link library file loading system
WO2017067175A1 (en) * 2015-10-21 2017-04-27 百度在线网络技术(北京)有限公司 Method, apparatus and device for loading elf file, and computer storage medium
CN105426223A (en) * 2015-12-25 2016-03-23 百度在线网络技术(北京)有限公司 Application loading method and device
US11086638B2 (en) 2015-12-25 2021-08-10 Baidu Online Network Technology (Beijing) Co., Ltd. Method and apparatus for loading application
WO2017107415A1 (en) * 2015-12-25 2017-06-29 百度在线网络技术(北京)有限公司 Application loading method and device
CN105426223B (en) * 2015-12-25 2019-01-04 百度在线网络技术(北京)有限公司 Using loading method and device
WO2018040270A1 (en) * 2016-08-31 2018-03-08 北京奇虎科技有限公司 Method and device for loading linux-system elf file in windows system
CN106354536A (en) * 2016-08-31 2017-01-25 北京奇虎科技有限公司 Method and device of loading ELF file of Linux system in Windows system
CN107729085A (en) * 2017-10-19 2018-02-23 北京空间飞行器总体设计部 A kind of On-board software dynamic loading method for supporting address to redirect
US10908925B2 (en) 2017-11-20 2021-02-02 Huawei Technologies Co., Ltd. Dynamic loading method, and target file creation method and apparatus
WO2021057300A1 (en) * 2019-09-24 2021-04-01 中兴通讯股份有限公司 Method and apparatus for starting dynamically linked program, and computer readable storage medium
CN111190623A (en) * 2019-12-25 2020-05-22 北京中科晶上超媒体信息技术有限公司 Remote updating method of embedded operating system
CN111240765A (en) * 2020-01-15 2020-06-05 深圳英飞拓智能技术有限公司 LINUX compression application program loading method
CN111488282A (en) * 2020-04-13 2020-08-04 龙芯中科技术有限公司 Business function processing method and device, electronic equipment and storage medium
CN111488282B (en) * 2020-04-13 2023-11-07 龙芯中科技术股份有限公司 Service function processing method and device, electronic equipment and storage medium
CN111597109A (en) * 2020-04-24 2020-08-28 清华大学 Defect detection method and system for cross-architecture firmware stack memory
CN111597109B (en) * 2020-04-24 2022-03-11 清华大学 Defect detection method and system for cross-architecture firmware stack memory
CN111984411A (en) * 2020-08-18 2020-11-24 上海睿赛德电子科技有限公司 Application relocation method for resource-constrained platform
CN111913762A (en) * 2020-08-20 2020-11-10 北京机电工程研究所 DSP dynamic loading method for reserving operation memory space
CN111913762B (en) * 2020-08-20 2024-04-19 北京机电工程研究所 DSP dynamic loading method for reserving running memory space
CN111931191A (en) * 2020-09-09 2020-11-13 中国人民解放军国防科技大学 Dynamic detection method and system for binary software stack overflow leakage hole of Linux platform
CN113111012A (en) * 2021-04-14 2021-07-13 景德镇市明泰精工瓷业有限公司 Application data locator generation method and application data locating method
CN113111012B (en) * 2021-04-14 2023-07-25 景德镇市明泰精工瓷业有限公司 Application data locator generation method and application data locating method
WO2022237610A1 (en) * 2021-05-10 2022-11-17 阿里巴巴(中国)有限公司 Program compiling method and program loading method
CN117472456A (en) * 2023-12-27 2024-01-30 南京翼辉信息技术有限公司 Dynamic loading implementation method based on Shenwei processor embedded operating system

Similar Documents

Publication Publication Date Title
CN101470619A (en) Application program dynamic loading method based on microkernel operating system
CN101697131B (en) Method and device for dynamically loading relocatable file
US8615745B2 (en) Compiling code for an enhanced application binary interface (ABI) with decode time instruction optimization
JP5951022B2 (en) Code linking for enhanced application binary interface (ABI) using decode time instruction optimization
US10114745B2 (en) Assisted garbage collection in a virtual machine
US6757890B1 (en) Methods and apparatus for enabling local Java object allocation and collection
CN102081535B (en) Android-based application program upgrading method and system and application development platform
EP3267308B1 (en) Application loading method and device
CA2753626C (en) Packed data objects
US9104449B2 (en) Optimized execution of dynamic languages
CN106796522A (en) System and method for updating source code file
CN105183592B (en) Method and apparatus for supporting performance evaluation
US20040003377A1 (en) Converting byte code instructions to a new instruction set
CN103631573A (en) Method and system for obtaining execution time of transferable functions
Edler von Koch et al. Exploiting function similarity for code size reduction
CN103019787A (en) Function call relation determining method, hotfix updating method and hotfix updating device
CN107832057A (en) A kind of construction method and terminal of iOS applications
CN114327437A (en) Plug-in operation system, plug-in operation method and electronic equipment
Narayanan Issues in the design of a Java processor architecture
CN110737588A (en) automatic point burying method, device, medium and electronic equipment
CN106033364A (en) Method and system for upgrading Web application programs
EP3738028A1 (en) Reduced instructions to generate global variable addresses
CN104217021A (en) Reading server, terminal equipment and method for displaying reading contents
Cauderlier et al. A verified implementation of the bounded list container
CN102521255A (en) Method for rapidly analyzing executable file path from shortcut

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20090701