Modification of context saving functions
US-2016147559-A1 · May 26, 2016 · US
US12367019B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12367019-B2 |
| Application number | US-202318365312-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 4, 2023 |
| Priority date | Feb 5, 2021 |
| Publication date | Jul 22, 2025 |
| Grant date | Jul 22, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method and a related apparatus for implementing a batch system call are disclosed. The method includes: loading an executable program to a user-mode virtual address space, where the executable program is obtained by compiling source code of the batch system call, and includes abstract syntax tree (AST) data of the batch system call; and invoking a first instruction to invoke a kernel to generate, based on the AST data in the user-mode virtual address space, binary code that is used to implement the batch system call. Because there is difficulty in inserting malicious data into a data structure like the AST, it is difficult to insert malicious code into the binary code of the batch system call, so as to avoid an error or an excessively long delay caused by the malicious code when the kernel runs the binary code of the batch system call, thereby improving security of the batch system call.
Opening claim text (preview).
What is claimed is: 1. A method for implementing a batch system call, comprising: loading an executable program to a user-mode virtual address space, wherein the executable program is obtained by compiling source code of the batch system call, and the executable program comprises abstract syntax tree (AST) data of the batch system call; and invoking a first instruction, wherein the first instruction, when executed, causes a kernel to read the AST data from the user-mode virtual address space, and generate, based on the AST data, binary code for implementing the batch system call, the binary code being stored in a kernel-mode virtual address space. 2. The method according to claim 1 , wherein the executable program further comprises call stub code of the batch system call, and the method further comprises: invoking a second instruction when the call stub code of the batch system call is executed, wherein the second instruction, when executed, causes the kernel to execute the binary code to implement the batch system call. 3. The method according to claim 2 , wherein after the invoking of the first instruction, the method further comprises: receiving an invoking result of the first instruction, wherein the invoking result comprises an identifier of the binary code for implementing the batch system call, wherein the second instruction carries the identifier, and the second instruction, when executed, causes the kernel to execute the binary code corresponding to the identifier to implement the batch system call. 4. The method according to claim 1 , wherein the source code of the batch system call comprises delay information of the batch system call, and the AST data comprises the delay information of the batch system call; and the first instruction, when executed, further causes the kernel to calculate a worst-case execution time of the batch system call based on the delay information in the AST data. 5. The method according to claim 4 , wherein the first instruction, when executed, further causes the kernel to store the worst-case execution time into the kernel-mode virtual address space. 6. An apparatus for implementing a batch system call, comprising at least one memory and at least one processor, wherein the at least one memory is configured to store a computer program, and the at least one processor is configured to invoke the computer program from the at least one memory and run the computer program to perform operations comprising: loading an executable program to a user-mode virtual address space, wherein the executable program is obtained by compiling source code of the batch system call, and the executable program comprises abstract syntax tree (AST) data of the batch system call; and invoking a first instruction, wherein the first instruction, when executed, causes a kernel to read the AST data from the user-mode virtual address space, and generate, based on the AST data, binary code for implementing the batch system call, the binary code being stored in a kernel-mode virtual address space. 7. The apparatus according to claim 6 , wherein the executable program further comprises call stub code of the batch system call, and the operations further comprise: invoking a second instruction when the call stub code of the batch system call is executed, wherein the second instruction, when executed, cause the kernel to execute the binary code to implement the batch system call. 8. The apparatus according to claim 7 , wherein after the invoking of the first instruction, the operations further comprise: receiving an invoking result of the first instruction, wherein the invoking result comprises an identifier of the binary code for implementing the batch system call, wherein the second instruction carries the identifier, and the second instruction, when executed, causes the kernel to execute the binary code corresponding the identifier to implement the batch system call. 9. The apparatus according to claim 6 , wherein the source code of the batch system call comprises delay information of the batch system call, and the AST data comprises the delay information of the batch system call; and the first instruction, when executed, further causes the kernel to calculate a worst-case execution time of the batch system call based on the delay information in the AST data. 10. The apparatus according to claim 9 , wherein the first instruction, when executed, further causes the kernel to store the worst-case execution time into the kernel-mode virtual address space. 11. A non-transitory storage medium, storing a computer program that, when executed by one or more processors, control the one or more processors to perform operations comprising: loading an executable program to a user-mode virtual address space, wherein the executable program is obtained by compiling source code of a batch system call, and the executable program comprises abstract syntax tree (AST) data of the batch system call; and invoking a first instruction, wherein the first instruction, when executed, causing a kernel to read the AST data from the user-mode virtual address space, and generate, based on the AST data, binary code for implementing the batch system call, the binary code being stored in a kernel-mode virtual address space. 12. The non-transitory storage medium according to claim 11 , wherein the executable program further comprises call stub code of the batch system call, and the operations further comprise: invoking a second instruction when the call stub code of the batch system call is executed, wherein the second instruction, when executed, causes the kernel to execute the binary code to implement the batch system call. 13. The non-transitory storage medium according to claim 12 , wherein after the invoking of the first instruction, the operations further comprise: receiving an invoking result of the first instruction, wherein the invoking result comprises an identifier of the binary code for implementing the batch system call, wherein the second instruction carries the identifier, and the second instructions, when executed, causes the kernel to execute the binary code corresponding to the identifier to implement the batch system call. 14. The non-transitory, computer-readable storage medium according to claim 11 , wherein the source code of the batch system call comprises delay information of the batch system call, and the AST data comprises the delay information of the batch system call; and the first instruction, when executed, further causes the kernel to calculate a worst-case execution time of the batch system call based on the delay information in the AST data. 15. The non-transitory, storage medium according to claim 14 , wherein the first instruction, when executed, further causes the kernel to store the worst-case execution time into the kernel-mode virtual address space. 16. The method of claim 1 , wherein the AST data represents a syntax structure of a programming language in a tree, and each node in the tree represents a structure in the source code of the batch system call. 17. The method of claim 1 , wherein the AST data of the batch system call belongs to a data segment in the executable program of the batch system call.
by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code · CPC title
where tasks reside in different layers, e.g. user- and kernel-space · CPC title
Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title
Communication (intertask communication G06F9/54) · CPC title
Register allocation; Assignment of physical memory space to logical memory space · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.