Child Process Kernel Task Execution via Instruction Pointer Manipulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In operating systems like LINUX, a child process begins execution at the user level, preventing wrapper code that executes at the kernel level from running initially, which can lead to failures in virtualization and resource management during process checkpointing, restart, and migration.
Innovation Solution
A method is introduced where the initial execution of a child process is directed to enter the kernel level by setting the instruction pointer to an instruction that causes the child process to execute a system call, allowing kernel-level tasks to be performed immediately, ensuring that kernel-level operations are executed even when the child process starts at the user level.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a child process begins execution at the user level, then the process can operate in user mode initially, but kernel-level wrapper code cannot execute immediately, causing failures in virtualization and resource management
Solution Approach 1:
The patent applies preliminary action by setting up the instruction pointer to point to a system call entry point before the child process begins execution. This ensures that kernel-level tasks are performed immediately when the child process starts, rather than waiting for the process to voluntarily make a system call later. The wrapper code is pre-positioned in the instruction stream through the instruction pointer manipulation, guaranteeing execution at the critical initial moment.
2Reliability
If wrapper code is placed at the kernel level, then security and control are improved, but the code cannot execute initially when the child process starts at user level
Solution Approach 1:
The patent uses the instruction pointer as an intermediary mechanism to bridge the user level and kernel level. By manipulating the instruction pointer to point to a system call entry point, the patent creates a controlled transition path that allows kernel-level wrapper code to execute immediately when the child process begins. This intermediary mechanism resolves the contradiction by providing a safe transition path from user-level process creation to kernel-level code execution.
Data Source
AI summary
An embodiment of a method of performing a kernel level task upon initial execution of a child process at a user level begins with setting an instruction pointer for an initial child process instruction to an instruction to enter a kernel level. The method continues with beginning the child process which places a return value in a register for the child process and which causes the child process to enter the kernel level. The method concludes with executing a system call having a system call number of the return value. The system call comprises the kernel level task.


