[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN117435257A - System loading method and device, storage medium, computer program product and chip - Google Patents

System loading method and device, storage medium, computer program product and chip Download PDF

Info

Publication number
CN117435257A
CN117435257A CN202311742795.9A CN202311742795A CN117435257A CN 117435257 A CN117435257 A CN 117435257A CN 202311742795 A CN202311742795 A CN 202311742795A CN 117435257 A CN117435257 A CN 117435257A
Authority
CN
China
Prior art keywords
segment
operating system
redirection
file
program
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
CN202311742795.9A
Other languages
Chinese (zh)
Other versions
CN117435257B (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.)
Midea Robozone Technology Co Ltd
Original Assignee
Midea Robozone Technology 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 Midea Robozone Technology Co Ltd filed Critical Midea Robozone Technology Co Ltd
Priority to CN202311742795.9A priority Critical patent/CN117435257B/en
Publication of CN117435257A publication Critical patent/CN117435257A/en
Application granted granted Critical
Publication of CN117435257B publication Critical patent/CN117435257B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a system loading method and device, a storage medium, a computer program product and a chip, and relates to the technical field of computers. The operating system loading method comprises the following steps: determining system firmware according to a system symbol table, application logic and a program loading component of an operating system; compiling to generate a binary file, and merging and recombining information segments of the binary file to obtain a first code segment, a first data segment and a first redirection segment of the binary file; carrying out static link on the first code segment and the system symbols in the first data segment according to the first redirection segment to obtain a second code segment; determining a program file to be loaded according to the first data segment, the second code segment and the first redirection segment; and loading the program file according to the system firmware.

Description

System loading method and device, storage medium, computer program product and chip
Technical Field
The present invention relates to the field of computer technology, and in particular, to a system loading method and apparatus, a storage medium, a computer program product, and a chip.
Background
The binary loading technique of the operating system refers to loading an executable file (such as a program) from a disk into a memory, and transferring control to an entry point of the program to start execution.
However, most of the existing binary loading technologies are large-scale operating systems, such as Windows, linux, and for small-scale operating systems, such as RTOS (Real Time Operating System, real-time operating system) embedded operating systems, the firmware is unified, the service code is updated slowly, the memory is small, no mapping of virtual addresses exists, and the dynamic loading scheme of the large-scale operating system is not applicable to the small-scale operating system.
Disclosure of Invention
The present invention aims to solve at least one of the technical problems existing in the prior art or related art.
To this end, a first aspect of the present invention is to propose an operating system loading method.
A second aspect of the present invention is to provide an operating system loading device.
A third aspect of the invention is directed to an electronic device.
A fourth aspect of the invention is directed to a readable storage medium.
A fifth aspect of the invention is directed to a computer program product.
A sixth aspect of the invention is directed to a chip.
In view of this, according to one aspect of the present invention, there is provided an operating system loading method, the method comprising: determining system firmware according to a system symbol table, application logic and a program loading component of an operating system; compiling to generate a binary file, and merging and recombining information segments of the binary file to obtain a first code segment, a first data segment and a first redirection segment of the binary file; carrying out static link on the first code segment and the system symbols in the first data segment according to the first redirection segment to obtain a second code segment; determining a program file to be loaded according to the first data segment, the second code segment and the first redirection segment; and loading the program file according to the system firmware.
The execution main body of the technical scheme of the operating system loading method provided by the invention can be electronic equipment, can also be an operating system loading device, and can also be determined according to actual use requirements, and is not particularly limited. In order to describe the operating system loading method provided by the invention more clearly, the following description uses an execution body of the operating system loading method as an operating system loading device.
Specifically, the operating system loading method provided by the invention comprises a system firmware preparation stage, a program file generation stage and a program file execution stage. In the operating system loading method provided by the invention, in the process of loading the operating system, in the preparation stage of the system firmware, the operating system loading device determines and acquires a system symbol table which is needed to be exported by the operating system, and acquires basic system application logic of the operating system and an analysis loading component for loading and executing a program file, namely a program loading component. On the basis, the operating system loading device performs compression optimization on the acquired system symbol table, and packages the system symbol table based on basic system application logic of the operating system, the system symbol table after compression optimization and an analysis loading component of a program file to obtain system firmware of the operating system. At this time, the system firmware of the operating system includes basic system application logic of the operating system, a compressed and optimized system symbol table, and an analysis loading component of the program file.
Further, in the program file generation stage, the operating system loading device develops an application program based on the development environment of the operating system, after the application program is developed, the application source code is compiled through a compiling tool of the operating system, and compiling results are output and combined, so that a corresponding binary file is obtained through compiling, and the binary file is an executable program. Further, the operating system loading device pre-links the combined executable program, namely the binary file, based on a local static linking method, and outputs the program file to be loaded. Specifically, the operating system loading device compiles a plurality of information segments of the binary file by taking codes as units, and further, the operating system loading device performs merging and recombination on each information segment of the binary file through a linker based on the determined linking script, so as to obtain a first redirection segment, a first data segment and a first code segment of the binary file. Based on the method of local static link, the operating system loading device performs redirection calculation on the system symbol and the information segment of the binary file according to the obtained first redirection segment, the first data segment and the first code segment, and obtains a redirected second code segment. Specifically, the operating system loading device performs static linking on the first code segment and the system symbol in the first data segment according to the first redirection segment to obtain the second code segment. Further, the operating system loading device packages the second code segment, the first data segment and the first redirection segment to obtain the program file. In this way, in the process of loading the program file by the operating system, the code segment and the data segment of the program file do not need to be redirected, so that the loading speed of the program file is increased, and the loading efficiency of the operating system is improved.
Further, in the program file execution stage, the operating system loading device loads the obtained program file through an analysis loading component of the program file in the system firmware based on the system symbol table in the system firmware so as to load the program file into a memory of the operating system, and transfers control to an entry point of the program file to enable the program file to start executing in the operating system. Thus, the binary loading technology on the small operating system is realized, so that the small operating system can complete the loading and execution of the binary file. And the working environment of the operating system is optimized, so that the operating system can quickly and efficiently execute the binary executable file which is locally updated and stored or issued by the network under the condition of unchanged firmware, the service code update of the operating system can be free from the dependence on the OTA (Over-the-Air Technology) of the equipment, the quick update and execution of the application service code of the operating system are met, and the working efficiency of the operating system is improved.
According to the operating system loading method of the invention, the following additional technical features can be provided:
In some embodiments, optionally, the information segment includes a code segment, a read-only data segment, a writable data segment, and a redirection segment, and the merging and reorganizing the information segment of the binary file to obtain a first code segment, a first data segment, and a first redirection segment of the binary file, including: combining the code segment and the read-only data segment of the binary file into a first code segment; merging writable data segments of the binary file into a first data segment; the redirected segments of the binary file are merged into a first redirected segment.
In this technical solution, the information section of the binary file may specifically include a writable data section, a code section, a redirection section, and a read-only data section. The operating system loading device merges all read-only data segments and code segments in the binary file into a first code segment, the operating system loading device merges all writable data segments in the binary file into a first data segment, and the operating system loading device merges all redirection segments in the binary file into a first redirection segment. Therefore, the information segments of the binary file are combined and then subjected to redirection operation, so that the efficiency of the redirection operation is improved.
In some embodiments, optionally, the statically linking the first code segment and the system symbol in the first data segment according to the first redirection segment to obtain a second code segment includes: traversing the first redirection section, and carrying out redirection calculation on a system symbol with a redirection symbol being the first code section to obtain a third code section; acquiring offset information between a first code segment and a first data segment; traversing the first redirection section, carrying out redirection calculation on the redirection symbol which is a system symbol of the first data section, and adding a calculation result into the third code section to obtain a second code section.
In the technical scheme, the operating system loading device traverses the first redirection section, and performs redirection calculation on the system symbol with the redirection symbol being the first code section, namely, performs redirection calculation on the system symbol with the redirection symbol being the code section and the read-only data section, thereby obtaining a third code section. Further, the operating system loading device defines the first code segment and then is used for obtaining offset information between the first data segment and the first code segment. Further, the operating system loading device traverses the first redirection section, performs redirection calculation on the system symbol with the redirection symbol being the first data section based on the offset information, and adds the calculation result to the third code section to obtain the second code section. In this way, in the process of loading the program file by the operating system, the code segment and the data segment of the program file do not need to be redirected, so that the loading speed of the program file is increased, and the loading efficiency of the operating system is improved.
In some embodiments, optionally, determining the program file according to the first data segment, the second code segment, and the first redirection segment includes: deleting the redirection information of the first data segment and the second code segment, and reserving the redirection information of the system symbol table to obtain an updated first redirection segment; and packaging the first data section, the second code section and the updated first redirection section to obtain a program file.
In the technical scheme, the operating system loading device deletes the redirection information of the second code segment and the first data segment, and reserves the redirection information of the system symbol table to obtain the updated first redirection segment. On the basis, the operating system loading device packages the updated first redirection section, the updated second code section and the updated first data section, so that the program file is obtained. In this way, the size of the redirection segment is reduced, thereby reducing the size of the content occupied by the program file.
In some embodiments, optionally, loading the program file according to the system firmware includes: analyzing information segments of the program file, determining a system symbol name corresponding to the program file, and distributing a physical address for each information segment; determining a target system symbol according to the system symbol name and a system symbol table in system firmware; linking the program files according to the target system symbol and the information segment of the program files to obtain execution files; and constructing an operation task according to the execution file, and executing the operation task.
In this technical solution, the operating system loading device reads the program file to be loaded from the network or the local storage interval, for example, the operating system loading device reads the program file to be loaded from the storage medium or the file system, and parses each information segment of the read program file to obtain a system symbol name corresponding to the program file, and allocates a physical address for each information segment of the program file, that is, allocates a memory for each information segment of the program file. Further, the operating system loading device performs symbol searching and redirection operation on the part needing redirection in the program file based on the parsed system symbol name. Specifically, the operating system loading device performs matching comparison on each system symbol in the system symbol table in the system firmware based on the parsed system symbol name, so as to find a target system symbol corresponding to the program file. Further, the operating system loading device links the program file according to the determined target system symbol and the information segment of the program file, namely, redirects the program file to construct an executable environment to obtain an execution file. Further, the operating system loading device constructs an operating task of the operating system according to the obtained execution file, and executes the constructed operating task through an analysis loading component of the program file in the system firmware so as to load the program file into a memory of the operating system, and transfer control right to an entry point of the program file, so that the program file starts to execute in the operating system. In this way, the task management mechanism, the memory management mechanism and the redirection operation of the operating system are combined, so that the binary loading technology on the small operating system is realized, and the small operating system can complete the loading and execution of the binary file.
In some embodiments, optionally, determining the system firmware according to a system symbol table, application logic, and a program loading component of the operating system includes: coding the system symbol table to obtain a coded system symbol table; and packaging the coded system symbol table, the application logic and the program loading component to obtain the system firmware.
In the technical scheme, the operating system loading device encodes the acquired system symbol table to perform compression optimization on the acquired system symbol table to obtain the encoded system symbol table. On the basis, the operating system loading device packages basic system application logic, the coded system symbol table and the analysis loading component of the program file of the operating system to obtain system firmware of the operating system. Therefore, the system symbol table is compressed and optimized, and then the system firmware is determined based on the system symbol table, so that the size of a binary file at the firmware end is reduced, the size of a program file is reduced, and the efficiency of searching for the target system symbol subsequently can be improved.
According to a second aspect of the present invention, there is provided an operating system loading apparatus, comprising: the processing unit is used for determining system firmware according to a system symbol table, application logic and a program loading component of the operating system; the processing unit is also used for compiling and generating a binary file, and combining and reorganizing the information segments of the binary file to obtain a first code segment, a first data segment and a first redirection segment of the binary file; the processing unit is further used for carrying out static linking on the first code segment and the system symbols in the first data segment according to the first redirection segment to obtain a second code segment; the processing unit is further used for determining a program file to be loaded according to the first data section, the second code section and the first redirection section; and the processing unit is also used for loading the program file according to the system firmware.
The invention provides an operating system loading device which comprises a processing unit, wherein the process of loading an operating system through the processing unit comprises a system firmware preparation stage, a program file generation stage and a program file execution stage. Specifically, during the process of loading the operating system, in the preparation stage of the system firmware, the processing unit determines and acquires a system symbol table which needs to be exported by the operating system, and acquires basic system application logic of the operating system and a parsing loading component for loading and executing a program file, namely a program loading component. On the basis, the processing unit performs compression optimization on the acquired system symbol table, and packages the system symbol table based on basic system application logic of the operating system, the system symbol table after compression optimization and an analysis loading component of a program file to obtain system firmware of the operating system. At this time, the system firmware of the operating system includes basic system application logic of the operating system, a compressed and optimized system symbol table, and an analysis loading component of the program file.
Further, in the program file generation stage, the processing unit develops an application program based on the development environment of the operating system, after the application program is developed, the application source code is compiled through a compiling tool of the operating system, and the compiling results are output and combined, so that a corresponding binary file is obtained through compiling, and the binary file is an executable program. Further, the processing unit pre-links the combined executable program, namely binary files, based on a local static linking method, and outputs the program files to be loaded. Specifically, the processing unit takes codes as units, compiles a plurality of information segments of the binary file, and further, based on the determined linking script, the processing unit performs merging and reorganization on each information segment of the binary file through a linker, so as to obtain a first redirection segment, a first data segment and a first code segment of the binary file. Based on the method of local static link, the processing unit performs redirection calculation on the system symbol and the information segment of the binary file according to the obtained first redirection segment, the first data segment and the first code segment, and obtains a redirected second code segment. Specifically, the processing unit performs static linking on the first code segment and the system symbol in the first data segment according to the first redirection segment to obtain the second code segment. Further, the processing unit packages the second code segment, the first data segment and the first redirection segment to obtain the program file. In this way, in the process of loading the program file by the operating system, the code segment and the data segment of the program file do not need to be redirected, so that the loading speed of the program file is increased, and the loading efficiency of the operating system is improved.
Further, in the program file execution stage, the processing unit loads the obtained program file through an analysis loading component of the program file in the system firmware based on the system symbol table in the system firmware, so as to load the program file into the memory of the operating system, and transfers the control right to the entry point of the program file, so that the program file starts to execute in the operating system. Thus, the binary loading technology on the small operating system is realized, so that the small operating system can complete the loading and execution of the binary file. And the working environment of the operating system is optimized, so that the operating system can quickly and efficiently execute the binary executable file which is locally updated and stored or issued by the network under the condition of unchanged firmware, the service code update of the operating system can get rid of the dependence on the OTA of the whole device, the quick update and execution of the application service code of the operating system are satisfied, and the working efficiency of the operating system is improved.
According to a third aspect of the present invention, there is provided an electronic device comprising a processor and a memory storing a program or instructions executable on the processor, the program or instructions implementing the steps of the operating system loading method according to any of the above aspects when executed by the processor. Therefore, the electronic device according to the third aspect of the present invention has all the advantages of the operating system loading method in any one of the above first aspect, and will not be described herein.
According to a fourth aspect of the present invention, there is provided a readable storage medium having stored thereon a program or instructions which, when executed by a processor, implement an operating system loading method according to any of the above-mentioned aspects. Therefore, the readable storage medium according to the fourth aspect of the present invention has all the advantages of the operating system loading method according to any one of the above first aspect, and will not be described herein.
According to a fifth aspect of the present invention, a computer program product is presented, comprising a computer program which, when executed by a processor, implements the operating system loading method according to any of the above-mentioned aspects. Therefore, the computer program product according to the fifth aspect of the present invention has all the advantages of the operating system loading method according to any one of the above first aspect, and will not be described herein.
According to a sixth aspect of the present invention, a chip is provided, the chip comprising a program or instructions for implementing the steps of the operating system loading method according to any of the above-mentioned aspects, when the chip is running. Therefore, the chip according to the sixth aspect of the present invention has all the advantages of the operating system loading method according to any one of the above first aspect, and will not be described herein.
Additional aspects and advantages of the invention will be set forth in part in the description which follows, or may be learned by practice of the invention.
Drawings
The foregoing and/or additional aspects and advantages of the invention will become apparent and may be better understood from the following description of embodiments taken in conjunction with the accompanying drawings in which:
FIG. 1 is a flow chart of an operating system loading method according to an embodiment of the present invention;
FIG. 2 is a second flow chart of a loading method of an operating system according to an embodiment of the invention;
FIG. 3 is a third flow chart illustrating a loading method of an operating system according to an embodiment of the invention;
FIG. 4 illustrates one of the schematics of an operating system loading method of an embodiment of the present invention;
FIG. 5 illustrates a second schematic diagram of an operating system loading method according to an embodiment of the present invention;
FIG. 6 is a block diagram illustrating the structure of an operating system loader according to an embodiment of the present invention;
fig. 7 shows a block diagram of an electronic device according to an embodiment of the invention.
Detailed Description
In order that the above-recited objects, features and advantages of the present invention will be more clearly understood, a more particular description of the invention will be rendered by reference to the appended drawings and appended detailed description. It should be noted that, without conflict, the embodiments of the present invention and features in the embodiments may be combined with each other.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention, however, the present invention may be practiced in other ways than those described herein, and the scope of the invention is therefore not limited to the specific embodiments disclosed below.
The system loading method and apparatus, the storage medium, the computer program product and the chip provided in the embodiments of the present application are described in detail below with reference to fig. 1 to 7 through specific embodiments and application scenarios thereof.
In one embodiment of the present invention, as shown in fig. 1, the operating system loading method may specifically include the following steps 102 to 110:
step 102, determining system firmware according to a system symbol table, application logic and a program loading component of an operating system;
104, compiling to generate a binary file, and merging and recombining information segments of the binary file to obtain a first code segment, a first data segment and a first redirection segment of the binary file;
step 106, carrying out static link on the first code segment and the system symbols in the first data segment according to the first redirection segment to obtain a second code segment;
step 108, determining a program file to be loaded according to the first data segment, the second code segment and the first redirection segment;
Step 110, loading the program file according to the system firmware.
The execution main body of the technical scheme of the operating system loading method provided by the invention can be electronic equipment, can also be an operating system loading device, and can also be determined according to actual use requirements, and is not particularly limited. In order to describe the operating system loading method provided by the invention more clearly, the following description uses an execution body of the operating system loading method as an operating system loading device.
The loading method of the operating system is used for realizing the binary loading technology on a small operating system such as an RTOS embedded operating system, so that the small operating system such as the RTOS embedded operating system can finish loading and executing binary files.
The RTOS is an open-source real-time operating system kernel, is a small real-time embedded operating system, has low resource requirements and is generally used for a low-resource hardware platform. Further, the RTOS has advantages of simplicity and easiness in use, portability, customizable performance, high efficiency, reliability and the like, and is widely applied to embedded systems, such as embedded systems in the fields of smart home, automobiles, medical equipment, aerospace and the like.
Furthermore, the system code and the service code of the RTOS embedded operating system are both statically linked together, the firmware is unified, and key parameters such as starting parameters, executing parameters and offset parameters of the RTOS embedded operating system are closely related to parameters of a firmware packaging stage. Thus, the service code of the RTOS embedded operation system cannot be updated rapidly, and the RTOS embedded operation system needs to perform OTA operation on the whole device where the RTOS embedded operation system is located. Furthermore, the RTOS embedded operating system is generally a low-cost platform, the memory is small, no mapping of virtual addresses exists, and the current binary file dynamic loading scheme based on a large operating system such as a Linux system and a Windows system is not suitable for the low-cost platform such as the RTOS embedded operating system.
Therefore, the present invention provides an operating system loading method, which includes a system firmware preparation stage, a program file generation stage and a program file execution stage. Specifically, in the operating system loading method provided by the invention, in the process of loading a small operating system such as an RTOS embedded operating system, in the preparation stage of system firmware, as shown in fig. 4, an operating system loading device determines and acquires a system symbol table which needs to be exported by the operating system, and acquires basic system application logic of the operating system and an analysis loading component for loading and executing a program file, namely a program loading component. On the basis, the operating system loading device performs compression optimization on the acquired system symbol table, and packages the system symbol table based on basic system application logic of the operating system, the system symbol table after compression optimization and an analysis loading component of a program file to obtain system firmware of the operating system. At this time, the system firmware of the operating system includes basic system application logic of the operating system, a compressed and optimized system symbol table, and an analysis loading component of the program file.
Further, in the program file generation stage, as shown in fig. 4, the operating system loading device develops an application program based on the development environment of the operating system, after the application program is developed, compiles application source codes through a compiling tool of the operating system, and outputs and merges compiling results, so that a corresponding binary file is obtained through compiling, and the binary file is an executable program. Further, the operating system loading device pre-links the combined executable program, namely binary files, based on a local static linking method, and outputs the obtained program files to be loaded, such as ELF (Executable and Linkable Format executable and linkable format) program files. Specifically, as shown in fig. 5, the operating system loading device compiles a plurality of information segments of the binary file in units of codes, and further, the operating system loading device performs merging and linking on each information segment of the binary file through a linker based on the determined linking script, so as to obtain a first redirection segment, a first data segment and a first code segment of the binary file. Based on the method of local static link, the operating system loading device performs redirection calculation on the system symbol and the information segment of the binary file according to the obtained first redirection segment, the first data segment and the first code segment, and obtains a redirected second code segment. Specifically, the operating system loading device performs static linking on the first code segment and the system symbol in the first data segment according to the first redirection segment to obtain the second code segment. Further, the operating system loading device packages the second code segment, the first data segment and the first redirection segment to obtain the program file. In this way, in the process of loading the program file by the operating system, the code segment and the data segment of the program file do not need to be redirected, so that the loading speed of the program file is increased, and the loading efficiency of the operating system is improved.
Further, in the program file execution stage, the operating system loading device loads the obtained program file through an analysis loading component of the program file in the system firmware based on the system symbol table in the system firmware so as to load the program file into a memory of the operating system, and transfers control to an entry point of the program file to enable the program file to start executing in the operating system. Thus, the binary loading technology on the small operating system is realized, so that the small operating system can complete the loading and execution of the binary file. And the working environment of the operating system is optimized, so that the operating system can quickly and efficiently execute the binary executable file which is locally updated and stored or issued by the network under the condition of unchanged firmware, the service code update of the operating system can get rid of the dependence on the OTA of the whole device, the quick update and execution of the application service code of the operating system are satisfied, and the working efficiency of the operating system is improved.
The operating system loading device performs static link on the system symbols in the same information segment and deletes the corresponding redirection information in the process of redirecting the system symbols and the information segment of the binary file. Further, the operating system loading device performs segment address arrangement on the system symbols in the multi-information segment, performs static link on the system symbols in the multi-information segment according to the arranged offset information, and deletes the corresponding redirection information. Further, for the system notation, the operating system loading means retains its redirection information for subsequent use in running state linking of the program file. Therefore, a dynamic link mode does not exist, the characteristic of a dynamic link system symbol is not provided externally, and the link is performed by a local static link method, so that the loading speed of the program file is increased, and the size of a redirection section in the program file is reduced.
Further, the operating system may be a small operating system such as an RTOS embedded operating system, which is not particularly limited herein.
Further, the program file may be an ELF program file, where an ELF is a file format for a binary file, an executable file, an object code, a shared library, and a core dump format file, and the ELF program file includes a code section, a data section, a symbol table, and the like. The particular type of program file is determined by the type of operating system and is not particularly limited herein.
Further, the binary file is a file that can be executed in a CPU (Central Processing Unit ) generated after compiling the high-level language code.
Further, the system firmware contains all binary files of normal functional logic that the operating system runs on the device.
Further, linking is an operation of redirecting the compiled separate binary file according to the address where the binary file actually operates.
In some embodiments of the present invention, optionally, as shown in fig. 2, the step 110 may specifically include the following steps 110a to 110d:
step 110a, analyzing the information segments of the program file, determining the system symbol names corresponding to the program file, and distributing physical addresses for each information segment;
Step 110b, determining a target system symbol according to the system symbol name and a system symbol table in the system firmware;
step 110c, linking the program file according to the target system symbol and the information segment of the program file to obtain an execution file;
and 110d, constructing an operation task according to the execution file, and executing the operation task.
In this embodiment, in the program file execution stage, as shown in fig. 4, in the process that the operating system loading device loads the obtained program file according to the system firmware, specifically, the operating system loading device reads the program file to be loaded, such as an ELF program, from a network or a local storage section, for example, the operating system loading device reads the program file to be loaded from a storage medium or a file system, analyzes each information segment of the read program file, so as to obtain a system symbol name corresponding to the program file by analyzing, and allocates a physical address to each information segment of the program file, that is, allocates a memory to each information segment of the program file. Further, the operating system loading device performs symbol searching and redirection operation on the part needing redirection in the program file based on the parsed system symbol name. Specifically, the operating system loading device performs matching comparison on each system symbol in the system symbol table in the system firmware based on the parsed system symbol name, so as to find a target system symbol corresponding to the program file.
Further, the operating system loading device links the program file according to the determined target system symbol and the information segment of the program file, namely, redirects the program file to construct an executable environment to obtain an execution file. Further, the operating system loading device constructs an operating task of the operating system according to the obtained execution file, and executes the constructed operating task through an analysis loading component of the program file in the system firmware so as to load the program file into a memory of the operating system, and transfer control right to an entry point of the program file, so that the program file starts to execute in the operating system. In this way, the task management mechanism, the memory management mechanism and the redirection operation of the operating system are combined, so that the binary loading technology on the small operating system is realized, and the small operating system can complete the loading and execution of the binary file.
The physical address is the actual memory address which can be accessed and executed by the CPU.
In some embodiments of the present invention, optionally, as shown in fig. 3, the step 102 may specifically include the following steps 102a and 102b:
102a, coding a system symbol table to obtain a coded system symbol table;
And 102b, packaging the coded system symbol table, application logic and program loading components to obtain system firmware.
In this embodiment, during the process that the operating system loading device determines the system firmware of the operating system based on the system symbol table that the operating system needs to export, the parsing loading component for loading the execution program file, and the basic system application logic of the operating system, the operating system loading device encodes the obtained system symbol table, and performs compression optimization on the obtained system symbol table to obtain the encoded system symbol table. On the basis, the operating system loading device packages basic system application logic, the coded system symbol table and the analysis loading component of the program file of the operating system to obtain system firmware of the operating system. Therefore, the system symbol table is compressed and optimized, and then the system firmware is determined based on the system symbol table, so that the size of a binary file at the firmware end is reduced, the size of a program file is reduced, and the efficiency of searching for the target system symbol subsequently can be improved.
In practical application, the coding modes of the system symbol table include, but are not limited to: huffman coding, shannon coding, and the like. The specific coding mode of the system symbol table can be set by those skilled in the art according to the actual situation, and is not particularly limited herein.
In some embodiments of the present invention, optionally, the information segment includes a code segment, a read-only data segment, a writable data segment, and a redirection segment, and on the basis of this, the steps of merging and reorganizing the information segment of the binary file to obtain a first code segment, a first data segment, and a first redirection segment of the binary file specifically may include the following steps 128 to 132:
step 128, merging the code segment and the read-only data segment of the binary file into a first code segment;
step 130, merging the writable data segments of the binary file into a first data segment;
step 132, merging the redirection segments of the binary file into a first redirection segment.
In this embodiment, the information segments of the binary file obtained in the program file generation stage may include, in particular, writable data segments, code segments, redirection segments, and read-only data segments. On the basis, in the process that the operating system loading device carries out merging and linking on each information segment of the binary file based on the determined linking script so as to obtain a first redirection segment, a first data segment and a first code segment of the binary file, specifically, the operating system loading device merges all read-only data segments and code segments in the binary file into the first code segment, the operating system loading device merges all writable data segments in the binary file into the first data segment, and the operating system loading device merges all redirection segments in the binary file into the first redirection segment. Therefore, the information segments of the binary file are combined and then subjected to redirection operation, so that the efficiency of the redirection operation is improved.
In some embodiments of the present invention, optionally, the step 106 may specifically include the following steps 106a to 106c:
106a, traversing the first redirection section, and performing redirection calculation on a system symbol with a redirection symbol being the first code section to obtain a third code section;
step 106b, obtaining offset information between the first code segment and the first data segment;
and 106c, traversing the first redirection segment, performing redirection calculation on the system symbol with the redirection symbol being the first data segment, and adding the calculation result to the third code segment to obtain a second code segment.
In this embodiment, the operating system loading device performs redirection calculation on the system symbol and the binary file based on the obtained first redirection section, the first data section and the first code section, and obtains a redirected second code section, specifically, the operating system loading device traverses the first redirection section, and performs redirection calculation on the system symbol with the redirection symbol being the first code section, that is, performs redirection calculation on the system symbol with the redirection symbol being the code section and the read-only data section, so as to obtain a third code section. Further, the operating system loading device defines the first code segment and then is used for obtaining offset information between the first data segment and the first code segment. Further, the operating system loading device traverses the first redirection section, performs redirection calculation on the system symbol with the redirection symbol being the first data section based on the offset information, and adds the calculation result to the third code section to obtain the second code section. In this way, in the process of loading the program file by the operating system, the code segment and the data segment of the program file do not need to be redirected, so that the loading speed of the program file is increased, and the loading efficiency of the operating system is improved.
Wherein the redirect symbol is used to connect an executable program with a data file, e.g., the redirect symbol is used to redirect the standard output of the command into a specified file and to overwrite the original content; or the redirection symbol is used for redirecting the standard output of the command into a designated file and adding the output result to the end of the file; or, the redirection symbol is used for inputting the content of the specified file as a standard of the command; alternatively, the redirect symbol is used to set the standard input of the command to a specified text block.
In practical application, the above redirection symbols include, but are not limited to ">", "<" and "<", and the like, and are not limited thereto.
In some embodiments of the present invention, the step 108 may specifically include the following steps 108a and 108b:
step 108a, deleting the redirection information of the first data segment and the second code segment, and reserving the redirection information of the system symbol table to obtain an updated first redirection segment;
step 108b, packaging the first data segment, the second code segment and the updated first redirection segment to obtain the program file.
In this embodiment, in the process that the operating system loading device packages the second code segment, the first data segment and the first redirection segment to obtain the program file, specifically, the operating system loading device deletes the redirection information of the second code segment and the first data segment, and retains the redirection information of the system symbol table, so as to be used for subsequent running state linking of the program file. Thus, the operating system loading device obtains the updated first redirection section. On the basis, the operating system loading device packages the updated first redirection section, the updated second code section and the updated first data section, so that the program file is obtained. In this way, the size of the redirection segment is reduced, thereby reducing the size of the content occupied by the program file.
It should be noted that the operating system loading method described above may be implemented in a variety of different ways depending on the particular features and/or example applications. For example, the operating system loading methods described above may be implemented by a combination of hardware, firmware, and/or software. For example, in a hardware implementation, a processor may be implemented within one or more Application Specific Integrated Circuits (ASICs), digital Signal Processors (DSPs), digital Signal Processing Devices (DSPDs), programmable Logic Devices (PLDs), field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors, electronic devices, other device units designed to perform the functions described above, and/or a combination thereof.
In one embodiment of the present invention, an operating system loading device is also provided. Referring to FIG. 6, FIG. 6 is a block diagram illustrating an operating system loading device 600 according to an embodiment of the present invention. The operating system loading device 600 may specifically include the following processing unit 602:
a processing unit 602 for determining system firmware according to a system symbol table, application logic and program loading components of the operating system;
the processing unit 602 is further configured to compile and generate a binary file, and combine and reorganize an information segment of the binary file to obtain a first code segment, a first data segment, and a first redirection segment of the binary file;
the processing unit 602 is further configured to statically link the first code segment and the system symbol in the first data segment according to the first redirection segment, so as to obtain a second code segment;
the processing unit 602 is further configured to determine a program file to be loaded according to the first data segment, the second code segment, and the first redirection segment;
the processing unit 602 is further configured to load a program file according to the system firmware.
The operating system loading device 600 provided in the embodiment of the present invention is used for implementing a binary loading technique on a small operating system, such as an RTOS embedded operating system, so that the small operating system, such as the RTOS embedded operating system, can complete loading and execution of binary files.
Specifically, the operating system loading device 600 according to the present invention includes a processing unit 602, and a process of loading an operating system by the processing unit 602 includes a system firmware preparation stage, a program file generation stage, and a program file execution stage. Specifically, during loading of a small operating system, such as an RTOS embedded operating system, during a system firmware preparation phase, the processing unit 602 determines and obtains a system symbol table that the operating system needs to export, and obtains basic system application logic of the operating system and a parse loading component for loading an execution program file, i.e., a program loading component. Based on this, the processing unit 602 performs compression optimization on the obtained system symbol table, and packages the system symbol table based on the basic system application logic of the operating system, the system symbol table after compression optimization, and the parsing and loading component of the program file to obtain the system firmware of the operating system. At this time, the system firmware of the operating system includes basic system application logic of the operating system, a compressed and optimized system symbol table, and an analysis loading component of the program file.
Further, in the program file generation stage, the processing unit 602 develops an application program based on the development environment of the operating system, after the application program is developed, compiles application source codes through a compiling tool of the operating system, and outputs and merges the compiling results, so that a corresponding binary file is obtained through compiling, and the binary file is an executable program. Further, the processing unit 602 performs pre-linking on the combined executable program, i.e. binary file, based on the local static linking method, and outputs a program file to be loaded, such as an ELF program. Specifically, as shown in fig. 5, the processing unit 602 compiles a plurality of information segments of the binary file in units of codes, and further, based on the determined linking script, the processing unit 602 performs combined linking on each information segment of the binary file through a linker, thereby obtaining a first redirection segment, a first data segment, and a first code segment of the binary file. Based on this, the processing unit 602 performs redirection calculation on the system symbol and the information segment of the binary file according to the obtained first redirection segment, the first data segment and the first code segment, and obtains a redirected second code segment. Specifically, the processing unit 602 performs static linking on the first code segment and the system symbol in the first data segment according to the first redirection segment, to obtain the second code segment. Further, the processing unit 602 packages the second code segment, the first data segment, and the first redirection segment to obtain the program file. In this way, in the process of loading the program file by the operating system, the code segment and the data segment of the program file do not need to be redirected, so that the loading speed of the program file is increased, and the loading efficiency of the operating system is improved.
Further, in the program file execution stage, the processing unit 602 loads the obtained program file through the parsing and loading component of the program file in the system firmware based on the system symbol table in the system firmware, so as to load the program file into the memory of the operating system, and transfers the control right to the entry point of the program file, so that the program file starts to execute in the operating system. Thus, the binary loading technology on the small operating system is realized, so that the small operating system can complete the loading and execution of the binary file. And the working environment of the operating system is optimized, so that the operating system can quickly and efficiently execute the binary executable file which is locally updated and stored or issued by the network under the condition of unchanged firmware, the service code update of the operating system can get rid of the dependence on the OTA of the whole device, the quick update and execution of the application service code of the operating system are satisfied, and the working efficiency of the operating system is improved.
In the process of redirecting the system symbol and the information segment of the binary file, the processing unit 602 performs a static link on the system symbol in the same information segment, and deletes the corresponding redirection information. Further, the processing unit 602 performs segment address arrangement on the system symbols in the multiple information segments, and performs static linking on the system symbols in the multiple information segments according to the arranged offset information, and deletes the corresponding redirection information. Further, for system symbols, processing unit 602 retains its redirection information for subsequent use in running state linking of program files. Therefore, a dynamic link mode does not exist, the characteristic of a dynamic link system symbol is not provided externally, and the link is performed by a local static link method, so that the loading speed of the program file is increased, and the size of a redirection section in the program file is reduced.
Further, the operating system may be a small operating system such as an RTOS embedded operating system, which is not particularly limited herein.
Further, the program file may be an ELF program file, and the specific type of the program file is determined according to the type of the operating system, which is not limited herein.
In some embodiments of the present invention, the processing unit 602 is optionally specifically configured to: analyzing information segments of the program file, determining a system symbol name corresponding to the program file, and distributing a physical address for each information segment; determining a target system symbol according to the system symbol name and a system symbol table in system firmware; linking the program files according to the target system symbol and the information segment of the program files to obtain execution files; and constructing an operation task according to the execution file, and executing the operation task.
In some embodiments of the present invention, the processing unit 602 is optionally specifically configured to: coding the system symbol table to obtain a coded system symbol table; and packaging the coded system symbol table, the application logic and the program loading component to obtain the system firmware.
In some embodiments of the present invention, optionally, the information section includes a code section, a read-only data section, a writable data section, and a redirection section, and the processing unit 602 is specifically configured to: combining the code segment and the read-only data segment of the binary file into a first code segment; merging writable data segments of the binary file into a first data segment; the redirected segments of the binary file are merged into a first redirected segment.
In some embodiments of the present invention, the processing unit 602 is optionally specifically configured to: traversing the first redirection section, and carrying out redirection calculation on a system symbol with a redirection symbol being the first code section to obtain a third code section; acquiring offset information between a first code segment and a first data segment; traversing the first redirection section, carrying out redirection calculation on the redirection symbol which is a system symbol of the first data section, and adding a calculation result into the third code section to obtain a second code section.
In some embodiments of the present invention, the processing unit 602 is optionally specifically configured to: deleting the redirection information of the first data segment and the second code segment, and reserving the redirection information of the system symbol table to obtain an updated first redirection segment; and packaging the first data section, the second code section and the updated first redirection section to obtain a program file.
In one embodiment of the invention, an electronic device is also presented. As shown in fig. 7, fig. 7 shows a block diagram of an electronic device 700 according to an embodiment of the present invention. Wherein, this electronic equipment 700 includes:
a memory 702, the memory 702 having stored thereon programs or instructions;
processor 704, the steps of the operating system loading method in any of the embodiments described above are implemented when the processor 704 executes the above-described programs or instructions.
The electronic device 700 provided in this embodiment includes a memory 702 and a processor 704, and when the program or the instructions in the memory 702 are executed by the processor 704, the steps of the operating system loading method in any of the embodiments are implemented, so that the electronic device 700 has all the advantages of the operating system loading method in any of the embodiments, which are not described herein.
In particular, the memory 702 and the processor 704 may be connected by a bus or other means. The processor 704 may include one or more processing units, and the processor 704 may be a chip such as a central processing unit (Central Processing Unit, CPU), digital signal processor (Digital Signal Processor, DSP), application specific integrated circuit (ApplicationSpecific Integrated Circuit, ASIC), field programmable gate array (Field Programmable Gate Array, FPGA), or the like.
An embodiment of a fourth aspect of the present invention proposes a readable storage medium. On which a program or instructions is stored which, when executed by a processor, implement the steps of the operating system loading method as in any of the embodiments described above.
The readable storage medium according to the embodiment of the present invention may implement the steps of the operating system loading method according to any of the above embodiments when the stored program or instructions are executed by the processor. Therefore, the readable storage medium has all the advantages of the operating system loading method in any of the above embodiments, and will not be described herein.
In particular, the above-described readable storage medium may include any medium capable of storing or transmitting information. Examples of readable storage media include electronic circuitry, semiconductor Memory devices, read-Only Memory (ROM), random-access Memory (RandomAccess Memory, RAM), compact-disk Read-Only Memory (Compact Disc Read-Only Memory, CD-ROM), flash Memory, erasable ROM (EROM), magnetic tape, floppy disk, optical disk, hard disk, fiber optic media, radio Frequency (RF) links, optical data storage devices, and the like. The code segments may be downloaded via computer networks such as the internet, intranets, etc.
In particular, the readable storage medium may be a tangible device that retains and stores instructions for use by an instruction execution device. The computer readable storage medium may be, but is not limited to being, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. Specifically, a non-exhaustive list of more specific examples of the above-described readable storage medium includes: portable computer floppy disks, hard disks, random Access Memories (RAMs), read-only memories (ROMs), erasable programmable read-only memories (EPROMs or flash memories), static Random Access Memories (SRAMs), portable compact disk read-only memories (CD-ROMs), digital Versatile Disks (DVDs), memory cards, floppy disks, encoding machinery such as punch cards or grooves having a raised structure with recorded instructions, or any suitable combination of the above. A readable storage medium as used herein should not be construed as transmitting a signal itself, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium, or an electrical signal transmitted through an electrical wire, etc.
An embodiment of a fifth aspect of the invention proposes a computer program product comprising a computer program which, when executed by a processor, implements an operating system loading method as in any of the embodiments described above. Therefore, the computer program product according to the fifth aspect of the present invention has all the advantages of the operating system loading method according to any of the embodiments of the first aspect, which are not described herein.
In practical applications, the computer program product includes, but is not limited to: smart phones, desktop computers, notebook computers, tablet computers, smart watches, host computers, server platforms, and the like, are not particularly limited herein.
An embodiment of a sixth aspect of the present invention proposes a chip, the chip including a program or instructions for implementing the steps of the operating system loading method in any of the embodiments described above, when the chip is running. Therefore, the chip according to the sixth aspect of the present invention has all the advantages of the operating system loading method according to any one of the embodiments of the first aspect, which is not described herein.
In the description of the present specification, the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance unless explicitly specified and limited otherwise; the terms "coupled," "mounted," "secured," and the like are to be construed broadly, and may be fixedly coupled, detachably coupled, or integrally connected, for example; can be directly connected or indirectly connected through an intermediate medium. The specific meaning of the above terms in the present invention can be understood by those of ordinary skill in the art according to the specific circumstances.
In the description of the present specification, the terms "one embodiment," "some embodiments," "particular embodiments," and the like, mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
In addition, the technical solutions of the embodiments of the present invention may be combined with each other, but it is necessary to be based on the fact that those skilled in the art can implement the technical solutions, and when the technical solutions are contradictory or cannot be implemented, the combination of the technical solutions should be considered as not existing, and not falling within the scope of protection claimed by the present invention.
The above description is only of the preferred embodiments of the present invention and is not intended to limit the present invention, but various modifications and variations can be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (11)

1. An operating system loading method, comprising:
determining system firmware according to a system symbol table, application logic and a program loading component of an operating system;
compiling to generate a binary file, and merging and recombining information segments of the binary file to obtain a first code segment, a first data segment and a first redirection segment of the binary file;
performing static link on the first code segment and the system symbols in the first data segment according to the first redirection segment to obtain a second code segment;
determining a program file to be loaded according to the first data segment, the second code segment and the first redirection segment;
and loading the program file according to the system firmware.
2. The operating system loading method according to claim 1, wherein the information segment includes a code segment, a read-only data segment, a writable data segment, and a redirection segment, and the merging and reorganizing the information segment of the binary file to obtain a first code segment, a first data segment, and a first redirection segment of the binary file includes:
merging the code segment and the read-only data segment of the binary file into the first code segment;
Merging the writable data segments of the binary file into the first data segment;
and merging the redirection segments of the binary file into the first redirection segment.
3. The operating system loading method according to claim 1, wherein the statically linking the first code segment and the system symbol in the first data segment according to the first redirection segment, to obtain a second code segment, includes:
traversing the first redirection section, and carrying out redirection calculation on a redirection symbol which is a system symbol of the first code section to obtain a third code section;
acquiring offset information between the first code segment and the first data segment;
and traversing the first redirection section, carrying out redirection calculation on a redirection symbol which is a system symbol of the first data section, and adding a calculation result into the third code section to obtain the second code section.
4. The operating system loading method of claim 1 wherein said determining said program file from said first data segment, said second code segment and said first redirection segment comprises:
deleting the redirection information of the first data segment and the second code segment, and reserving the redirection information of the system symbol table to obtain the updated first redirection segment;
And packaging the first data segment, the second code segment and the updated first redirection segment to obtain the program file.
5. The operating system loading method according to any one of claims 1 to 4, wherein the loading the program file according to the system firmware includes:
analyzing the information segments of the program file, determining the system symbol names corresponding to the program file, and distributing physical addresses for each information segment;
determining a target system symbol according to the system symbol name and the system symbol table in the system firmware;
linking the program file according to the target system symbol and the information segment of the program file to obtain an execution file;
and constructing an operation task according to the execution file, and executing the operation task.
6. The operating system loading method according to any one of claims 1 to 4, wherein the determining the system firmware according to a system symbol table, application logic, and program loading component of the operating system includes:
coding the system symbol table to obtain a coded system symbol table;
and packaging the coded system symbol table, the application logic and the program loading component to obtain the system firmware.
7. An operating system loading device, comprising:
the processing unit is used for determining system firmware according to a system symbol table, application logic and a program loading component of the operating system;
the processing unit is further used for compiling and generating a binary file, and combining and recombining the information segments of the binary file to obtain a first code segment, a first data segment and a first redirection segment of the binary file;
the processing unit is further configured to statically link the first code segment and a system symbol in the first data segment according to the first redirection segment, so as to obtain a second code segment;
the processing unit is further configured to determine a program file to be loaded according to the first data segment, the second code segment, and the first redirection segment;
the processing unit is further configured to load the program file according to the system firmware.
8. An electronic device comprising a processor and a memory storing a program or instructions executable on the processor, which when executed by the processor, implement the steps of the operating system loading method of any one of claims 1 to 6.
9. A readable storage medium, characterized in that it has stored thereon a program or instructions which, when executed by a processor, implement the steps of the operating system loading method according to any of claims 1 to 6.
10. A computer program product comprising a computer program which, when executed by a processor, implements the steps of the operating system loading method according to any one of claims 1 to 6.
11. A chip comprising a program or instructions for implementing the steps of the operating system loading method according to any one of claims 1 to 6 when said chip is running.
CN202311742795.9A 2023-12-18 2023-12-18 System loading method and device, storage medium, computer program product and chip Active CN117435257B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311742795.9A CN117435257B (en) 2023-12-18 2023-12-18 System loading method and device, storage medium, computer program product and chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311742795.9A CN117435257B (en) 2023-12-18 2023-12-18 System loading method and device, storage medium, computer program product and chip

Publications (2)

Publication Number Publication Date
CN117435257A true CN117435257A (en) 2024-01-23
CN117435257B CN117435257B (en) 2024-02-27

Family

ID=89553725

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311742795.9A Active CN117435257B (en) 2023-12-18 2023-12-18 System loading method and device, storage medium, computer program product and chip

Country Status (1)

Country Link
CN (1) CN117435257B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650664A (en) * 2009-06-30 2010-02-17 北京飞天诚信科技有限公司 Link method and linker
CN105426223A (en) * 2015-12-25 2016-03-23 百度在线网络技术(北京)有限公司 Application loading method and device
CN107479920A (en) * 2017-08-04 2017-12-15 浙江大学 A kind of method that single ELF files realize multiple operating system loading
CN115328454A (en) * 2021-05-10 2022-11-11 阿里云计算有限公司 Program compiling and program loading method
CN117193882A (en) * 2023-09-22 2023-12-08 四川赛纽斯科技有限公司 ELF loading method based on microkernel operating system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650664A (en) * 2009-06-30 2010-02-17 北京飞天诚信科技有限公司 Link method and linker
CN105426223A (en) * 2015-12-25 2016-03-23 百度在线网络技术(北京)有限公司 Application loading method and device
CN107479920A (en) * 2017-08-04 2017-12-15 浙江大学 A kind of method that single ELF files realize multiple operating system loading
CN115328454A (en) * 2021-05-10 2022-11-11 阿里云计算有限公司 Program compiling and program loading method
CN117193882A (en) * 2023-09-22 2023-12-08 四川赛纽斯科技有限公司 ELF loading method based on microkernel operating system

Also Published As

Publication number Publication date
CN117435257B (en) 2024-02-27

Similar Documents

Publication Publication Date Title
CN109766099B (en) Front-end source code compiling method and device, storage medium and computer equipment
CN111309335B (en) Compiling method and device of plug-in application and computer readable storage medium
CN111240689A (en) Application program construction method, device, equipment and storage medium
CN106775781B (en) Method and device for reducing application installation packages and electronic equipment
CN110673856B (en) Data processing method and device and machine-readable storage medium
CN113296786B (en) Data processing method, device, electronic equipment and storage medium
CN114115904B (en) Information processing method, device, server and storage medium
CN110688096B (en) Method and device for constructing application program containing plug-in, medium and electronic equipment
CN111880777A (en) Program information issuing method and device and electronic equipment
CN106850650B (en) Method for accessing data by game client and client game system
KR102141749B1 (en) APP program execution method and device
CN111562929A (en) Method, device and equipment for generating patch file and storage medium
CN117435257B (en) System loading method and device, storage medium, computer program product and chip
CN117421056B (en) System loading method and device, storage medium, computer program product and chip
CN117435258B (en) System loading method and device, storage medium, computer program product and chip
CN110188071B (en) Data processing method and device, electronic equipment and computer readable medium
CN110968339A (en) Method and device for front-end construction tool and electronic equipment
CN113656044B (en) Android installation package compression method and device, computer equipment and storage medium
US11429358B2 (en) Representing asynchronous state machine in intermediate code
CN113568623A (en) Application deployment method and device and electronic equipment
CN112650502A (en) Batch processing task processing method and device, computer equipment and storage medium
JP2010140233A (en) Emulation system and emulation method
JP2016500875A (en) Method, system and computer program for maintaining the integrity of the output of a code generator
CN114579135B (en) Installation package generation method and device
CN111562940B (en) Project data construction method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant