Anonymous File Generation for Uninterrupted Process Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face challenges in allowing a first process to execute instructions from an executable file while a second process modifies the same file without interrupting the first process's execution.
Innovation Solution
The method generates an anonymous file from the executable file, allowing the first process to switch to executing the anonymous file without interruption, enabling modifications by the second process without affecting the first process's execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a first process executes instructions from an executable file while a second process modifies the same file, then the second process can update the executable file, but the first process's execution may be interrupted or affected
Solution Approach 1:
The system segments the executable file into multiple pages and creates separate virtual memory mappings for the first and second processes. The first process maps original pages for execution, while the second process maps corresponding pages for modification. This segmentation allows both processes to operate on different copies of the file pages simultaneously without interfering with each other's execution continuity.
Solution Approach 2:
The operating system acts as an intermediary by implementing a page replacement mechanism that automatically switches between the original executable file pages and modified anonymous pages. When the second process modifies a page, the OS creates an anonymous page as a copy, allows the modification, then seamlessly replaces the original page mapping with the anonymous page mapping, ensuring the first process continues execution without interruption while the modified version is preserved.
2Reliability
If the executable file is locked to prevent modifications during execution, then the first process's execution integrity is maintained, but the second process cannot modify the file
Solution Approach 1:
The system creates anonymous pages as copies of the original executable file pages. The second process modifies these copied pages rather than the original file. The operating system then replaces the original page mappings with references to the modified anonymous pages. This copying mechanism allows the second process to modify the executable file content while the first process continues to execute from the original pages without interruption or integrity compromise.
3Reliability
If the system creates an anonymous file copy for modifications, then the first process can continue executing without interruption, but additional memory and storage resources are consumed
Solution Approach 1:
The system segments the executable file into manageable page-sized units and only creates anonymous page copies when the second process actually modifies a specific page. Not all pages are copied simultaneously; only the pages that require modification are duplicated. This on-demand page-level segmentation significantly reduces the quantity of resources consumed compared to creating complete file copies, while still ensuring execution continuity for the first process.
Data Source
AI summary
A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.


